Améliore tableau indicateurs BUT (bacs S1)
This commit is contained in:
parent
810e1f6cff
commit
47682e54d2
@ -904,7 +904,7 @@ class DecisionsProposeesUE(DecisionsProposees):
|
|||||||
etud=etud,
|
etud=etud,
|
||||||
code_valide=self.validation.code if self.validation is not None else None,
|
code_valide=self.validation.code if self.validation is not None else None,
|
||||||
)
|
)
|
||||||
log(f"built {self}")
|
# log(f"built {self}")
|
||||||
self.formsemestre = formsemestre
|
self.formsemestre = formsemestre
|
||||||
self.ue: UniteEns = ue
|
self.ue: UniteEns = ue
|
||||||
self.rcue: RegroupementCoherentUE = None
|
self.rcue: RegroupementCoherentUE = None
|
||||||
|
@ -84,6 +84,10 @@ def formsemestre_but_indicateurs(formsemestre_id: int, format="html"):
|
|||||||
row["titre_indicateur"] = titre_indicateur
|
row["titre_indicateur"] = titre_indicateur
|
||||||
rows.append(row)
|
rows.append(row)
|
||||||
|
|
||||||
|
# ensure Total is the rightmost column
|
||||||
|
del bacs[bacs.index("Total")]
|
||||||
|
bacs.append("Total")
|
||||||
|
|
||||||
tab = GenTable(
|
tab = GenTable(
|
||||||
titles={bac: bac for bac in bacs},
|
titles={bac: bac for bac in bacs},
|
||||||
columns_ids=["titre_indicateur"] + bacs,
|
columns_ids=["titre_indicateur"] + bacs,
|
||||||
@ -172,15 +176,17 @@ def but_indicateurs_by_bac(formsemestre: FormSemestre) -> dict[str:dict]:
|
|||||||
if len(formsemestre_id_precedents) == 1
|
if len(formsemestre_id_precedents) == 1
|
||||||
else formsemestre_impair.session_id()
|
else formsemestre_impair.session_id()
|
||||||
)
|
)
|
||||||
indicateurs_by_bac["Total"].update(
|
|
||||||
_indicateurs_enquete_but_inscrits(formsemestre_impair.inscriptions, suffix)
|
|
||||||
)
|
|
||||||
for bac, inscriptions in _formsemestre_inscriptions_by_bac(
|
for bac, inscriptions in _formsemestre_inscriptions_by_bac(
|
||||||
formsemestre_impair
|
formsemestre_impair
|
||||||
).items():
|
).items():
|
||||||
|
if bac not in indicateurs_by_bac:
|
||||||
|
indicateurs_by_bac[bac] = defaultdict(lambda: 0)
|
||||||
indicateurs_by_bac[bac].update(
|
indicateurs_by_bac[bac].update(
|
||||||
_indicateurs_enquete_but_inscrits(inscriptions, suffix)
|
_indicateurs_enquete_but_inscrits(inscriptions, suffix)
|
||||||
)
|
)
|
||||||
|
indicateurs_by_bac["Total"].update(
|
||||||
|
_indicateurs_enquete_but_inscrits(formsemestre_impair.inscriptions, suffix)
|
||||||
|
)
|
||||||
return indicateurs_by_bac
|
return indicateurs_by_bac
|
||||||
|
|
||||||
|
|
||||||
@ -201,12 +207,17 @@ def _indicateurs_enquete_but_inscrits(
|
|||||||
Suffixe les clés avec _suffix"""
|
Suffixe les clés avec _suffix"""
|
||||||
if suffix:
|
if suffix:
|
||||||
suffix = "_" + suffix
|
suffix = "_" + suffix
|
||||||
return {
|
return defaultdict(
|
||||||
"nb_inscr" + suffix: len(inscriptions),
|
lambda: "?",
|
||||||
"nb_actifs" + suffix: len([i for i in inscriptions if i.etat == scu.INSCRIT]),
|
{
|
||||||
"nb_def" + suffix: len([i for i in inscriptions if i.etat == scu.DEF]),
|
"nb_inscr" + suffix: len(inscriptions),
|
||||||
"nb_dem" + suffix: len([i for i in inscriptions if i.etat == scu.DEMISSION]),
|
"nb_actifs"
|
||||||
}
|
+ suffix: len([i for i in inscriptions if i.etat == scu.INSCRIT]),
|
||||||
|
"nb_def" + suffix: len([i for i in inscriptions if i.etat == scu.DEF]),
|
||||||
|
"nb_dem"
|
||||||
|
+ suffix: len([i for i in inscriptions if i.etat == scu.DEMISSION]),
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
def _indicateurs_enquete_but(
|
def _indicateurs_enquete_but(
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# -*- mode: python -*-
|
# -*- mode: python -*-
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
SCOVERSION = "9.3.45"
|
SCOVERSION = "9.3.46"
|
||||||
|
|
||||||
SCONAME = "ScoDoc"
|
SCONAME = "ScoDoc"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user