diff --git a/app/comp/bonus_spo.py b/app/comp/bonus_spo.py index 30754bcfc..be2a87306 100644 --- a/app/comp/bonus_spo.py +++ b/app/comp/bonus_spo.py @@ -53,7 +53,7 @@ class BonusSport: etud_moy_gen et etud_moy_ue ne sont PAS modifiés (mais utilisés par certains bonus non additifs). """ - # En classique, active un bonus sur les UEs: (dans ce cas bonus_moy_gen reste None) + # En classique, active un bonus sur les UEs: (dans ce cas bonus_moy_gen est ajusté pour le prendre en compte) classic_use_bonus_ues = False # Attributs virtuels: diff --git a/app/comp/res_classic.py b/app/comp/res_classic.py index 28f3952b9..1dfcfb4da 100644 --- a/app/comp/res_classic.py +++ b/app/comp/res_classic.py @@ -116,10 +116,11 @@ class ResultatsSemestreClassic(NotesTableCompat): if bonus_mg is None and self.bonus_ues is not None: # pas de bonus explicite sur la moyenne générale # on l'ajuste pour refléter les modifs d'UE, à l'aide des coefs d'UE. - self.etud_moy_gen += (self.etud_coef_ue_df * self.bonus_ues).sum( + bonus_mg = (self.etud_coef_ue_df * self.bonus_ues).sum( axis=1 ) / self.etud_coef_ue_df.sum(axis=1) - elif bonus_mg: + self.etud_moy_gen += bonus_mg + elif bonus_mg is not None: # Applique le bonus moyenne générale renvoyé self.etud_moy_gen += bonus_mg diff --git a/app/scodoc/sco_bulletins.py b/app/scodoc/sco_bulletins.py index 93a926b64..de7f28c9d 100644 --- a/app/scodoc/sco_bulletins.py +++ b/app/scodoc/sco_bulletins.py @@ -315,6 +315,8 @@ def formsemestre_bulletinetud_dict(formsemestre_id, etudid, version="long"): u["cur_moy_ue_txt"] = "bonus appliqué sur les UEs" else: u["cur_moy_ue_txt"] = "bonus de %.3g points" % x + if nt.bonus_ues is not None: + u["cur_moy_ue_txt"] += " (+ues)" u["moy_ue_txt"] = scu.fmt_note(ue_status["moy"]) if ue_status["coef_ue"] != None: u["coef_ue_txt"] = scu.fmt_coef(ue_status["coef_ue"])