26 lines
1.3 KiB
Markdown
26 lines
1.3 KiB
Markdown
# Export PDF des heures — vue Jour
|
|
|
|
Bouton **Exporter** à droite du titre « Heures », visible **uniquement pour les
|
|
administrateurs** (`ROLE_ADMIN`).
|
|
|
|
## Comportement
|
|
- Ouvre un drawer : un champ **date** (préremplit la date affichée) et des **cases à
|
|
cocher des sites** (présélectionnées sur le filtre courant).
|
|
- Génère un **PDF A4 portrait** d'une seule journée, **regroupé par site**.
|
|
|
|
## Données
|
|
- Mêmes employés que la vue Jour : **non-conducteurs**, **sous contrat** à la date
|
|
choisie, des sites cochés. Les employés sous contrat sans saisie apparaissent (lignes
|
|
vides).
|
|
- Colonnes : Nom · Statut · Début matin · Fin matin · Début après-midi · Fin après-midi ·
|
|
Début soir · Fin soir · Jour · Nuit · Total. **Pas de colonne « Valider ».**
|
|
- Jour / Nuit / Total : identiques à l'écran (crédit d'absence `countAsWorkedHours` et
|
|
crédit virtuel férié inclus).
|
|
|
|
## Technique
|
|
- Endpoint : `GET /work-hours/day-export?workDate=YYYY-MM-DD&siteIds=1,2,3` (`ROLE_ADMIN`).
|
|
- Provider : `App\State\WorkHourDayExportProvider`.
|
|
- Calcul des cellules : `YearlyHoursExportBuilder::buildDayRowsForEmployees` (source
|
|
unique de vérité, partagée avec les exports annuels).
|
|
- Gabarit : `templates/work-hour-day-export/print.html.twig`.
|