📄 Reporte de Cliente

Reporte de Cliente

El Reporte de Cliente es un PDF multipágina que consolida toda la actividad técnica de un laboratorio en un período: KPIs, tablas resumen, servicios GMP, asistencias AT/RB y una ficha técnica por cada equipo. Se genera en el navegador (jsPDF + html2canvas) y podés descargarlo o enviarlo por email, dos acciones independientes que están disponibles desde el mismo modal.

⚖️
Datos de cliente confidenciales

El reporte contiene la actividad técnica completa de un laboratorio. Verificá el laboratorio y el período antes de enviar: el CC a support@ion-target.com es automático e inevitable desde la interfaz, y cada envío queda en el audit trail. No hay forma de sacar el CC desde la UI.

Cómo acceder al reporte

1
Entrá al módulo Equipos (/equipos)

El reporte se arma sobre el parque de equipos, por eso vive en ese módulo.

2
Click en el botón "📄 Reportes"

Está en el encabezado del módulo. Abre el modal de Reporte de Cliente, que es de un solo paso (no es un asistente por etapas).

Configurar el reporte

El modal es de un solo paso: se completan los campos y desde el inicio ya conviven los dos botones de acción. No hay un botón "Generar reporte" previo ni un flujo secuencial de "primero generar, después enviar".

CampoObligatorioDetalle
Cliente (laboratorio)✅ SíEl laboratorio a reportar. Incluye todos sus equipos.
SectorOpcional. Vacío = todos los sectores del laboratorio. Si se elige uno, el reporte se limita a los equipos de ese sector.
Fecha inicio✅ SíInicio del período. Por defecto arranca en los últimos 3 meses.
Fecha fin✅ SíFin del período (inclusive). Se valida que inicio ≤ fin.
ℹ️
Dos acciones paralelas, no un wizard

Desde que abrís el modal ves los dos botones al mismo tiempo: ✉ Enviar y 📥 Descargar PDF. Cada uno consulta los datos y arma el PDF por su cuenta. No hace falta descargar antes de enviar, ni generar antes de nada: elegís directamente la acción que querés.

Estructura del PDF

El PDF se arma con esta secuencia de páginas. El nombre del archivo es Reporte_{Lab}_{fechaInicio}_{fechaFin}.pdf y cada página lleva footer con paginación.

1
Portada / Resumen

Encabezado ION-target (CUIT 30-71551972-7), laboratorio, sector y período. KPIs de Equipos, Servicios GMP, AT y RB. Tablas "GMP por tipo", "GMP por estado" y "Actividad por equipo" con semáforo de próximo vencimiento.

2
Servicios GMP

Tabla completa de los servicios GMP del período. Solo aparece si hay registros en ese rango.

3
AT / RB

Tabla completa de Asistencias Técnicas y Reparaciones de Banco del período. Solo aparece si hay registros.

4
Ficha técnica por equipo

Una página por cada equipo del cliente/sector, siempre (aunque el equipo no haya tenido actividad en el período). Incluye identificación, mini-KPIs, próximo vencimiento, módulos, consumibles y hasta 10 servicios GMP + 10 AT/RB del período.

PÁG. 1 Portada KPIs + tablas Resumen PÁG. 2 Servicios GMP solo si hay registros PÁG. 3 AT / RB solo si hay registros PÁG. 4 Ficha Equipo 1 PÁG. N Ficha Equipo N Una ficha por CADA equipo (siempre), aunque no tenga actividad

Las páginas 2 y 3 son condicionales; las fichas de equipo se generan siempre.

⚠️
Las notas internas y adjuntos no son GMP

El reporte solo consolida actividad GMP. Las notas internas y los archivos adjuntos nunca aparecen en el reporte: son de uso interno de ION-target y no se comparten con el cliente.

Descargar el PDF

El botón 📥 Descargar PDF consulta los datos del período, arma el PDF en el navegador y lo descarga con el nombre Reporte_{Lab}_{fechaInicio}_{fechaFin}.pdf. No hace envío alguno: es una acción puramente local.

Enviar por email

El botón ✉ Enviar consulta los datos, genera el PDF y abre el modal de envío. No hace falta descargar primero.

1
Cargá los destinatarios

El campo arranca vacío y hay que tipear las direcciones. Admite múltiples destinatarios como chips: Enter o coma agregan cada uno.

2
(Opcional) Escribí un mensaje adicional

No hay campo de asunto: se arma solo como "Reporte {Lab} {fechas} — ION-target". Solo podés sumar un "Mensaje adicional" opcional.

3
Enviá con "📧 Enviar con PDF adjunto"

Dispara POST /envio-reporte/reporte-cliente. El envío es por Resend, sin reintentos y con timeout de 30 s. En éxito aparece un banner verde "✓ Reporte enviado correctamente".

⚠️
El campo de destinatarios NO se precarga

El modal no trae el email del laboratorio ni ningún destinatario por defecto: arranca en blanco a propósito. Y el CC a support@ion-target.com se agrega solo y no se puede quitar (el modal lo avisa).

💡
Podés mandar a varias personas de una

Cargá tantos destinatarios como necesites (chips). Verificá cada dirección antes de enviar: el envío es inmediato y no hay confirmación posterior ni reintento.

⚖️
Trazabilidad del envío

Cada envío queda en el audit trail como ENVIAR_REPORTE_CLIENTE, con usuario, destinatarios, nombre del archivo e IP de origen.

Endpoints

AcciónEndpointDetalle
Datos del reporte GET /reportes/cliente?laboratorio_id&fecha_inicio&fecha_fin[&sector_id] Devuelve KPIs, servicios GMP, AT/RB y fichas de equipo del período.
Envío consolidado POST /envio-reporte/reporte-cliente Manda el PDF adjunto a los destinatarios (+ CC support). Resend, sin reintentos, timeout 30 s.
Reporte individual — GMP POST /envio-reporte/historial/{id} Se dispara desde Historial GMP. Precarga destinatarios.
Reporte individual — asistencia POST /envio-reporte/asistencia/{id} Se dispara desde AT y Reparaciones. Precarga destinatarios.
ℹ️
Consolidado vs. individual

El Reporte de Cliente (consolidado, este módulo) reúne todo el período y arranca con los destinatarios vacíos. Los reportes individuales por protocolo GMP o por asistencia se disparan desde su propia pantalla y precargan los destinatarios.


Preguntas frecuentes

¿A cuántos destinatarios puedo enviar el reporte?+
A los que quieras: el campo admite múltiples destinatarios como chips (Enter o coma agregan cada uno). Además, support@ion-target.com se agrega siempre como CC automático y no se puede quitar desde la interfaz.
¿Se precarga el email del cliente en el envío?+
No. El campo de destinatarios del Reporte de Cliente arranca vacío a propósito; tenés que tipear las direcciones. (Los reportes individuales por protocolo o asistencia sí precargan destinatarios, pero este consolidado no.)
¿Por qué el PDF no tiene las páginas de Servicios GMP o AT/RB?+
Esas dos páginas son condicionales: solo se incluyen si hay registros en el período. Si el laboratorio no tuvo servicios GMP (o AT/RB) en ese rango, esa página no se genera. Las fichas de equipo siempre aparecen, aunque el equipo no tenga actividad.
¿Puedo cambiar el asunto del email?+
No. El asunto se arma solo como "Reporte {Lab} {fechas} — ION-target". Lo único que podés personalizar es el campo opcional "Mensaje adicional".
¿Qué diferencia hay con el reporte individual por protocolo?+
El Reporte de Cliente es consolidado (todo el período, todos los equipos) y arranca con destinatarios vacíos. El reporte individual se envía desde Historial GMP (POST /envio-reporte/historial/{id}) o desde AT/RB (POST /envio-reporte/asistencia/{id}), cubre un solo registro y sí precarga los destinatarios.