Horas Extras (`overtime/`)
Exportar contenido
Registrar Horas Extras
Sección titulada «Registrar Horas Extras»Ruta: /owner/hr/overtime
Sistema de gestión de horas extraordinarias con compensación flexible.
Tipos de Registro
Sección titulada «Tipos de Registro»Manual:
1. Manager registra horas extras2. Indica empleado y fecha3. Especifica horas realizadas4. Añade motivo/proyecto5. Guarda registroAutomático desde Fichajes:
1. Sistema detecta horas > jornada contractual2. Genera registro automático3. Marca como "pendiente de revisión"4. Manager aprueba o ajustaLímites Legales
Sección titulada «Límites Legales»Según el Estatuto de los Trabajadores:
- Máximo anual: 80 horas extras
- Voluntarias: Salvo pacto o convenio
- Compensación: Económica o con descanso
- Registro obligatorio: Según ITSS
Alertas del Sistema:
- 🟡 Acumulación > 40h en 6 meses
- 🔴 Acumulación > 70h en el año
- 🔴 Superación del límite legal (80h)
Detalles Técnicos
Componentes:
OvertimeQueue.tsx // Cola de registros pendientesOvertimeCompensationManager.tsx // Gestión de compensacionesOvertimeDetailDialog.tsx // Detalle de registroOvertimePolicySettings.tsx // Configuración de políticasTabla: overtime_records
CREATE TABLE overtime_records ( id UUID PRIMARY KEY, employee_id UUID NOT NULL, business_id UUID NOT NULL, date DATE NOT NULL, hours DECIMAL(5,2) NOT NULL, reason TEXT, status TEXT DEFAULT 'pending', -- pending, approved, compensated compensation_type TEXT, -- economic, time_off compensation_applied BOOLEAN DEFAULT FALSE, approved_by UUID, created_at TIMESTAMP DEFAULT NOW());Edge Function: overtime-compensation-alert
Ejecutada semanalmente, notifica a RRHH sobre:
- Empleados con acumulación alta
- Horas próximas a caducar
- Límites legales cercanos
Compensar con Tiempo Libre
Sección titulada «Compensar con Tiempo Libre»Los empleados pueden optar por compensar horas extras con descanso.
Proceso de Compensación
Sección titulada «Proceso de Compensación»1. Empleado tiene horas extras aprobadas2. Solicita compensación con tiempo libre3. Indica proporción (típicamente 1.5:1) - 10h extras = 15h de descanso4. Solicita días específicos5. Manager aprueba6. Sistema descuenta de saldo de horas extras7. Genera ausencia tipo "compensatory_time"Políticas Configurables
Sección titulada «Políticas Configurables»Por empresa, se pueden configurar:
- Ratio de compensación: 1:1, 1.5:1, 2:1
- Caducidad: 3, 6, 12 meses
- Acumulación máxima: Límite de horas
- Prioridad: Económica o tiempo libre