Fix: poids ou ECTS absents -> exc sur certains bulletins

This commit is contained in:
Emmanuel Viennet 2022-03-14 08:05:31 +01:00
parent c2ff10d2ac
commit 8af09ece28

View File

@ -7,6 +7,7 @@
"""Génération bulletin BUT
"""
import collections
import datetime
from flask import url_for, g
@ -70,8 +71,8 @@ class BulletinBUT:
"numero": ue.numero,
"type": ue.type,
"ECTS": {
"acquis": 0, # XXX TODO voir jury #sco92
"total": ue.ects,
"acquis": 0.0, # XXX TODO voir jury #sco92
"total": ue.ects or 0.0, # float même si non renseigné
},
"color": ue.color,
"competence": None, # XXX TODO lien avec référentiel
@ -171,10 +172,13 @@ class BulletinBUT:
# eval_notes est une pd.Series avec toutes les notes des étudiants inscrits
eval_notes = self.res.modimpls_results[e.moduleimpl_id].evals_notes[e.id]
notes_ok = eval_notes.where(eval_notes > scu.NOTES_ABSENCE).dropna()
poids = {
ue.acronyme: self.res.modimpls_evals_poids[e.moduleimpl_id][ue.id][e.id]
for ue in self.res.ues
}
modimpls_evals_poids = self.res.modimpls_evals_poids[e.moduleimpl_id]
try:
poids = {
ue.acronyme: modimpls_evals_poids[ue.id][e.id] for ue in self.res.ues
}
except KeyError:
poids = collections.defaultdict(lambda: 0.0)
d = {
"id": e.id,
"description": e.description,