forked from ScoDoc/ScoDoc
Fix: bug assiduites stats
This commit is contained in:
parent
f842fa0b4f
commit
dae04658b7
@ -170,7 +170,7 @@ class CountCalculator:
|
|||||||
"""Récupère une clé de dictionnaire en fonction de l'état de l'assiduité
|
"""Récupère une clé de dictionnaire en fonction de l'état de l'assiduité
|
||||||
et si elle est justifié
|
et si elle est justifié
|
||||||
"""
|
"""
|
||||||
keys: dict[EtatAssiduite, str] = {
|
keys: dict[scu.EtatAssiduite, str] = {
|
||||||
scu.EtatAssiduite.ABSENT: "absent",
|
scu.EtatAssiduite.ABSENT: "absent",
|
||||||
scu.EtatAssiduite.RETARD: "retard",
|
scu.EtatAssiduite.RETARD: "retard",
|
||||||
scu.EtatAssiduite.PRESENT: "present",
|
scu.EtatAssiduite.PRESENT: "present",
|
||||||
@ -349,6 +349,11 @@ def get_assiduites_stats(
|
|||||||
assiduites: Query, metric: str = "all", filtered: dict[str, object] = None
|
assiduites: Query, metric: str = "all", filtered: dict[str, object] = None
|
||||||
) -> dict[str, int | float]:
|
) -> dict[str, int | float]:
|
||||||
"""Compte les assiduités en fonction des filtres"""
|
"""Compte les assiduités en fonction des filtres"""
|
||||||
|
# XXX TODO-assiduite : documenter !!!
|
||||||
|
# Que sont les filtres ? Quelles valeurs ?
|
||||||
|
# documenter permet de faire moins de bug: qualité du code non satisfaisante.
|
||||||
|
#
|
||||||
|
# + on se perd entre les clés en majuscules et en minuscules. Pourquoi
|
||||||
|
|
||||||
if filtered is not None:
|
if filtered is not None:
|
||||||
deb, fin = None, None
|
deb, fin = None, None
|
||||||
@ -399,6 +404,9 @@ def get_assiduites_stats(
|
|||||||
# Préparation du dictionnaire de retour avec les valeurs du calcul
|
# Préparation du dictionnaire de retour avec les valeurs du calcul
|
||||||
count: dict = calculator.to_dict(only_total=False)
|
count: dict = calculator.to_dict(only_total=False)
|
||||||
for etat in etats:
|
for etat in etats:
|
||||||
|
# TODO-assiduite: on se perd entre les lower et upper.
|
||||||
|
# Pourquoi EtatAssiduite est en majuscules si tout le reste est en minuscules ?
|
||||||
|
etat = etat.lower()
|
||||||
if etat != "present":
|
if etat != "present":
|
||||||
output[etat] = count[etat]
|
output[etat] = count[etat]
|
||||||
output[etat]["justifie"] = count[etat + "_just"]
|
output[etat]["justifie"] = count[etat + "_just"]
|
||||||
|
@ -162,7 +162,7 @@ class RowAssi(tb.Row):
|
|||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
# Pour chaque état on mets à jour les valeurs de retour
|
# Pour chaque état on met à jour les valeurs de retour
|
||||||
for etat, valeur in retour.items():
|
for etat, valeur in retour.items():
|
||||||
valeur[1] = compte_etat[etat][assi_metric]
|
valeur[1] = compte_etat[etat][assi_metric]
|
||||||
if etat != "present":
|
if etat != "present":
|
||||||
|
Loading…
Reference in New Issue
Block a user