Skip to content

Plataforma técnica · Sevastopol

Vacaciones en Sevastopol

Islands Remuneraciones Vacaciones

VacationsViewIsland opera dos preguntas distintas sobre vacaciones del tenant:

  • Solicitudes — CRUD de uso con workflow PENDIENTE → APROBADA / RECHAZADA / ANULADA.
  • Saldos — días disponibles por empleado a una fecha de corte arbitraria, opcionalmente filtrado por departamento.

El motor de finiquito lee el saldo al cierre para calcular la indemnización por feriado proporcional.

DecisiónMotivo
Dos tabs en lugar de dos islandsComparten contexto de tenant y catálogo de empleados; tabbing evita duplicar carga.
Saldo con corte editableEl cálculo no es siempre “a hoy” — el operador puede preguntar saldo proyectado a cualquier fecha.
Filtro de departamento sólo en saldosTiene sentido en saldos (consolidado por área); en solicitudes se filtra por empleado puntual.
Status quick-edit con modalCambiar PENDIENTE → APROBADA es la acción más frecuente; el modal evita abrir el form completo.
Default estado_solicitud = PENDIENTE al altaEl alta crea siempre como PENDIENTE — la aprobación es paso explícito separado.
Empleado inyectado en catálogo si faltaSi al editar la solicitud el empleado no está en empleados() (filtros aplicados), la island lo inyecta para que el select muestre el nombre correcto.
Filtro por estado default PENDIENTELo más usual al abrir la island es ver lo que falta aprobar.
TabEndpointContenido
solicitudes/api/vacations?scope=listLista paginada con filtros (empleado, estado, rango, texto).
saldos/api/vacations/saldosDías disponibles por empleado a fecha de corte.
Método + rutaUso
GET /api/vacations?scope=list&tenant_id=&...Listado paginado (summary con totales por estado).
GET /api/vacations?tenant_id=&id=Carga puntual para editar.
GET /api/vacations/saldos?tenant_id=&corte=&q=&departamento_codigo=Saldos por empleado.
POST /api/vacations?tenant_id=Alta.
PUT /api/vacations?tenant_id=&id=Edición (incluye cambio de estado).
DELETE /api/vacations?tenant_id=&id=Eliminación.
GET /api/employees?tenant_id=Catálogo.

VacationService — CRUD de solicitudes con workflow y cálculo de saldos a fecha de corte.