From 54be507e3531c7c45a525e43cd82e8e631d0a5db Mon Sep 17 00:00:00 2001 From: Emmanuel Viennet Date: Thu, 25 Jan 2024 20:54:12 +0100 Subject: [PATCH] Modif affichage poids evals (non nuls) --- app/models/evaluations.py | 6 +++--- app/scodoc/sco_liste_notes.py | 17 +++++++++++++---- sco_version.py | 2 +- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/app/models/evaluations.py b/app/models/evaluations.py index b5ff3a67..e2c01695 100644 --- a/app/models/evaluations.py +++ b/app/models/evaluations.py @@ -428,8 +428,8 @@ class Evaluation(db.Model): def get_ue_poids_str(self) -> str: """string describing poids, for excel cells and pdfs - Note: si les poids ne sont pas initialisés (poids par défaut), - ils ne sont pas affichés. + Note: les poids nuls ou non initialisés (poids par défaut), + ne sont pas affichés. """ # restreint aux UE du semestre dans lequel est cette évaluation # au cas où le module ait changé de semestre et qu'il reste des poids @@ -440,7 +440,7 @@ class Evaluation(db.Model): for p in sorted( self.ue_poids, key=lambda p: (p.ue.numero or 0, p.ue.acronyme) ) - if evaluation_semestre_idx == p.ue.semestre_idx + if evaluation_semestre_idx == p.ue.semestre_idx and (p.poids or 0) > 0 ] ) diff --git a/app/scodoc/sco_liste_notes.py b/app/scodoc/sco_liste_notes.py index 050ab52f..62ed203f 100644 --- a/app/scodoc/sco_liste_notes.py +++ b/app/scodoc/sco_liste_notes.py @@ -29,6 +29,7 @@ """ from collections import defaultdict import numpy as np +import pandas as pd import flask from flask import url_for, g, request @@ -684,7 +685,7 @@ def _make_table_notes( def _add_eval_columns( evaluation: Evaluation, eval_state, - evals_poids, + evals_poids: pd.DataFrame | None, ues, rows, titles, @@ -834,14 +835,22 @@ def _add_eval_columns( return notes, nb_abs, nb_att # pour histogramme -def _mini_table_eval_ue_poids(evaluation_id, evals_poids, ues): +def _mini_table_eval_ue_poids( + evaluation_id: int, evals_poids: pd.DataFrame, ues +) -> str: "contenu de la cellule: poids" + ue_poids = [ + (ue.acronyme, evals_poids[ue.id][evaluation_id]) + for ue in ues + if (evals_poids[ue.id][evaluation_id] or 0) > 0 + ] + return ( """" + "
""" - + "".join([f"{ue.acronyme}" for ue in ues]) + + "".join([f"{up[0]}" for up in ue_poids]) + "
" - + "".join([f"{evals_poids[ue.id][evaluation_id]}" for ue in ues]) + + "".join([f"{up[1]}" for up in ue_poids]) + "
" ) diff --git a/sco_version.py b/sco_version.py index 26ebd6f7..1df983fd 100644 --- a/sco_version.py +++ b/sco_version.py @@ -1,7 +1,7 @@ # -*- mode: python -*- # -*- coding: utf-8 -*- -SCOVERSION = "9.6.84" +SCOVERSION = "9.6.85" SCONAME = "ScoDoc"