forked from ScoDoc/DocScoDoc
Bulletin BUT: n'affiche que les UE du parcours de l'étudiant.
This commit is contained in:
parent
ad5bdd03d1
commit
2b2fb80403
@ -274,6 +274,13 @@ class BulletinBUT:
|
|||||||
etat_inscription = etud.inscription_etat(formsemestre.id)
|
etat_inscription = etud.inscription_etat(formsemestre.id)
|
||||||
nb_inscrits = self.res.get_inscriptions_counts()[scu.INSCRIT]
|
nb_inscrits = self.res.get_inscriptions_counts()[scu.INSCRIT]
|
||||||
published = (not formsemestre.bul_hide_xml) or force_publishing
|
published = (not formsemestre.bul_hide_xml) or force_publishing
|
||||||
|
if formsemestre.formation.referentiel_competence is None:
|
||||||
|
etud_ues_ids = {
|
||||||
|
ue.id for ue in res.ues if res.modimpls_in_ue(ue.id, etud.id)
|
||||||
|
}
|
||||||
|
else:
|
||||||
|
etud_ues_ids = res.etud_ues_ids(etud.id)
|
||||||
|
|
||||||
d = {
|
d = {
|
||||||
"version": "0",
|
"version": "0",
|
||||||
"type": "BUT",
|
"type": "BUT",
|
||||||
@ -365,10 +372,7 @@ class BulletinBUT:
|
|||||||
)
|
)
|
||||||
for ue in res.ues
|
for ue in res.ues
|
||||||
# si l'UE comporte des modules auxquels on est inscrit:
|
# si l'UE comporte des modules auxquels on est inscrit:
|
||||||
if (
|
if ((ue.type == UE_SPORT) or ue.id in etud_ues_ids)
|
||||||
(ue.type == UE_SPORT)
|
|
||||||
or self.res.modimpls_in_ue(ue.id, etud.id)
|
|
||||||
)
|
|
||||||
},
|
},
|
||||||
"semestre": semestre_infos,
|
"semestre": semestre_infos,
|
||||||
},
|
},
|
||||||
|
@ -6,6 +6,7 @@
|
|||||||
|
|
||||||
"""Résultats semestres BUT
|
"""Résultats semestres BUT
|
||||||
"""
|
"""
|
||||||
|
from collections.abc import Generator
|
||||||
import time
|
import time
|
||||||
import numpy as np
|
import numpy as np
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
@ -216,9 +217,13 @@ class ResultatsSemestreBUT(NotesTableCompat):
|
|||||||
]
|
]
|
||||||
return ues_inscr_parcours_df
|
return ues_inscr_parcours_df
|
||||||
|
|
||||||
def etud_ues(self, etudid: int) -> list[int]:
|
def etud_ues_ids(self, etudid: int) -> list[int]:
|
||||||
"""Liste des id d'UE auxquelles l'étudiant est inscrit (sans bonus).
|
"""Liste des id d'UE auxquelles l'étudiant est inscrit (sans bonus).
|
||||||
(surchargée en BUT pour prendre en compte les parcours)
|
(surchargée en BUT pour prendre en compte les parcours)
|
||||||
"""
|
"""
|
||||||
s = self.ues_inscr_parcours_df.loc[etudid]
|
s = self.ues_inscr_parcours_df.loc[etudid]
|
||||||
return s.index[s.notna()]
|
return s.index[s.notna()]
|
||||||
|
|
||||||
|
def etud_ues(self, etudid: int) -> Generator[UniteEns]:
|
||||||
|
"""Liste des UE auxquelles l'étudiant est inscrit (sans bonus)."""
|
||||||
|
return (UniteEns.query.get(ue_id) for ue_id in self.etud_ues_ids(etudid))
|
||||||
|
@ -112,7 +112,7 @@ class ResultatsSemestre(ResultatsCache):
|
|||||||
"dict { etudid : indice dans les inscrits }"
|
"dict { etudid : indice dans les inscrits }"
|
||||||
return {e.id: idx for idx, e in enumerate(self.etuds)}
|
return {e.id: idx for idx, e in enumerate(self.etuds)}
|
||||||
|
|
||||||
def etud_ues(self, etudid: int) -> list[int]:
|
def etud_ues_ids(self, etudid: int) -> list[int]:
|
||||||
"""Liste des UE auxquelles l'etudiant est inscrit, sans bonus
|
"""Liste des UE auxquelles l'etudiant est inscrit, sans bonus
|
||||||
(surchargée en BUT pour prendre en compte les parcours)
|
(surchargée en BUT pour prendre en compte les parcours)
|
||||||
"""
|
"""
|
||||||
@ -630,7 +630,7 @@ class ResultatsSemestre(ResultatsCache):
|
|||||||
f"_{col_id}_target_attrs"
|
f"_{col_id}_target_attrs"
|
||||||
] = f""" title="{modimpl.module.titre} ({nom_resp})" """
|
] = f""" title="{modimpl.module.titre} ({nom_resp})" """
|
||||||
modimpl_ids.add(modimpl.id)
|
modimpl_ids.add(modimpl.id)
|
||||||
nb_ues_etud_parcours = len(self.etud_ues(etudid))
|
nb_ues_etud_parcours = len(self.etud_ues_ids(etudid))
|
||||||
ue_valid_txt = (
|
ue_valid_txt = (
|
||||||
ue_valid_txt_html
|
ue_valid_txt_html
|
||||||
) = f"{nb_ues_validables}/{nb_ues_etud_parcours}"
|
) = f"{nb_ues_validables}/{nb_ues_etud_parcours}"
|
||||||
|
@ -2,10 +2,12 @@
|
|||||||
<h2>{% if not read_only %}Édition des c{% else %}C{%endif%}oefficients des modules vers les UEs</h2>
|
<h2>{% if not read_only %}Édition des c{% else %}C{%endif%}oefficients des modules vers les UEs</h2>
|
||||||
<div class="help">
|
<div class="help">
|
||||||
{% if not read_only %}
|
{% if not read_only %}
|
||||||
Double-cliquer pour changer une valeur.
|
<p>Double-cliquer pour changer une valeur.
|
||||||
Les valeurs sont automatiquement enregistrées au fur et à mesure.
|
Les valeurs sont automatiquement enregistrées au fur et à mesure.
|
||||||
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<p>Chaque ligne représente une ressource ou SAÉ, et chaque colonne une Unité d'Enseignement (UE).
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<form class="semestre_selector">Semestre:
|
<form class="semestre_selector">Semestre:
|
||||||
<select onchange="this.form.submit()"" name="semestre_idx" id="semestre_idx">
|
<select onchange="this.form.submit()"" name="semestre_idx" id="semestre_idx">
|
||||||
|
Loading…
Reference in New Issue
Block a user