Jury BUT: corrige enregistrement décisions d'annee BUT manuelles

This commit is contained in:
Emmanuel Viennet 2023-06-21 16:47:24 +02:00 committed by iziram
parent 41e065f6ab
commit 2af2ca6c43
3 changed files with 10 additions and 4 deletions

View File

@ -257,6 +257,8 @@ class DecisionsProposeesAnnee(DecisionsProposees):
self.annee_but = (formsemestre_last.semestre_id + 1) // 2
"le rang de l'année dans le BUT: 1, 2, 3"
assert self.annee_but in (1, 2, 3)
self.autorisations_recorded = False
"vrai si on a enregistré l'autorisation de passage"
self.rcues_annee = []
"""RCUEs de l'année
(peuvent concerner l'année scolaire antérieur pour les redoublants
@ -751,7 +753,7 @@ class DecisionsProposeesAnnee(DecisionsProposees):
dec_ue.record(code)
for dec_rcue, code in codes_rcues:
dec_rcue.record(code)
self.record(code_annee, mark_recorded=False)
self.record(code_annee) # XXX , mark_recorded=False)
self.record_autorisation_inscription(code_annee)
self.record_all()
self.recorded = True
@ -794,13 +796,15 @@ class DecisionsProposeesAnnee(DecisionsProposees):
etudid=self.etud.id,
msg=f"Validation année BUT{self.annee_but}: {code}",
)
if mark_recorded:
self.recorded = True
if mark_recorded:
self.recorded = True
self.invalidate_formsemestre_cache()
return True
def record_autorisation_inscription(self, code: str):
"""Autorisation d'inscription dans semestre suivant"""
if self.autorisations_recorded:
return
if self.inscription_etat != scu.INSCRIT:
# les dem et DEF ne continuent jamais
return
@ -815,6 +819,7 @@ class DecisionsProposeesAnnee(DecisionsProposees):
self.formsemestre.id,
next_semestre_id,
)
self.autorisations_recorded = True
def invalidate_formsemestre_cache(self):
"invalide le résultats des deux formsemestres"

View File

@ -352,6 +352,7 @@ class ApcValidationAnnee(db.Model):
"Affichage html"
return f"""Validation <b>année BUT{self.ordre}</b> émise par
{self.formsemestre.html_link_status() if self.formsemestre else "-"}
: <b>{self.code}</b>
le {self.date.strftime("%d/%m/%Y")} à {self.date.strftime("%Hh%M")}
"""

View File

@ -2497,7 +2497,7 @@ def formsemestre_validation_but(
scodoc_dept=g.scodoc_dept, formsemestre_id=deca.formsemestre_id,
etudid=deca.etud.id)}" class="stdlink"
title="efface décisions issues des jurys de cette année"
>effacer décisions</a>
>effacer décisions de ce jury</a>
<a style="margin-left: 16px;" class="stdlink"
href="{