Preview de Impacto
El Preview de Impacto es una característica que te permite ver exactamente cuántos slots de citas se bloquearán con un cierre ANTES de crearlo. Esto te ayuda a tomar decisiones informadas y evitar bloquear disponibilidad por error.¿Qué Muestra el Preview?
El preview calcula y muestra en tiempo real:| Métrica | Descripción |
|---|---|
| Slots normales | Total de slots disponibles en el período (SIN el cierre) |
| Slots bloqueados | Slots que se bloquearán CON el cierre |
| % de impacto | (slots bloqueados / slots normales) × 100 |
| Nivel de impacto | HIGH (100%), MEDIUM (50-99%), LOW (<50%) |
| Email notification | Sí ✅ si impacto HIGH, No ❌ si MEDIUM/LOW |
Niveles de Impacto
HIGH (100%)
Todos los slots bloqueadosSignifica que NINGÚN paciente podrá agendar citas en ese período.Acciones sugeridas:
- Verificar fechas son correctas
- Considerar notificar manualmente a clientes
- Evaluar si es necesario dividir el cierre
MEDIUM (50-99%)
Mayoría de slots bloqueadosLa mayoría de citas se bloquearán, pero algunos slots siguen disponibles (otros proveedores).Acciones sugeridas:
- Validar que otros proveedores cubren demanda
- Considerar ajustar fechas si es muy alto (>90%)
LOW (<50%)
Impacto mínimoMenos de la mitad de slots se bloquean. Disponibilidad parcial garantizada.Acciones sugeridas:
- Safe to proceed
- No requiere acciones adicionales
Cómo Usar el Preview
1
Completar formulario de cierre
Antes de hacer preview, completa:
- Tipo de cierre (clinic-wide o provider-specific)
- Proveedor (si es provider-specific)
- Fecha y hora de inicio
- Fecha y hora de fin
- Razón (opcional)
El preview requiere al menos las fechas (inicio/fin) para calcular. El tipo y proveedor afectan el resultado.
2
Click en 'Preview Impacto'
En el formulario de cierre, haz click en el botón “Preview Impacto”.El sistema ejecutará en tiempo real:
- Llamada a API:
POST /v1/closures/impact-preview - Cálculo de disponibilidad normal (sin el cierre)
- Simulación del cierre propuesto
- Comparación de slots (antes vs después)
- Cálculo de nivel de impacto
3
Revisar resultados
El sistema mostrará una tabla con detalles del impacto:Información general:
- Período:
2026-08-01 a 2026-08-15(15 días) - Tipo: Cierre de clínica (clinic-wide)
- Proveedor: Todos
- Slots normales: 300 slots
- Slots bloqueados: 300 slots
- % de impacto: 100%
- Nivel: HIGH
- Email notification: Sí ✅
| Fecha | Slots normales | Slots bloqueados | % Impacto |
|---|---|---|---|
| 2026-08-01 | 20 | 20 | 100% |
| 2026-08-02 | 20 | 20 | 100% |
| … | … | … | … |
| 2026-08-15 | 20 | 20 | 100% |
4
Interpretar resultados
Usa la siguiente guía para interpretar:Si nivel es HIGH (100%):
- ⚠️ Reconsiderar: ¿Las fechas son correctas?
- ⚠️ Notificar: ¿Debo avisar manualmente a clientes?
- ⚠️ Alternativas: ¿Puedo dividir el cierre en períodos más pequeños?
- ✅ Validar: ¿Otros proveedores cubren la demanda?
- ✅ Ajustar: ¿Puedo cambiar fechas para reducir impacto?
- ✅ Safe to proceed: Impacto mínimo, puedes crear el cierre sin preocupaciones
5
Decidir acción
Basándote en los resultados, decide:Opción A: Crear el cierre (si impacto es aceptable)
- Click en “Crear Cierre”
- El sistema procederá con la creación
- Modifica inicio/fin en el formulario
- Ejecuta preview nuevamente
- Repite hasta encontrar impacto aceptable
- Click en “Cancelar”
- No se crea el cierre
Ejemplos de Preview
Ejemplo 1: Vacaciones de verano (clinic-wide, 15 días)
Ejemplo 1: Vacaciones de verano (clinic-wide, 15 días)
Configuración propuesta:Interpretación:
- Tipo: Cierre de clínica
- Inicio:
2026-08-01 00:00 - Fin:
2026-08-15 23:59 - Razón: “Vacaciones de verano”
- ⚠️ Impacto HIGH: TODOS los slots bloqueados
- ⚠️ Acción sugerida: Verificar fechas, considerar notificar clientes manualmente
- ✅ Email enviado automáticamente a admins
Ejemplo 2: Cierre parcial (solo 1 proveedor, 2 días)
Ejemplo 2: Cierre parcial (solo 1 proveedor, 2 días)
Configuración propuesta:Interpretación:
- Tipo: Cierre de proveedor
- Proveedor: Dr. García
- Inicio:
2026-02-03 00:00 - Fin:
2026-02-04 23:59 - Razón: “Permiso médico personal”
- ✅ Impacto MEDIUM: Solo 33% de slots bloqueados
- ✅ Otros proveedores (Dra. López, Dra. Fernández) disponibles
- ✅ NO se envía email (impacto no es HIGH)
Ejemplo 3: Medio día (provider-specific, 5 horas)
Ejemplo 3: Medio día (provider-specific, 5 horas)
Configuración propuesta:Interpretación:
- Tipo: Cierre de proveedor
- Proveedor: Ana López
- Inicio:
2026-03-10 09:00 - Fin:
2026-03-10 14:00 - Razón: “Capacitación: Curso de técnicas avanzadas”
- ✅ Impacto LOW (total): Solo 17% de slots clínica bloqueados
- ⚠️ Impacto MEDIUM (Ana): 50% de slots de Ana bloqueados
- ✅ Ana sigue disponible 14:00-18:00 (tarde)
- ✅ Otros proveedores disponibles todo el día
Ejemplo 4: Día festivo (clinic-wide, 1 día)
Ejemplo 4: Día festivo (clinic-wide, 1 día)
Configuración propuesta:Interpretación:
- Tipo: Cierre de clínica
- Inicio:
2026-12-25 00:00 - Fin:
2026-12-25 23:59 - Razón: “Día festivo - Navidad”
- ⚠️ Impacto HIGH: Día completo bloqueado
- ✅ Esperado: Es un día festivo (normal que esté cerrado)
- ✅ Email enviado para alerta
Casos Especiales del Preview
Preview muestra 0 slots normales
Preview muestra 0 slots normales
Problema: El preview indica
Slots normales: 0.Causa probable:- La clínica ya está cerrada esos días (no hay work_hours configurados)
- El período seleccionado cae en días sin horarios de trabajo
- Clínica solo trabaja lunes-viernes (work_hours)
- Intentas crear cierre para sábado-domingo
- Preview muestra 0 slots normales (ya cerrado)
- Verificar work_hours de la clínica
- Si es correcto, no es necesario crear el cierre (ya está cerrado por work_hours)
- Si quieres bloquear explícitamente, puedes crear el cierre de todos modos
Preview no coincide con realidad después de crear
Preview no coincide con realidad después de crear
Problema: Preview mostraba 100 slots bloqueados, pero después de crear solo se bloquearon 80.Causa probable:
- Citas ya agendadas reducen los slots disponibles
- El preview calcula slots TEÓRICOS (sin considerar citas existentes)
- Preview: Calcula disponibilidad basada en work_hours y duración de servicios
- Realidad: Citas ya agendadas consumen slots
- Preview: 100 slots disponibles teóricamente
- Realidad: 20 citas ya agendadas = 80 slots realmente disponibles
- Cierre bloquea solo los 80 slots libres
- El preview es un estimado
- Para cálculo exacto, revisa el calendario y cuenta citas existentes manualmente
- El sistema NUNCA cancela citas existentes al crear cierre
Preview con múltiples proveedores
Preview con múltiples proveedores
Problema: Tengo 5 proveedores, ¿cómo interpreto el preview para cierre de 1 proveedor?Solución:
El preview mostrará DOS porcentajes:1. % de impacto total (clínica completa):
- Considera todos los proveedores
- Ejemplo: 20% (1 de 5 proveedores)
- Solo para ese proveedor
- Ejemplo: 100% (todos los slots del proveedor bloqueados)
- Si % total es LOW (<50%): Disponibilidad parcial garantizada ✅
- Si % proveedor es HIGH (100%): Ese proveedor no estará disponible ⚠️
- Usa % total para evaluar impacto en clínica
- Usa % proveedor para validar que las fechas son correctas para ese empleado
Preview con cierres solapados
Preview con cierres solapados
Problema: Ya tengo un cierre existente, creo otro solapado. ¿Cómo se calcula el preview?Solución:
El preview calcula el impacto ADICIONAL del nuevo cierre:Escenario:
- Cierre existente: Dr. García, 1-5 de agosto (40 slots bloqueados)
- Cierre nuevo: Dra. López, 3-7 de agosto (50 slots)
- Slots normales: 100 slots (período 3-7 agosto)
- Slots ya bloqueados por Dr. García: 20 slots (solapamiento 3-5 agosto)
- Slots bloqueados por Dra. López: 50 slots
- Total slots bloqueados después: 70 slots (20 García + 50 López)
- Impacto adicional del nuevo cierre: 50 slots (solo López)
- El preview muestra impacto del cierre que estás creando AHORA
- No suma cierres existentes (esos ya están en efecto)
Limitaciones del Preview
API Endpoint
El preview utiliza el endpoint:provider_id:nullpara cierre clinic-wide, UUID para cierre provider-specific