forked from ScoDoc/ScoDoc
Update opolka/ScoDoc from ScoDoc/ScoDoc #2
@ -1043,7 +1043,6 @@ def signal_evaluation_abs(etudid: int = None, evaluation_id: int = None):
|
||||
delta: datetime.timedelta = evaluation.date_fin - evaluation.date_debut
|
||||
if delta > datetime.timedelta(days=1):
|
||||
# rediriger vers page saisie
|
||||
flash("Redirection pour saisie abs")
|
||||
return redirect(
|
||||
url_for(
|
||||
"assiduites.signal_assiduites_etud",
|
||||
@ -1059,13 +1058,31 @@ def signal_evaluation_abs(etudid: int = None, evaluation_id: int = None):
|
||||
|
||||
# créer l'assiduité
|
||||
|
||||
assiduite_unique: Assiduite = Assiduite.create_assiduite(
|
||||
etud=etud,
|
||||
date_debut=scu.localize_datetime(evaluation.date_debut),
|
||||
date_fin=scu.localize_datetime(evaluation.date_fin),
|
||||
etat=scu.EtatAssiduite.ABSENT,
|
||||
moduleimpl=evaluation.moduleimpl,
|
||||
)
|
||||
try:
|
||||
assiduite_unique: Assiduite = Assiduite.create_assiduite(
|
||||
etud=etud,
|
||||
date_debut=scu.localize_datetime(evaluation.date_debut),
|
||||
date_fin=scu.localize_datetime(evaluation.date_fin),
|
||||
etat=scu.EtatAssiduite.ABSENT,
|
||||
moduleimpl=evaluation.moduleimpl,
|
||||
)
|
||||
except ScoValueError as see:
|
||||
msg: str = see.args[0]
|
||||
|
||||
if "Duplication" in msg:
|
||||
msg = "Une autre assiduité concerne déjà cette période. En cliquant sur continuer vous serez redirigé vers la page de saisie des assiduités de l'étudiant."
|
||||
dest: str = url_for(
|
||||
"assiduites.signal_assiduites_etud",
|
||||
etudid=etudid,
|
||||
evaluation_id=evaluation.id,
|
||||
date_deb=evaluation.date_debut.strftime("%Y-%m-%dT%H:%M:%S"),
|
||||
date_fin=evaluation.date_fin.strftime("%Y-%m-%dT%H:%M:%S"),
|
||||
moduleimpl_id=evaluation.moduleimpl.id,
|
||||
saisie_eval="true",
|
||||
scodoc_dept=g.scodoc_dept,
|
||||
duplication="oui",
|
||||
)
|
||||
raise ScoValueError(msg, dest)
|
||||
|
||||
db.session.add(assiduite_unique)
|
||||
db.session.commit()
|
||||
|
Loading…
Reference in New Issue
Block a user