-
Mahmoud Aglan authored
Complete trainer compensation lifecycle: - 7 migrations (trainer_compensations, payroll_periods, payslips, payslip_items, trainer_advances, trainer_rate_history + make employee_id nullable for freelancers) - 7 enums, 6 models with proper relationships - CompensationCalculatorService: auto-calculates session/player/revenue/penalty earnings - PayrollService: period management, bulk payslip generation, approval workflow, payment recording - TrainerAdvanceService: salary advance/loan lifecycle with installment tracking - Event listeners: AttendanceMarked → auto-compensation, SessionCancelled → trainer pay - 4 Livewire pages: PayrollDashboard, TrainerCompensations, PayslipDetail, TrainerAdvances - Sidebar navigation + routes with permission middleware Co-Authored-By:Claude Opus 4.6 <noreply@anthropic.com>
0aa21bd4