Flujo de Configuración y Cita
Esta página describe el flujo objetivo para preparar una agenda y poder crear citas válidas. El flujo parte de una configuración general, continúa con servicios y empleados, y termina con la creación de una cita validada por backend.
Importante: parte de este flujo representa el comportamiento objetivo. Algunas reglas todavía deben implementarse en el modelo y en AppointmentModelValidator para que sean obligatorias tanto desde la UI como desde REST/API.
Flujo objetivo
flowchart TD
A[Configurar Agenda] --> B[Definir reglas generales]
B --> B1[Horas mínimas de anticipación]
B --> B2[Días máximos de anticipación]
B --> B3[Regla de asignación]
B --> B4[Forzar aprobación]
B --> B5[Autoaprobar si el servicio lo permite]
A --> C[Definir horario macro de agenda]
C --> C1[Lunes a viernes]
C --> C2[Rangos de hora permitidos]
C --> C3[Días o rangos cerrados de organización]
A --> D[Relacionar servicios con la configuración]
D --> D1[Cada servicio pertenece a una sola configuración]
D --> E[Configurar Servicio]
E --> E1[Duración]
E --> E2[Precio]
E --> E3[Intervalo de slot]
E --> E4[Requiere aprobación]
E --> F[Configurar Empleado]
F --> F1[Servicios que puede atender]
F --> F2[Precio/duración override]
F --> F3[Horario laboral del empleado]
F --> F4[Días libres o bloqueos]
F --> G[Crear Cita]
G --> G1[Seleccionar empleado]
G --> G2[Seleccionar servicio]
G --> G3[Resolver configuración del servicio]
G --> G4[Validar reglas de agenda]
G --> G5[Validar horario macro]
G --> G6[Validar horario y días libres del empleado]
G --> G7[Validar conflictos]
G7 --> H{¿Requiere aprobación?}
H -->|Sí| I[Guardar como Pendiente]
H -->|No y configuración permite autoaprobar| J[Guardar como Aprobada]
H -->|Configuración fuerza aprobación| I
Secuencia funcional
Jerarquía de disponibilidad esperada
Reglas pendientes para completar el flujo
BeforeNew.
Hacer que los días libres de organización puedan aplicar por configuración cuando corresponda.