Checkpoint: Correction de l'erreur SQL MIN() vide dans la récupération de la première date des séquences - remplacé par post-traitement JavaScript

This commit is contained in:
Manus
2026-01-25 11:12:50 -05:00
parent b32487aa4d
commit 727a29fa63
2 changed files with 17 additions and 8 deletions

View File

@@ -159,17 +159,21 @@ export async function getApprenantsWithAttestationStatus(formationId: number) {
const db = await getDb(); const db = await getDb();
if (!db) return []; if (!db) return [];
// Récupérer les premières dates de chaque séquence // Récupérer toutes les dates de formation
const premieresDates = await db const toutesLesDates = await db
.select({ .select({
sequenceId: datesFormation.sequenceId, sequenceId: datesFormation.sequenceId,
premiereDate: sql<Date>`MIN(${datesFormation.date})`, date: datesFormation.date,
}) })
.from(datesFormation) .from(datesFormation);
.groupBy(datesFormation.sequenceId);
// Créer un map pour accès rapide // Calculer la première date de chaque séquence en JavaScript
const datesMap = new Map(premieresDates.map(d => [d.sequenceId, d.premiereDate])); const datesMap = new Map<number, Date>();
toutesLesDates.forEach(({ sequenceId, date }) => {
if (!datesMap.has(sequenceId) || date < datesMap.get(sequenceId)!) {
datesMap.set(sequenceId, date);
}
});
const results = await db const results = await db
.select({ .select({

View File

@@ -1293,4 +1293,9 @@
- [x] Afficher la date de début dans l'en-tête de chaque séquence (ex: "Groupe A - 15/01/2026") - [x] Afficher la date de début dans l'en-tête de chaque séquence (ex: "Groupe A - 15/01/2026")
- [x] Ajouter un bouton "Envoyer toutes les attestations de cette séquence" dans l'en-tête - [x] Ajouter un bouton "Envoyer toutes les attestations de cette séquence" dans l'en-tête
- [x] Créer un filtre "Séquences terminées / à venir" - [x] Créer un filtre "Séquences terminées / à venir"
- [ ] Déployer sur le VPS - [x] Déployer sur le VPS
## Corriger l'erreur SQL MIN() vide dans la récupération de la première date
- [x] Corriger la requête SQL dans gestionAttestationsDb.ts (remplacé par post-traitement JS)
- [x] Déployer la correction sur le VPS