Fix: assure que le code enregistré est toujours dans le menu (utile pour les ADM sur UE < 10).

This commit is contained in:
Emmanuel Viennet 2022-07-18 22:17:27 +02:00
parent 1967273220
commit 157423edaf

View File

@ -160,6 +160,9 @@ class DecisionsProposees:
"Validation enregistrée" "Validation enregistrée"
self.code_valide: str = code_valide self.code_valide: str = code_valide
"Code décision actuel enregistré" "Code décision actuel enregistré"
# S'assure que le code enregistré est toujours présent dans le menu
if self.code_valide and self.code_valide not in self.codes:
self.codes.append(self.code_valide)
self.explanation: str = explanation self.explanation: str = explanation
"Explication à afficher à côté de la décision" "Explication à afficher à côté de la décision"
self.recorded = False self.recorded = False
@ -887,11 +890,21 @@ class DecisionsProposeesUE(DecisionsProposees):
ue: UniteEns, ue: UniteEns,
inscription_etat: str = scu.INSCRIT, inscription_etat: str = scu.INSCRIT,
): ):
super().__init__(etud=etud) # Une UE peut être validée plusieurs fois en cas de redoublement (qu'elle soit capitalisée ou non)
# mais ici on a restreint au formsemestre donc une seule (prend la première)
self.validation = ScolarFormSemestreValidation.query.filter_by(
etudid=etud.id, formsemestre_id=formsemestre.id, ue_id=ue.id
).first()
super().__init__(
etud=etud,
code_valide=self.validation.code if self.validation is not None else None,
)
self.formsemestre = formsemestre self.formsemestre = formsemestre
self.ue: UniteEns = ue self.ue: UniteEns = ue
self.rcue: RegroupementCoherentUE = None self.rcue: RegroupementCoherentUE = None
"Le rcu auquel est rattaché cette UE, ou None" "Le rcue auquel est rattaché cette UE, ou None"
self.inscription_etat = inscription_etat self.inscription_etat = inscription_etat
"inscription: I, DEM, DEF" "inscription: I, DEM, DEF"
if ue.type == sco_codes.UE_SPORT: if ue.type == sco_codes.UE_SPORT:
@ -906,13 +919,6 @@ class DecisionsProposeesUE(DecisionsProposees):
] ]
self.moy_ue = "-" self.moy_ue = "-"
return return
# Une UE peut être validée plusieurs fois en cas de redoublement (qu'elle soit capitalisée ou non)
# mais ici on a restreint au formsemestre donc une seule (prend la première)
self.validation = ScolarFormSemestreValidation.query.filter_by(
etudid=self.etud.id, formsemestre_id=formsemestre.id, ue_id=ue.id
).first()
if self.validation is not None:
self.code_valide = self.validation.code
# Moyenne de l'UE ? # Moyenne de l'UE ?
res: ResultatsSemestreBUT = res_sem.load_formsemestre_results(formsemestre) res: ResultatsSemestreBUT = res_sem.load_formsemestre_results(formsemestre)