Update opolka/ScoDoc from ScoDoc/ScoDoc #2

Merged
opolka merged 1272 commits from ScoDoc/ScoDoc:master into master 2024-05-27 09:11:04 +02:00
3 changed files with 9 additions and 14 deletions
Showing only changes of commit 943604996b - Show all commits

View File

@ -656,27 +656,16 @@ def get_assiduites_count_in_interval(
assiduites: Query = Assiduite.query.filter_by(etudid=etudid) assiduites: Query = Assiduite.query.filter_by(etudid=etudid)
assiduites = assiduites.filter(Assiduite.etat == scu.EtatAssiduite.ABSENT) assiduites = assiduites.filter(Assiduite.etat == scu.EtatAssiduite.ABSENT)
justificatifs: Justificatif = Justificatif.query.filter_by(etudid=etudid)
assiduites = filter_by_date(assiduites, Assiduite, date_debut, date_fin) assiduites = filter_by_date(assiduites, Assiduite, date_debut, date_fin)
if moduleimpl_id is not None: if moduleimpl_id is not None:
assiduites = assiduites.filter_by(moduleimpl_id=moduleimpl_id) assiduites = assiduites.filter_by(moduleimpl_id=moduleimpl_id)
justificatifs = filter_by_date(
justificatifs, Justificatif, date_debut, date_fin
)
calculator: CountCalculator = CountCalculator() calculator: CountCalculator = CountCalculator()
calculator.compute_assiduites(assiduites) calculator.compute_assiduites(assiduites)
nb_abs: dict = calculator.to_dict()[metrique] calcul : dict = calculator.to_dict(only_total=False)
nb_abs: dict = calcul["absent"][metrique]
abs_just: list[Assiduite] = get_all_justified( nb_abs_just: dict = calcul["absent_just"][metrique]
etudid, date_debut, date_fin, moduleimpl_id
)
calculator.reset()
calculator.compute_assiduites(abs_just)
nb_abs_just: dict = calculator.to_dict()[metrique]
r = (nb_abs, nb_abs_just) r = (nb_abs, nb_abs_just)
if moduleimpl_id is None: if moduleimpl_id is None:

View File

@ -473,6 +473,10 @@ def _record_assiduite_etud(
) )
db.session.add(ass) db.session.add(ass)
db.session.commit() db.session.commit()
# Invalider cache
scass.simple_invalidate_cache(ass.to_dict(), etud.id)
return True return True
except ScoValueError as exc: except ScoValueError as exc:
form.set_error(f"Erreur: {exc.args[0]}") form.set_error(f"Erreur: {exc.args[0]}")

View File

@ -405,6 +405,8 @@ def _get_justi(
def essais_cache(etudid, sems: tuple[FormSemestre], moduleimpls: list[ModuleImpl]): def essais_cache(etudid, sems: tuple[FormSemestre], moduleimpls: list[ModuleImpl]):
"""Vérification des fonctionnalités du cache""" """Vérification des fonctionnalités du cache"""
# TODO faire un test séparé du test_general
# voir test_calcul_assiduites pour faire
date_deb: str = "2022-09-01T07:00" date_deb: str = "2022-09-01T07:00"
date_fin: str = "2023-01-31T19:00" date_fin: str = "2023-01-31T19:00"