📅 Cronograma de Implementación — Sistema Turnero Inteligente

Proyecto: ERP Multi-Módulo  ·  Laboratorio Clínico  ·  14 Abril – 20 Junio 2026
67
Días calendario
10
Semanas
9
Entregables
1/10
Completado
20 Jun
Go-live
Referencias: Completado Desarrollo (BD + APIs) Desarrollo (Vistas) Desarrollo (Admin) Pruebas / QA Capacitación Go-Live / Producción
67 días calendario · 14 Abr – 20 Jun 2026
# Fase Actividad Entregables principales Días Inicio Fin Estado S114-20 Abr S221-27 Abr S328 Abr-4 May S45-11 May S512-18 May S619-25 May S726 May-1 Jun S82-8 Jun S99-15 Jun S1016-20 Jun
⚙️ BLOQUE 1 — ADECUACIÓN ERP BASE    (Semana 1 — COMPLETADO)
1 ERP Adecuar Software como ERP Estructura core/ · modules/ · shared/ · Router centralizado · Sidebar dinámico · SYSTEM_MODULES en BD · 11 módulos migrados a nueva estructura 7 14 Abr 20 Abr ✅ Completado ·········
🗄️ BLOQUE 2 — BASE DE DATOS DEL TURNERO — FASE 3.1    (Semana 2)
2 F 3.1 Migración 003 — Tablas Turnero exam_tipos · exam_tipo_consentimientos · turnero_lugares · turnero_prioridades · turnero_sesiones · turnero_turnos · turnero_solicitudes · turnero_examen_items · turnero_consentimientos · ALTER lab_formularios 5 21 Abr 25 Abr 🔵 Próximo ·········
3 F 3.1 Datos iniciales + module.php Prioridades A-F por defecto · Registro en system_modules · module.php descriptor · Asignación roles recepcionista / auxiliar 2 26 Abr 27 Abr ⬜ Pendiente ·········
⚡ BLOQUE 3 — MOTOR DE PRIORIDADES + APIs CORE — FASE 3.2    (Semana 3)
4 F 3.2 APIs de turno y solicitud create_turno.php (sesión diaria + correlativo) · create_solicitud.php (exámenes + pago + lugar + consentimientos auto) · Actualización estado turno 4 28 Abr 01 May ⬜ Pendiente ·········
5 F 3.2 Motor de cola + SSE llamar_turno.php (motor prioridad + FIFO) · cambiar_estado.php (validaciones bloqueo) · get_cola.php · sse_turno.php (Server-Sent Events) 3 02 May 04 May ⬜ Pendiente ·········
📺 BLOQUE 4 — KIOSKO + PANTALLAS TV — FASE 3.3    (Semana 4)
6 F 3.3 Kiosko táctil views/kiosko.php fullscreen · Botones A-F (icono + descripción) · Campo nombre/celular (opcional) · Código generado (ej. "E-042") · Sin exposición de datos 3 05 May 07 May ⬜ Pendiente ·········
7 F 3.3 Pantallas TV / Display views/display.php · ?display=recepcion (cola general) · ?display=lugar&lugar_id=X (cola del lugar) · SSE en tiempo real · Colores prioridad + animación 4 08 May 11 May ⬜ Pendiente ·········
🖥️ BLOQUE 5 — PUESTO DE RECEPCIÓN — FASE 3.4    (Semana 5)
8 F 3.4a Vista Recepción — Atención al paciente views/recepcion.php · Cola general con prioridad visual · Llamar siguiente · Buscador/creación paciente (reutiliza lab_pacientes) · Catálogo exam_tipos + selector 4 12 May 15 May ⬜ Pendiente ·········
9 F 3.4b Solicitudes + Pago + Lugar destino Registro pago (monto + método) · Selector Lugar destino · Botón Crear Solicitud · create_solicitud.php · Cálculo auto consentimientos requeridos 3 16 May 18 May ⬜ Pendiente ·········
10 F 3.4c Envío Consentimientos por WhatsApp send_consentimiento.php · Deduplicación de formularios · Tokens UUID únicos · WhatsAppService + plantilla Meta "consentimiento_turno" · Estados en tiempo real 7 19 May 25 May ⬜ Pendiente ·········
🔬 BLOQUE 6 — PUESTO LUGAR / ESTACIÓN DE SERVICIO — FASE 3.5    (Semana 7)
11 F 3.5 Vista Lugar / Estación genérica views/lugar.php (?lugar_id=X) · Cola priorizada del lugar · Llamar siguiente · Ficha: datos + exámenes + estado consentimientos · Bloqueo si pendientes 4 26 May 29 May ⬜ Pendiente ·········
12 F 3.5 Flujo de servicio: Iniciar / Finalizar Botón "Iniciar atención" (habilitado si consentimientos OK) · Botón "Finalizar" → estado finalizado · Botón "Ausente" / Regresar a cola · polling 5s 3 30 May 01 Jun ⬜ Pendiente ·········
✍️ BLOQUE 7 — FIRMA DIGITAL DE CONSENTIMIENTOS — FASE 3.6    (Semana 8)
13 F 3.6 Integración firma en flujo turnero Campo tipo en lab_formularios · ver_formulario_enviado.php detecta token de turno · Actualiza turnero_consentimientos · Registro evidencia: IP, UA, fecha, versión 4 02 Jun 05 Jun ⬜ Pendiente ·········
14 F 3.6 "Firmar aquí" en tablet del puesto Botón "Firmar aquí" en lugar.php → modal/iframe con ver_formulario_enviado.php · Firma física en pantalla del auxiliar · Detección en tiempo real (polling 5s) 3 06 Jun 08 Jun ⬜ Pendiente ·········
⚙️ BLOQUE 8 — PANEL ADMIN + CONFIGURACIÓN — FASE 3.7    (Semana 9)
15 F 3.7 Configuración: Lugares + Exámenes Tab Lugares: CRUD + URL TV automática · Tab Exámenes y Consentimientos: M:N (exam_tipos ↔ formularios) · Vista inversa por consentimiento 4 09 Jun 12 Jun ⬜ Pendiente ·········
16 F 3.7 Dashboard Admin + Prioridades + Sesión Dashboard: KPIs del día + tiempo promedio + exportar CSV · Tab Prioridades (CRUD) · Tab Sesiones (abrir/cerrar/historial) · Tab WhatsApp (plantilla Meta) 3 13 Jun 15 Jun ⬜ Pendiente ·········
🧪 BLOQUE 9 — QA · CAPACITACIÓN · GO-LIVE    (Semana 10 · 16–20 Jun)
17 QA Testing end-to-end y corrección de bugs Flujo completo paciente · Múltiples lugares simultáneos · SSE stress test · Consentimientos en tiempo real · Validación OWASP Top 10 2 16 Jun 17 Jun 🟡 Pendiente ·········
18 CAP Capacitación del equipo Manual recepcionista · Manual auxiliar/lugar · Manual administrador · Capacitación presencial o remota · Guías rápidas por rol 1 18 Jun 18 Jun 🟣 Pendiente ·········
19 DEPLOY Go-Live y soporte post-lanzamiento Deploy en producción · Configuración inicial: lugares, exámenes, prioridades, plantillas Meta · Prueba en producción · Monitoreo · Ajustes finales 2 19 Jun 20 Jun 🟢 Pendiente ·········

📌 Notas del Cronograma

🔄 Metodología incremental

Desarrollo iterativo. El sistema sigue funcionando en producción durante toda la implementación. Los módulos legacy (lab_*.php) permanecen activos hasta que su equivalente nuevo esté validado.

🔗 Reutilización de componentes

Los consentimientos reutilizan el módulo de Formularios existente. El buscador de pacientes reutiliza lab_pacientes. WhatsApp reutiliza el servicio ya activo. La firma digital ya está implementada.

⚠️ Dependencias críticas

El Bloque 3 (API Core) debe completarse antes de iniciar las vistas (Bloques 4–7). La plantilla Meta "consentimiento_turno" debe aprobarse en WhatsApp Business Manager preferiblemente en la semana 3. La última semana (S10) es compacta: QA + capacitación + go-live en 5 días — cualquier retraso acumulado en semanas anteriores impacta directamente la fecha de lanzamiento.

📱 Compatibilidad móvil

Kiosko: táctil fullscreen (tablet Android/iPad). Display TV: cualquier pantalla con navegador. Puesto Recepción y Lugar: PC o tablet. Firma paciente: cualquier celular vía WhatsApp.

🛡️ Seguridad OWASP

Todas las APIs implementan: requireMethod() + verificar sesión + PDO preparado + sanitización de parámetros. Pantallas sin login (kiosko, TV) nunca exponen datos sensibles.

📊 Soporte post-lanzamiento

30 días de soporte incluidos tras el go-live (20 Jun – 20 Jul 2026) para ajustes basados en uso real, reportes de KPIs, y optimizaciones de UX identificadas en producción.