N'affiche pas les niveaux inexistants sur le résumé parcours

This commit is contained in:
Emmanuel Viennet 2023-06-22 21:15:23 +02:00
parent 438caf1052
commit d57b6638ea
3 changed files with 13 additions and 2 deletions

View File

@ -71,6 +71,7 @@ class SituationEtudCursusBUT(sco_cursus_dut.SituationEtudCursusClassic):
class EtudCursusBUT:
"""L'état de l'étudiant dans son cursus BUT
Liste des niveaux validés/à valider
(utilisé pour le résumé sur la fiche étudiant)
"""
def __init__(self, etud: Identite, formation: Formation):
@ -190,6 +191,11 @@ class EtudCursusBUT:
)
return d
def competence_annee_has_niveau(self, competence_id: int, annee: str) -> bool:
"vrai si la compétence à un niveau dans cette annee ('BUT1') pour le parcour de cet etud"
# slow, utile pour affichage fiche
return annee in [n.annee for n in self.competences[competence_id].niveaux]
def load_validation_by_niveau(self) -> dict[int, list[ApcValidationRCUE]]:
"""Cherche les validations de jury enregistrées pour chaque niveau
Résultat: { niveau_id : [ ApcValidationRCUE ] }

View File

@ -40,6 +40,10 @@ div.code_rcue {
position: relative;
}
div.no_niveau {
background-color: rgb(245, 237, 200);
}
div.code_jury {
padding-right: 4px;
padding-left: 4px;

View File

@ -9,7 +9,8 @@
<div class="cb_titre_competence">{{ cursus.competences[competence_id].titre }}</div>
{% for annee in ('BUT1', 'BUT2', 'BUT3') %}
{% set validation = cursus.validation_par_competence_et_annee.get(competence_id, {}).get(annee) %}
<div>
{% set has_niveau = cursus.competence_annee_has_niveau(competence_id, annee) %}
<div class="{{ '' if has_niveau else 'no_niveau' }}">
{% if validation %}
<div class="code_rcue with_scoplement">
<div class="code_jury">{{validation.code}}</div>
@ -23,7 +24,7 @@
</div>
{% else %}
<div class="code_rcue">
<div class="code_jury">-</div>
<div class="code_jury">{{'-' if has_niveau else ''}}</div>
</div>
{%endif%}
</div>