Modif affichage poids evals (non nuls)

This commit is contained in:
Emmanuel Viennet 2024-01-25 20:54:12 +01:00
parent a4b25eb47b
commit 54be507e35
3 changed files with 17 additions and 8 deletions

View File

@ -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
]
)

View File

@ -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 (
"""<table class="eval_poids" title="poids vers les UE"><tr><td>"""
+ "</td><td>".join([f"{ue.acronyme}" for ue in ues])
+ "</td><td>".join([f"{up[0]}" for up in ue_poids])
+ "</td></tr>"
+ "<tr><td>"
+ "</td><td>".join([f"{evals_poids[ue.id][evaluation_id]}" for ue in ues])
+ "</td><td>".join([f"{up[1]}" for up in ue_poids])
+ "</td></tr></table>"
)

View File

@ -1,7 +1,7 @@
# -*- mode: python -*-
# -*- coding: utf-8 -*-
SCOVERSION = "9.6.84"
SCOVERSION = "9.6.85"
SCONAME = "ScoDoc"