WorkingDay Service
El WorkingDayService administra el catálogo de jornadas laborales y sus configuraciones horarias.
Ubicación
Section titled “Ubicación”Archivo: src/domain/working_day/WorkingDayService.ts
Métodos Disponibles
Section titled “Métodos Disponibles”| Método | Descripción |
|---|---|
findById(tenantDb, id) | Obtiene jornada por ID |
findAll(tenantDb, filter) | Lista jornadas con filtros |
create(tenantDb, userId, data) | Crea nueva jornada |
update(tenantDb, userId, id, data) | Actualiza jornada |
Validaciones
Section titled “Validaciones”- Código y Nombre son obligatorios.
- Tipo de Jornada válido:
COMPLETA,PARCIAL,ESPECIAL.
Tipos de Jornada
Section titled “Tipos de Jornada”| Tipo | Descripción |
|---|---|
COMPLETA | 45 horas semanales (máximo legal) |
PARCIAL | Menos de 30 horas semanales |
ESPECIAL | Turnos, fines de semana, etc. |
Ejemplo de Uso
Section titled “Ejemplo de Uso”import { WorkingDayService } from '@/domain/working_day/WorkingDayService';
// Crear jornadaconst jornada = await WorkingDayService.create('tenant_db', 'user-123', { codigo: 'JC-001', nombre: 'Jornada Completa Estándar', tipo_jornada: 'COMPLETA', horas_semanales: 45, hora_entrada: '08:30', hora_salida: '18:30', almuerzo: 60});
// Obtener por IDconst detalle = await WorkingDayService.findById('tenant_db', jornada.id);Dependencias
Section titled “Dependencias”- WorkingDayRepository: Acceso a datos de jornadas en PostgreSQL.