📊 Dashboard y KPIs

Dashboard operacional de ITS Lab

El Dashboard es el tablero de estado operacional de ITS Lab. No es una pantalla aparte: se renderiza dentro de la vista de Inicio (/), debajo de las cards de acceso a los módulos. Reúne cuatro bloques — Equipos GMP, AT/RB, Instrumentos STD e Historial GMP — con sus KPIs, tablas de detalle y una barra de distribución. Todas las filas de sus tablas navegan a la vista de detalle ya pre-filtrada.

ℹ️
No es tiempo real: se actualiza con el botón

Los datos se cargan una vez al abrir el Inicio. No hay refresco automático en segundo plano. Para traer el estado actual usá el botón "↻ Actualizar" de la barra superior del Dashboard; al lado se muestra la marca "Actualizado HH:MM" con la hora de la última carga.

Cómo carga los datos

Al entrar al Inicio, el Dashboard pide todo de una sola vez al endpoint agregador GET /dashboard/summary, que devuelve los cuatro bloques en una respuesta. La barra superior tiene el botón "↻ Actualizar" y la etiqueta "Actualizado HH:MM".

💡
Resiliencia: reconstrucción con 4 llamadas

Si GET /dashboard/summary falla, el Dashboard no queda en blanco: reconstruye los KPIs con cuatro llamadas en paralelo — GET /equipos, GET /asistencias, GET /historial y GET /std/vencimientos — y arma los mismos bloques a partir de esos listados.

Sección Equipos GMP

El primer bloque resume el estado de los servicios de los equipos HPLC/UHPLC de los clientes. Muestra 4 cards y, debajo, una tabla de próximos vencimientos.

KPIQué cuentaColorAl hacer click
Total activosCantidad de equipos activos (no archivados).Navy/equipos
VencidosCantidad de servicios vencidos (no de equipos). Subtítulo "Servicios · intervención".Rojo si >0, verde si 0/equipos?vcto=vencido
Próximos 30 díasServicios que vencen dentro de los próximos 30 días.Ámbar si >0/equipos?vcto=30dias
Próximos 60 díasServicios que vencen dentro de los próximos 60 días.Gris/equipos?vcto=60dias
ℹ️
El conteo es por servicio, no por equipo

Un equipo puede tener varios servicios (IQ, OQ, PQ, calibración…), cada uno con su propia fecha de vencimiento. El KPI Vencidos cuenta servicios vencidos: un mismo equipo con dos servicios vencidos suma 2. Por eso el número casi nunca coincide con la cantidad de equipos.

⚖️
Regla de conteo de "vencido"

Un servicio cuenta como vencido cuando su fecha de vencimiento es anterior a hoy. Se excluyen los equipos archivados y los servicios en estado Cancelado. Un servicio Finalizado sí cuenta, porque es el que porta la fecha de la próxima ejecución.

Tabla de próximos vencimientos

Debajo de las cards, hasta 8 filas con los vencimientos más urgentes. Cada fila es clickeable y abre el equipo correspondiente.

ColumnaContenido
ID equipoIdentificador del equipo del cliente.
EquipoNombre del equipo (marca / modelo).
ServicioTipo de servicio próximo a vencer.
LaboratorioLaboratorio (y sector) del equipo.
VenceFecha + días restantes. Color rojo si <0 (ya venció), ámbar si ≤15 días.

Sección AT/RB

El segundo bloque resume las Asistencias Técnicas (AT) y Reparaciones (RB). Muestra 4 cards y una tabla de asistencias recientes.

KPIQué cuentaColorAl hacer click
PendientesAsistencias en estado Por Realizar + Programado. No incluye las que están "En Ejecución".Teal/asistencias?estado=activos
AT totalesTotal de asistencias de tipo AT.Info/asistencias?tipo=AT
RB totalesTotal de asistencias de tipo RB.Ámbar/asistencias?tipo=RB
Servicios GMPTotal del historial GMP (todos los protocolos).Navy/historial

Tabla de asistencias recientes

Las 5 asistencias más recientes. Cada fila es clickeable y abre la asistencia.

ColumnaContenido
NúmeroNúmero de la asistencia.
TipoBadge AT / RB.
EquipoEquipo intervenido.
LaboratorioLaboratorio del equipo.
EstadoEstado actual con badge.
FechaFecha de la asistencia.

Sección Instrumentos STD

El tercer bloque resume el vencimiento de los recursos de referencia de ION-target (instrumentos, estándares y solventes). Muestra 2 cards y una tabla combinada.

KPIQué cuentaColorAl hacer click
STD vencidosRecursos de referencia con vencimiento pasado (FUSO).Rojo si >0/std?filtro=FUSO
Próximos 30dRecursos que vencen dentro de los próximos 30 días.Ámbar/std?filtro=proximos

Tabla combinada de vencimientos STD

Hasta 8 filas que unifican instrumentos, estándares y solventes. Si no hay vencimientos próximos, muestra "✓ Sin vencimientos próximos".

ColumnaContenido
TipoBadge del tipo de recurso (instrumento / estándar / solvente).
CódigoCódigo del recurso (los solventes se identifican por nombre).
NombreNombre del recurso.
VenceFecha de vencimiento.

Sección Historial GMP

El cuarto bloque muestra la distribución de todos los protocolos GMP por estado y un listado de los últimos registros.

Barra de distribución por estado

Una barra proporcional muestra cuántos protocolos hay en cada estado, con leyenda y total. Los estados son:

Por Realizar Programado En Ejecución Ejecutado Finalizado Resuelto Cancelado

Tabla de últimos protocolos

Los 5 protocolos más recientes, con solo tres columnas:

ColumnaContenido
ProtocoloNúmero de protocolo (fuente monoespaciada).
TipoTipo de servicio.
EstadoEstado con badge de color.

Comportamiento responsive

En pantallas chicas, los grids de 4 cards pasan a 2 columnas y las columnas secundarias de las tablas (por ejemplo Laboratorio o Equipo) se ocultan para priorizar lo esencial en mobile.


Preguntas frecuentes

¿El Dashboard es en tiempo real?+
No. Los datos se cargan al abrir el Inicio y no hay refresco automático. Para ver el estado actual usá el botón "↻ Actualizar"; la etiqueta "Actualizado HH:MM" indica la hora de la última carga.
El KPI "Vencidos" no coincide con la cantidad de equipos vencidos. ¿Está mal?+
No, es correcto. El KPI cuenta servicios vencidos, no equipos. Un mismo equipo con dos servicios vencidos suma 2. Se excluyen los equipos archivados y los servicios Cancelado; un servicio Finalizado sí cuenta porque porta la próxima ejecución.
¿Por qué las filas de las tablas son clickeables?+
Cada fila navega directamente a la vista de detalle ya pre-filtrada (el equipo, la asistencia o el recurso correspondiente). Es la forma rápida de pasar del resumen a la acción; no hace falta reconstruir el filtro a mano.
Se cortó Internet un momento y el Dashboard igual mostró datos. ¿Cómo?+
Si GET /dashboard/summary falla, el Dashboard reconstruye los KPIs con cuatro llamadas en paralelo (/equipos, /asistencias, /historial, /std/vencimientos). Puede tardar un poco más, pero muestra los mismos bloques.
¿Por qué "Pendientes" de AT/RB no incluye las asistencias en ejecución?+
"Pendientes" cuenta solo lo que todavía no arrancó: estados Por Realizar y Programado. Una asistencia "En Ejecución" ya está siendo atendida, por eso no suma a ese KPI.