Vacation Service
Orchestrator · Remuneraciones
ServiceVacacionesSaldos
VacationService administra solicitudes de vacaciones, cálculo de días hábiles y saldos por empleado. Sus resultados alimentan asistencia, revisión de saldos y cálculo de finiquitos.
Ubicación
Section titled “Ubicación”| Pieza | Ruta |
|---|---|
| Service | src/domain/vacations/VacationService.ts |
| Repository | src/domain/vacations/VacationRepository.ts |
| Route | src/routes/remuneraciones/vacations.ts |
| Tabla | remuneraciones.vacaciones |
Métodos Disponibles
Section titled “Métodos Disponibles”| Método | Uso |
|---|---|
findById(tenantDb, id) | Obtiene solicitud por identificador. |
findAll(tenantDb, filter) | Lista solicitudes con filtros. |
findRecent(tenantDb) | Obtiene solicitudes recientes. |
getBalances(tenantDb, filter) | Obtiene saldos de vacaciones por empleado. |
create(tenantDb, userId, data) | Crea solicitud y calcula días hábiles. |
update(tenantDb, userId, id, data) | Actualiza solicitud existente. |
delete(tenantDb, id) | Elimina solicitud según regla vigente. |
Validaciones
Section titled “Validaciones”| Regla | Motivo |
|---|---|
empleado_id obligatorio | La solicitud debe pertenecer a un trabajador. |
fecha_inicio y fecha_fin obligatorias | Permite calcular días hábiles. |
fecha_fin >= fecha_inicio | Evita rangos inválidos. |
| Estados válidos | Controla flujo PENDIENTE, APROBADA, RECHAZADA, ANULADA. |
| Sin solapamiento aprobado | Evita duplicar vacaciones en un mismo periodo. |
Ejemplo
Section titled “Ejemplo”import { VacationService } from '@/domain/vacations/VacationService';
await VacationService.create('tenant_db', 'user-123', { empleado_id: 'emp-uuid', fecha_inicio: '2026-02-01', fecha_fin: '2026-02-15', estado_solicitud: 'PENDIENTE', comentario: 'Vacaciones de verano'});
const { rows } = await VacationService.getBalances('tenant_db', {});Ver También
Section titled “Ver También” Servicio de Vacaciones Lectura funcional de feriado legal, saldos y NIC 19.
Servicio de Asistencia Uso de vacaciones aprobadas en el resumen mensual.
Servicio de Finiquitos Uso del saldo pendiente en término laboral.