diff --git a/app/but/jury_but.py b/app/but/jury_but.py index bf0e75eb1..5e69b98cf 100644 --- a/app/but/jury_but.py +++ b/app/but/jury_but.py @@ -581,14 +581,14 @@ class DecisionsProposeesAnnee(DecisionsProposees): ) ues_impair_sans_rcue.discard(ue_impair.id) break - if rcue is None and not self.a_cheval: - raise NoRCUEError(deca=self, ue=ue_pair) + # if rcue is None and not self.a_cheval: + # raise NoRCUEError(deca=self, ue=ue_pair) if rcue is not None: rcues_annee.append(rcue) # Si jury annuel (pas à cheval), on doit avoir tous les RCUEs: - if len(ues_impair_sans_rcue) > 0 and not self.a_cheval: - ue = UniteEns.query.get(ues_impair_sans_rcue.pop()) - raise NoRCUEError(deca=self, ue=ue) + # if len(ues_impair_sans_rcue) > 0 and not self.a_cheval: + # ue = UniteEns.query.get(ues_impair_sans_rcue.pop()) + # raise NoRCUEError(deca=self, ue=ue) return rcues_annee def compute_decisions_niveaux(self) -> dict[int, "DecisionsProposeesRCUE"]: @@ -911,7 +911,7 @@ def list_ue_parcour_etud( formsemestre: FormSemestre, etud: Identite, res: ResultatsSemestreBUT ) -> tuple[ApcParcours, list[UniteEns]]: """Parcour dans lequel l'étudiant est inscrit, - et liste des UEs à valider pour ce semestre + et liste des UEs à valider pour ce semestre (sans les UE "dispensées") """ if res.etuds_parcour_id[etud.id] is None: parcour = None @@ -926,6 +926,7 @@ def list_ue_parcour_etud( .order_by(UniteEns.numero) .all() ) + ues = [ue for ue in ues if (etud.id, ue.id) not in res.dispense_ues] return parcour, ues diff --git a/app/scodoc/sco_moduleimpl_inscriptions.py b/app/scodoc/sco_moduleimpl_inscriptions.py index 27d7ff3e6..115337b2f 100644 --- a/app/scodoc/sco_moduleimpl_inscriptions.py +++ b/app/scodoc/sco_moduleimpl_inscriptions.py @@ -554,8 +554,8 @@ def _list_but_ue_inscriptions(res: NotesTableCompat, read_only: bool = True) -> """