Cómo resolver una salida sin entrada abierta
Cuando Antylogic no encuentra una entrada abierta al registrar la salida de un empleado, pide la hora de entrada que falta, crea una entrada manual como corrección pendiente y después completa la salida del turno.
En este artículo
Este flujo aparece cuando un responsable intenta registrar una salida en asistencia y el sistema detecta que no hay ningún turno abierto para ese empleado. En el demo de Marea Gran Via, el caso se documenta con Marta Ruiz como ejemplo operativo.
La resolución no edita el turno directamente: Antylogic solicita la hora de entrada, registra esa entrada como corrección pendiente y luego cierra la salida para mantener la trazabilidad de la incidencia.
Antes de empezar
- Sesión iniciada en Grupo Marea Demo con la ubicación Marea Gran Via activa.
- Empleado seleccionable en asistencia, por ejemplo Marta Ruiz.
- Permiso `staff-shifts:notify` para registrar entradas y salidas desde la ubicación, o acceso de autoservicio vinculado al propio empleado.
- El empleado no debe tener un turno abierto en el momento de pulsar `Salida`.
Instrucciones
- 1.
Abre asistencia del empleado
Entra en la pantalla de asistencia de Marea Gran Via y selecciona al empleado. La acción empieza desde la ficha del empleado en `attendance?staff=${STAFF_ID}`.
- 2.
Intenta registrar la salida
Pulsa `Salida` y confirma en `Confirmar salida`. Si no existe una entrada abierta, Antylogic no cierra ningún turno y muestra el aviso de corrección.
- 3.
Indica la hora de entrada
En `Corrección de tiempo requerida`, revisa el mensaje `No hay turno abierto. Se creará una corrección.` e introduce la hora real de entrada en `Hora de entrada`.
- 4.
Guarda la resolución
Pulsa `Guardar`. La aplicación crea primero una entrada manual con la hora indicada y después registra la salida calculada para cerrar el turno.
- 5.
Comprueba la corrección pendiente
Tras guardar, la pantalla refresca los turnos y muestra `Turno actualizado`. Si tienes permisos de gestión, revisa la entrada pendiente desde `attendance/corrections?pending_only=true`.
Validaciones y límites
- El intento inicial de salida debe fallar con `error.staff_shift.missing_open_shift`; antes de resolver el aviso no se modifica ningún turno.
- La hora de entrada es obligatoria. Si no se puede interpretar, la pantalla muestra `Indica la hora de entrada.` y no envía la corrección.
- La salida calculada debe ser posterior a la entrada y no puede quedar en el futuro.
- `exit_time` debe tener formato `HH:mm` y `exit_day_offset` solo puede ser `0` o `1`.
- Cancelar el aviso no crea la entrada faltante ni registra la salida.
- Si falla la creación de la entrada, la salida posterior no se intenta. Si falla la salida después de crear la entrada, no hay reversión automática.
- `staff-shifts:manage` permite revisar correcciones, pero no autoriza por sí solo el registro de esta resolución.
Resultado esperado
El turno queda cerrado con una entrada manual marcada como `correction_requested`, disponible para revisión en la cola de correcciones de asistencia.