Files
SIRH/frontend/services/dto/employee-leave-summary.ts
tristan 5302586644 feat(leave) : align forfait CP N + display remaining workdays + N-1 absences exempt from presence
- LeaveRecapRowBuilder: forfait CP N now reflects remainingDays (acquis − pris depuis N) instead of the constant acquiredDays. Affects both PDF export and screen recap.
- Employee detail header: forfait label becomes "Forfait - 218 jours (X restants)" where X = 218 − presence days from Jan 1 to today (today included).
- New EmployeeLeaveSummary.presenceDaysToToday field, computed via the same logic as presenceDaysByMonth but capped at today.
- Forfait business rule: leaves attributed to N-1 stock no longer decrement presence days. Implemented by chronologically consuming an N-1 budget (= previousYearTakenDays) inside computePresenceDaysByMonth before counting any absence. Non-forfait unaffected (budget is 0).
- Doc updates: CLAUDE.md (forfait/N-1 rule), functional-rules.md (CP N forfait semantics).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 10:20:23 +02:00

21 lines
504 B
TypeScript

export type EmployeeLeaveSummary = {
year: number
isSupported: boolean
ruleCode: string
acquiredDays: number
remainingDays: number
takenDays: number
acquiredSaturdays: number
remainingSaturdays: number
takenSaturdays: number
fractionedDays: number
accruingDays: number
previousYearAcquiredDays: number
previousYearTakenDays: number
previousYearRemainingDays: number
previousYearPaidDays: number
presenceDaysByMonth: Record<string, number>
presenceDaysToToday: number
}