diff --git a/app/but/jury_but.py b/app/but/jury_but.py index 42b65372..f994544b 100644 --- a/app/but/jury_but.py +++ b/app/but/jury_but.py @@ -356,9 +356,9 @@ class DecisionsProposeesAnnee(DecisionsProposees): dec_ue.compute_codes() # Reste à attribuer ADM, ADJ, PASD, PAS1NCI, RED, NAR - expl_rcues = ( - f"{self.nb_validables} niveau validable(s) sur {self.nb_competences}" - ) + plural = self.nb_validables > 1 + expl_rcues = f"""{self.nb_validables} niveau{"x" if plural else ""} validable{ + "s" if plural else ""} sur {self.nb_competences}""" if self.admis: self.codes = [sco_codes.ADM] + self.codes self.explanation = expl_rcues @@ -778,6 +778,11 @@ class DecisionsProposeesAnnee(DecisionsProposees): ordre=self.annee_but, ) for validation in validations: + Scolog.logdb( + "jury_but", + etudid=self.etud.id, + msg=f"Validation année BUT{self.annee_but}: effacée", + ) db.session.delete(validation) db.session.flush() self.invalidate_formsemestre_cache() @@ -933,7 +938,7 @@ class DecisionsProposeesRCUE(DecisionsProposees): Scolog.logdb( method="jury_but", etudid=self.etud.id, - msg=f"Validation RCUE {repr(self.rcue)}", + msg=f"Validation {self.rcue}: {code}", ) db.session.add(self.validation) if self.rcue.formsemestre_1 is not None: @@ -1088,6 +1093,11 @@ class DecisionsProposeesUE(DecisionsProposees): self.erase() if code is None: self.validation = None + Scolog.logdb( + method="jury_but", + etudid=self.etud.id, + msg=f"Validation UE {self.ue.id} {self.ue.acronyme}: effacée", + ) else: self.validation = ScolarFormSemestreValidation( etudid=self.etud.id, @@ -1099,7 +1109,7 @@ class DecisionsProposeesUE(DecisionsProposees): Scolog.logdb( method="jury_but", etudid=self.etud.id, - msg=f"Validation UE {self.ue.id}", + msg=f"Validation UE {self.ue.id} {self.ue.acronyme}({self.moy_ue}): {code}", ) db.session.add(self.validation) log(f"DecisionsProposeesUE: recording {self.validation}") @@ -1115,6 +1125,11 @@ class DecisionsProposeesUE(DecisionsProposees): ) for validation in validations: log(f"DecisionsProposeesUE: deleting {validation}") + Scolog.logdb( + method="jury_but", + etudid=self.etud.id, + msg=f"Validation UE {validation.ue.id} {validation.ue.acronyme}: effacée", + ) db.session.delete(validation) db.session.flush() diff --git a/app/but/jury_but_view.py b/app/but/jury_but_view.py index a3c0dc0a..9d3b9d2a 100644 --- a/app/but/jury_but_view.py +++ b/app/but/jury_but_view.py @@ -61,11 +61,12 @@ def show_etud(deca: DecisionsProposeesAnnee, read_only: bool = True) -> str: ({'non ' if deca.code_valide is None else ''}enregistrée) {erase_span} -
Ci-dessous la signification de chaque code est expliquée,
ainsi que la correspondance avec certains codes préconisés par
l'AMUE et l'ADIUT pour Apogée.
-
+
On distingue les codes ScoDoc (utilisés ci-dessus et dans les différentes
tables générées par ScoDoc) et leur transcription vers Apogée lors des exports
(transcription paramétrable par votre administrateur ScoDoc).