diff --git a/EPAServeur/Services/DemandeFormationService.cs b/EPAServeur/Services/DemandeFormationService.cs
index 1da2421..33f345b 100644
--- a/EPAServeur/Services/DemandeFormationService.cs
+++ b/EPAServeur/Services/DemandeFormationService.cs
@@ -120,6 +120,7 @@ namespace EPAServeur.Services
.Include(demandeFormation => demandeFormation.ParticipationFormation)
.ThenInclude(participationFormation => participationFormation.Formation);
+ query = StatutEpFilter(query);
query = EtatsDemandeFilter(query, etatsDemande);
query = IdBUsFilter(query, idBUs);
query = DateFilter(query, dateDebut, dateFin);
@@ -159,6 +160,7 @@ namespace EPAServeur.Services
.Include(demandeFormation => demandeFormation.ParticipationFormation)
.ThenInclude(participationFormation => participationFormation.Formation);
+ query = StatutEpFilter(query);
query = EtatsDemandeFilter(query, etatsDemande);
query = IdBUsFilter(query, idBUs);
query = DateFilter(query, dateDebut, dateFin);
@@ -486,6 +488,19 @@ namespace EPAServeur.Services
return query.OrderByDescending(p => p.Collaborateur.Nom);
}
+ ///
+ /// Ajouter un filtre pour récupérer les demandes de formation en fonction du statut de l'EP.
+ ///
+ ///
+ ///
+ ///
+ private IQueryable StatutEpFilter(IQueryable query)
+ {
+ IEnumerable statutsEp = Enum.GetValues(typeof(StatutEp)).Cast().Where(statut => statut == StatutEp.Cree || EstEpEnCours(statut));
+
+ return query.Where(demandeFormation => statutsEp.Contains(demandeFormation.Ep.Statut));
+ }
+
///
/// Ajouter un filtre pour récupérer les demandes de formation en fonction de plusieurs états de demande.
///