Fix: cas avec étudiants sans données admission (plante statistiques).

This commit is contained in:
Emmanuel Viennet 2023-10-10 22:42:02 +02:00
parent 7107af6181
commit 579d71937d
4 changed files with 12 additions and 8 deletions

View File

@ -860,6 +860,8 @@ def fill_etuds_info(etuds: list[dict], add_admission=True):
etud.update(etud_inscriptions_infos(etudid, etud["ne"])) etud.update(etud_inscriptions_infos(etudid, etud["ne"]))
# nettoyage champs souvent vides # nettoyage champs souvent vides
etud["codepostallycee"] = etud.get("codepostallycee", "") or ""
etud["nomlycee"] = etud.get("nomlycee", "") or ""
if etud.get("nomlycee"): if etud.get("nomlycee"):
etud["ilycee"] = "Lycée " + format_lycee(etud["nomlycee"]) etud["ilycee"] = "Lycée " + format_lycee(etud["nomlycee"])
if etud["villelycee"]: if etud["villelycee"]:

View File

@ -114,7 +114,7 @@ def _table_etuds_lycees(etuds, group_lycees, title, preferences, no_links=False)
L = [etuds_by_lycee[codelycee][0] for codelycee in etuds_by_lycee] L = [etuds_by_lycee[codelycee][0] for codelycee in etuds_by_lycee]
for l in L: for l in L:
l["nbetuds"] = len(etuds_by_lycee[l["codelycee"]]) l["nbetuds"] = len(etuds_by_lycee[l["codelycee"]])
# L.sort( key=operator.itemgetter('codepostallycee', 'nomlycee') ) argh, only python 2.5+ !!!
L.sort(key=itemgetter("codepostallycee", "nomlycee")) L.sort(key=itemgetter("codepostallycee", "nomlycee"))
columns_ids = ( columns_ids = (
"nbetuds", "nbetuds",

View File

@ -468,7 +468,7 @@ def table_suivi_cohorte(
for etudid in etudids: for etudid in etudids:
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0] etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
etud["annee_admission"] = etud["annee"] etud["annee_admission"] = etud["annee"]
bacspe = etud["bac"] + " / " + etud["specialite"] bacspe = (etud["bac"] or "?") + " / " + (etud["specialite"] or "")
# sélection sur bac: # sélection sur bac:
if ( if (
(not bac or (bac == etud["bac"])) (not bac or (bac == etud["bac"]))
@ -488,10 +488,12 @@ def table_suivi_cohorte(
sem["date_debut"] sem["date_debut"]
): ):
S[s["formsemestre_id"]] = s S[s["formsemestre_id"]] = s
bacs.add(etud["bac"]) if etud.get("bac", False):
bacspecialites.add(bacspe) bacs.add(etud["bac"])
annee_bacs.add(str(etud["annee_bac"])) bacspecialites.add(bacspe)
annee_admissions.add(str(etud["annee_admission"])) annee_bacs.add(str(etud["annee_bac"]))
if etud["annee_admission"] is not None:
annee_admissions.add(str(etud["annee_admission"]))
civilites.add(etud["civilite"]) civilites.add(etud["civilite"])
if etud["statut"]: # ne montre pas les statuts non renseignés if etud["statut"]: # ne montre pas les statuts non renseignés
statuts.add(etud["statut"]) statuts.add(etud["statut"])
@ -1117,7 +1119,7 @@ def tsp_etud_list(
for etudid in etudids: for etudid in etudids:
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0] etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
etud["annee_admission"] = etud["annee"] # plus explicite etud["annee_admission"] = etud["annee"] # plus explicite
bacspe = etud["bac"] + " / " + etud["specialite"] bacspe = (etud["bac"] or "?") + " / " + (etud["specialite"] or "")
# sélection sur bac, primo, ...: # sélection sur bac, primo, ...:
if ( if (
(not bac or (bac == etud["bac"])) (not bac or (bac == etud["bac"]))

View File

@ -460,7 +460,7 @@ class TableRecap(tb.Table):
) )
def add_admissions(self): def add_admissions(self):
"""Ajoute les colonnes "admission" pour tous les étduiants de la table """Ajoute les colonnes "admission" pour tous les étudiants de la table
Les colonnes ont la classe css "admission" Les colonnes ont la classe css "admission"
""" """
fields = { fields = {