From 14286b31ac311752d138ca98c656df4675bb1651 Mon Sep 17 00:00:00 2001 From: Iziram Date: Sun, 24 Sep 2023 09:18:13 +0200 Subject: [PATCH] Assiduites : fix justificatifs #748 --- app/api/justificatifs.py | 2 +- app/models/assiduites.py | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/api/justificatifs.py b/app/api/justificatifs.py index f753fc0e0..a85685f7e 100644 --- a/app/api/justificatifs.py +++ b/app/api/justificatifs.py @@ -457,7 +457,7 @@ def justif_edit(justif_id: int): "après": compute_assiduites_justified( justificatif_unique.etudid, [justificatif_unique], - False, + True, ), } } diff --git a/app/models/assiduites.py b/app/models/assiduites.py index 3fc6d8787..82b6d3dc3 100644 --- a/app/models/assiduites.py +++ b/app/models/assiduites.py @@ -362,9 +362,17 @@ def compute_assiduites_justified( for assi in assiduites: if assi.etat == EtatAssiduite.PRESENT: continue + + assi_justificatifs = Justificatif.query.filter( + Justificatif.etudid == assi.etudid, + Justificatif.date_debut <= assi.date_debut, + Justificatif.date_fin >= assi.date_fin, + Justificatif.etat == EtatJustificatif.VALIDE, + ).all() + if any( assi.date_debut >= j.date_debut and assi.date_fin <= j.date_fin - for j in justificatifs + for j in justificatifs + assi_justificatifs ): assi.est_just = True assiduites_justifiees.append(assi.assiduite_id)