Cómo crear un cierre de ubicación
Marca Marea Gran Via como cerrada durante varios días completos con un evento `location_vacation`, sin empleado asignado y solo si el rango no contiene reservas activas que bloqueen el cierre.
En este artículo
Usa este flujo cuando una ubicación completa debe cerrar por vacaciones o por un cierre operativo temporal.
Antylogic trata el cierre como un evento de ubicación de día completo: no es una vacación de empleado, no pide seleccionar personal y queda visible en el calendario de vacaciones.
Antes de empezar
- Tener sesión iniciada y trabajar dentro de Grupo Marea Demo y la ubicación Marea Gran Via.
- Tener permiso `vacation:manage` en la ubicación; `vacation:view` solo permite consultar y `vacation:request` no sirve para cierres de ubicación.
- Elegir un rango sin reservas activas ni ocurrencias de servicio con reservas activas.
- Si se captura el resultado, crear el cierre solo en el runtime de documentación y limpiarlo al terminar.
Instrucciones
- 1.
Abre el formulario
Entra directamente con `kind=location_vacation` o abre una vacación gestionada de empleado desde el calendario de vacaciones.
- 2.
Confirma el cierre total
Comprueba que `Cierre total por vacaciones` esté activo. En ese estado desaparece el campo `Empleado` y el evento se preparará como cierre de toda la ubicación.
- 3.
Define las fechas completas
Rellena `Comienzo` y `Fin` para el rango de cierre. La interfaz usa la zona horaria `Europe/Madrid`, fija el comienzo local a `00:00` y el final local a `23:59`.
- 4.
Añade notas opcionales
Usa `Notas` solo si quieres dejar un motivo interno, como `Cierre operativo de verano`. Ese texto se guarda como `payload.reason`.
- 5.
Guarda el cierre
Pulsa `Crear vacaciones`. Antylogic valida permisos, rango y conflictos antes de crear el evento con `kind: location_vacation`, `all_day: true` y sin `staff_id`.
- 6.
Comprueba el calendario
Vuelve al calendario de vacaciones y confirma que el cierre aparece como evento de la ubicación. Si se guarda correctamente, la interfaz muestra `Evento creado correctamente.`
Validaciones y límites
- Si falta contexto de organización o ubicación, la pantalla muestra `No encontramos la ubicación solicitada.` y no permite guardar.
- Si el usuario no tiene gestión de vacaciones, la pantalla muestra `No tienes permisos para gestionar eventos en este calendario.`
- Si hay reservas activas en el rango o en una ocurrencia de servicio solapada, el backend rechaza la operación con `error.calendar.location_vacation.reservations`.
- `location_vacation` no admite recurrencia y la edición normal no permite cambiar el tipo de evento.
- El selector normal del preset `vacations` no ofrece `location_vacation` como tipo independiente; el flujo se alcanza por enlace directo o desde el toggle del formulario de vacaciones gestionadas.
Resultado esperado
El cierre queda registrado en `calendar_events` como `location_vacation`, sin empleado asignado. El calendario de vacaciones lo muestra como evento de ubicación y las ocurrencias de servicio solapadas sin reservas activas pueden retirarse durante el guardado.