Checkpoint: Correction du filtrage des inscriptions annulées

- Modification de getInscriptionsBySequence pour exclure les inscriptions avec statut "annulee"
- Modification de getInscriptionsByApprenant pour exclure les inscriptions avec statut "annulee"
- Ajout de l'import de la fonction ne depuis drizzle-orm
- Vérification que le scheduler de rappels filtre déjà correctement (envoie uniquement aux inscriptions confirmées)
This commit is contained in:
Manus Sandbox
2025-12-01 04:02:07 -05:00
parent b30c68c110
commit 94f6532ce6
2 changed files with 17 additions and 3 deletions

View File

@@ -1,4 +1,4 @@
import { eq, and, sql } from "drizzle-orm"; import { eq, and, ne, sql } from "drizzle-orm";
import { drizzle } from "drizzle-orm/mysql2"; import { drizzle } from "drizzle-orm/mysql2";
import { import {
InsertUser, InsertUser,
@@ -367,7 +367,10 @@ export async function getInscriptionsBySequence(sequenceId: number) {
}) })
.from(inscriptions) .from(inscriptions)
.leftJoin(apprenants, eq(inscriptions.apprenantId, apprenants.id)) .leftJoin(apprenants, eq(inscriptions.apprenantId, apprenants.id))
.where(eq(inscriptions.sequenceId, sequenceId)); .where(and(
eq(inscriptions.sequenceId, sequenceId),
ne(inscriptions.statut, 'annulee')
));
return results; return results;
} }
@@ -382,7 +385,10 @@ export async function getInscriptionsByApprenant(apprenantId: number) {
}) })
.from(inscriptions) .from(inscriptions)
.leftJoin(sequences, eq(inscriptions.sequenceId, sequences.id)) .leftJoin(sequences, eq(inscriptions.sequenceId, sequences.id))
.where(eq(inscriptions.apprenantId, apprenantId)); .where(and(
eq(inscriptions.apprenantId, apprenantId),
ne(inscriptions.statut, 'annulee')
));
return results; return results;
} }

View File

@@ -925,3 +925,11 @@
- [x] Corriger le remplacement des variables (ajout d'alias pour compatibilité) - [x] Corriger le remplacement des variables (ajout d'alias pour compatibilité)
- [x] Corriger le code pour supporter les deux formats de variables ({{prenom}} et {{prenomApprenant}}) - [x] Corriger le code pour supporter les deux formats de variables ({{prenom}} et {{prenomApprenant}})
- [ ] Tester l'envoi d'un email de confirmation en production - [ ] Tester l'envoi d'un email de confirmation en production
## Bug Inscriptions - Inscriptions annulées toujours affichées
- [x] Analyser où les inscriptions annulées ne sont pas filtrées (affichage, emails, rappels)
- [x] Corriger getInscriptionsBySequence pour exclure les inscriptions annulées
- [x] Corriger getInscriptionsByApprenant pour exclure les inscriptions annulées
- [x] Vérifier que les rappels ne sont pas envoyés aux inscriptions annulées (déjà filtré)
- [ ] Tester l'affichage après annulation d'une inscription