docs(rtt) : custom contract deficit now reduces the balance
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -96,6 +96,12 @@ Traitement par employe:
|
||||
|
||||
> Regle clef : le report d'un exercice a l'autre reprend exactement le **disponible** affiche sur l'onglet RTT (cf. `EmployeeRttSummaryProvider`). Le report deja present au debut de l'exercice precedent n'est jamais perdu, et les heures deja payees ne sont pas re-creditees. Service mutualise : `App\Service\Rtt\RttClosingBalanceService`.
|
||||
|
||||
> Contrats CUSTOM : le solde de clôture intègre désormais les **déficits** hebdomadaires
|
||||
> (semaines travaillées sous les heures contractuelles), via `RttClosingBalanceService::fold`
|
||||
> qui gère les totaux négatifs. La clôture (donc le report d'ouverture N+1) peut être négative.
|
||||
> Après une mise à jour de cette règle, rejouer `app:rtt:rollover --force --recompute` pour
|
||||
> recalculer les lignes `employee_rtt_balances` non verrouillées calculées avec l'ancienne règle.
|
||||
|
||||
> Bug historique corrige : la version initiale ne reportait que `acquis N-1` (ni report d'ouverture, ni deduction des paiements), ce qui faisait disparaitre le solde de depart. Pour corriger des lignes deja creees a tort, relancer avec `--force --recompute`.
|
||||
|
||||
## 7) Donnees a fournir au go-live
|
||||
|
||||
@@ -16,6 +16,17 @@ L'onglet est **masqué pour les contrats FORFAIT** (filtre `showRttTab` dans `us
|
||||
|
||||
Toujours **Juin (Y-1) → Mai (Y)**. Le champ `EmployeeRttSummary.year` correspond à `Y` (année de fin d'exercice) ; ex. `year=2026` = `01/06/2025 → 31/05/2026`.
|
||||
|
||||
## Règle de calcul — contrats CUSTOM (4h, 25h…)
|
||||
|
||||
Pour un contrat CUSTOM, la récupération est **plate** (1h sup = 1h récup, sans bonus 25 %/50 %).
|
||||
Depuis 2026-06, une semaine **travaillée sous les heures contractuelles** produit un **déficit
|
||||
signé** dans la colonne « Heure » qui **réduit le « Total » et le « Cumul »** (1h manquante =
|
||||
-1h). Les colonnes Base/25 %/50 % restent à **0** (pas de tranches pour ces contrats). Le cumul
|
||||
peut devenir négatif ; il est reporté à l'exercice suivant.
|
||||
|
||||
Techniquement : `WeekRecoveryDetail::isFlatRecovery` marque ces semaines ;
|
||||
`EmployeeRttSummaryProvider::applyDeficitCascade` les exclut du drainage des tranches 25/50.
|
||||
|
||||
## Sélecteur d'année
|
||||
|
||||
Position : sous la table, à l'intérieur de la zone scrollable, à gauche.
|
||||
|
||||
Reference in New Issue
Block a user