Cómo eliminar vacaciones aprobadas
Elimina definitivamente una vacación de empleado que ya aparece como aprobada. En el listado de vacaciones, Antylogic solo ofrece la acción Eliminar para filas aprobadas y siempre pide confirmación antes de borrar el evento de calendario.
En este artículo
Esta guía cubre el borrado gestionado de vacaciones aprobadas en la ubicación Marea Gran Via. Está pensada para responsables con permiso para depurar vacaciones del equipo sin tocar solicitudes pendientes por error.
La acción trabaja sobre `calendar_events` de tipo `staff_vacation`: al confirmar, se elimina el evento completo. No actualiza el estado de la solicitud ni tiene deshacer después del borrado.
Antes de empezar
- Sesión iniciada con la organización Grupo Marea Demo y la ubicación Marea Gran Via seleccionadas.
- Permiso `vacation:manage` en la ubicación para ver y ejecutar la acción Eliminar.
- Al menos una vacación de empleado aprobada, con estado `accepted` o el valor histórico `approved`.
- Para documentar o capturar este flujo, abrir `calendars/vacations/requests?pending_only=false`; `pending_only=true` oculta las vacaciones aprobadas.
Instrucciones
- 1.
Abre el listado completo
Entra en `calendars/vacations/requests?pending_only=false`. La vista carga las vacaciones del personal de la ubicación y permite revisar tanto solicitudes pendientes como vacaciones ya resueltas.
- 2.
Localiza una fila aprobada
Busca una fila con estado Aprobada. Con `vacation:manage`, esa fila puede mostrar Eliminar; las filas `requested` o `pending` se gestionan con Aprobar o Rechazar y no se eliminan desde la lista.
- 3.
Abre la confirmación
Pulsa Eliminar en la fila aprobada. La aplicación abre el modal Eliminar evento con el mensaje de eliminación definitiva. Si cancelas o cierras el modal, no se llama a la API y la fila queda intacta.
- 4.
Confirma el borrado
Confirma la eliminación solo cuando estés seguro. Antylogic ejecuta `DELETE /api/app/{orgId}/{locationId}/calendar-events/{eventId}` sin cuerpo; si la respuesta es `204 No Content`, cierra el modal, muestra Evento eliminado correctamente y refresca el listado.
- 5.
Usa la alternativa desde edición
También puedes abrir una vacación aprobada con Editar. El formulario muestra Eliminar cuando la vacación editada no está en estado `requested`; al confirmar, usa el mismo borrado y vuelve a la pantalla anterior.
Validaciones y límites
- La pantalla necesita `orgId` y `locationId` activos para operar y construir la ruta de API.
- La lista solicita solo eventos `staff_vacation`; otros eventos de calendario no forman parte de esta acción.
- La UI considera aprobados los estados `accepted` y `approved`; considera pendientes `requested` y `pending`.
- `vacation:view` permite consultar la lista, pero no ofrece la acción destructiva de fila.
- La regla de borrar solo aprobadas está en la UI del listado; el backend no valida `payload.status` antes del `DELETE`.
- Si falla el borrado, la UI muestra un error y conserva la fila hasta una eliminación correcta.
- Si el evento pertenece a otra ubicación, el backend no lo borra y responde como no encontrado.
- No hay deshacer después de confirmar; las capturas reutilizables deben detenerse en el modal y cancelar después.
Resultado esperado
La vacación aprobada desaparece del listado y del calendario de personal tras la confirmación. Si el operador cancela en el modal o el `DELETE` falla, no se elimina nada.