Cómo crear un bloqueo de vacaciones
Impide solicitudes de vacaciones en Marea Gran Via durante un rango de fechas, aplicando el bloqueo a toda la ubicación, a roles concretos o a empleados concretos, con repetición opcional.
En este artículo
Un bloqueo de vacaciones protege periodos críticos del restaurante, como semanas de alta demanda o días donde el servicio necesita mantener cobertura completa.
En Antylogic, el bloqueo vive en el calendario de vacaciones como un evento `vacation_blackout`. Después se tiene en cuenta al validar solicitudes de vacaciones que se solapan con ese rango.
Antes de empezar
- Sesión iniciada en Grupo Marea Demo con la ubicación Marea Gran Via seleccionada.
- Permiso de ubicación `vacation-blackout:manage`; el permiso de solo vista no permite guardar.
- Para alcance por rol, la lista de roles debe estar disponible.
- Para alcance por empleado, la lista de empleados debe estar disponible.
Instrucciones
- 1.
Abre el formulario de bloqueo
Desde el calendario de vacaciones, usa la opción Bloquear vacaciones. La ruta directa es `calendars/create?kind=vacation_blackout&preset=vacations`.
- 2.
Define el rango de fechas
Revisa Comienzo y Fin. El formulario dedicado crea bloqueos de día completo, guardando el inicio a las 00:00 y el fin a las 23:59 de las fechas elegidas.
- 3.
Elige el alcance
Selecciona si el bloqueo aplica a Total, Rol o Empleado. Total afecta a toda Marea Gran Via; Rol puede limitarse a un equipo como sala; Empleado puede limitarse a personas concretas como Marta Ruiz.
- 4.
Escribe el motivo
Introduce el motivo operativo del bloqueo, por ejemplo Semana de alta demanda en Madrid. El motivo es obligatorio aunque el título interno del evento sea Vacaciones no permitidas.
- 5.
Configura repetición si hace falta
Si el bloqueo se repite, abre Repetir y elige una recurrencia diaria, semanal, mensual o anual. Si no aplica, deja la recurrencia en `none`.
- 6.
Guarda el bloqueo
Pulsa Bloquear. Si la API responde correctamente, la app vuelve a la ruta de retorno e invalida el calendario para que el bloqueo aparezca en la vista de vacaciones.
Validaciones y límites
- Comienzo y Fin deben ser fechas válidas, y Comienzo debe ser anterior a Fin.
- El motivo no puede quedar vacío.
- Con alcance Total no deben enviarse roles ni empleados seleccionados.
- Con alcance Rol debe seleccionarse al menos un rol.
- Con alcance Empleado debe seleccionarse al menos un empleado.
- La acción crea un `calendar_event` con `kind: 'vacation_blackout'`; no crea el modelo histórico `staff_vacation_blackouts`.
- El bloqueo queda limitado a una sola ubicación: `{orgId}` y `{locationId}` de la ruta actual.
- La recurrencia solo admite `daily`, `weekly`, `monthly` o `yearly` con parámetros válidos.
Resultado esperado
El calendario de vacaciones de Marea Gran Via muestra un nuevo bloqueo operativo. Las solicitudes posteriores que se solapen con un bloqueo aplicable pueden quedar rechazadas por conflicto de `vacation_blackout`.