diff --git a/server/exportService.ts b/server/exportService.ts index bb2ae25..ef6f95c 100644 --- a/server/exportService.ts +++ b/server/exportService.ts @@ -41,7 +41,7 @@ interface ApprenantPresence { interface FeuillePresenceInfo { formationNom: string; sequenceNom: string; - dates: Array<{ dateDebut: Date; dateFin: Date; ordre: number }>; + dates: Array<{ id: number; dateDebut: Date; dateFin: Date; ordre: number }>; lieu: string; publicCible: string; formateur?: string; @@ -224,8 +224,8 @@ export function generateFeuillePresence(feuilleInfo: FeuillePresenceInfo): Buffe // Tableau de présence avec signatures matin et après-midi const tableData = feuilleInfo.apprenants.map(i => { - // Trouver les présences pour cette date - const presenceMatin = i.presences?.find(p => p.dateFormationId === dateInfo.ordre); + // Trouver les présences pour cette date (utiliser l'ID de la date, pas l'ordre) + const presenceMatin = i.presences?.find(p => p.dateFormationId === dateInfo.id); return [ i.nom, diff --git a/server/routers.ts b/server/routers.ts index 5a1f005..b308cc3 100644 --- a/server/routers.ts +++ b/server/routers.ts @@ -1175,6 +1175,7 @@ export const appRouter = router({ formationNom: formation.nom, sequenceNom: sequence.nom, dates: dates.map(d => ({ + id: d.id, dateDebut: new Date(d.dateDebut), dateFin: new Date(d.dateFin), ordre: d.ordre, diff --git a/todo.md b/todo.md index 4143bc1..8d2beb1 100644 --- a/todo.md +++ b/todo.md @@ -1363,3 +1363,14 @@ - [x] Redémarrer l'application avec PM2 - [x] Vérifier que l'application fonctionne correctement - [ ] Tester l'export PDF avec signatures sur production (test utilisateur requis) + +## Bug - Signatures manquantes dans PDF + +- [x] Analyser pourquoi les signatures n'apparaissent pas dans le PDF généré +- [x] Vérifier la logique de correspondance entre présences et dates +- [x] Problème identifié : utilisation de dateInfo.ordre au lieu de dateInfo.id +- [x] Corriger le code (exportService.ts et routers.ts) +- [x] Ajouter l'ID de la date dans l'interface FeuillePresenceInfo +- [x] Corriger la logique de recherche des présences +- [x] Déployer sur VPS +- [ ] Tester la génération PDF avec signatures (test utilisateur requis)