BUT: dispenses d'UE / jury avec RCUE incomplet

This commit is contained in:
Emmanuel Viennet 2023-01-13 08:17:59 -03:00
parent 11f78d1595
commit 460ce79d92
2 changed files with 9 additions and 8 deletions

View File

@ -581,14 +581,14 @@ class DecisionsProposeesAnnee(DecisionsProposees):
)
ues_impair_sans_rcue.discard(ue_impair.id)
break
if rcue is None and not self.a_cheval:
raise NoRCUEError(deca=self, ue=ue_pair)
# if rcue is None and not self.a_cheval:
# raise NoRCUEError(deca=self, ue=ue_pair)
if rcue is not None:
rcues_annee.append(rcue)
# Si jury annuel (pas à cheval), on doit avoir tous les RCUEs:
if len(ues_impair_sans_rcue) > 0 and not self.a_cheval:
ue = UniteEns.query.get(ues_impair_sans_rcue.pop())
raise NoRCUEError(deca=self, ue=ue)
# if len(ues_impair_sans_rcue) > 0 and not self.a_cheval:
# ue = UniteEns.query.get(ues_impair_sans_rcue.pop())
# raise NoRCUEError(deca=self, ue=ue)
return rcues_annee
def compute_decisions_niveaux(self) -> dict[int, "DecisionsProposeesRCUE"]:
@ -911,7 +911,7 @@ def list_ue_parcour_etud(
formsemestre: FormSemestre, etud: Identite, res: ResultatsSemestreBUT
) -> tuple[ApcParcours, list[UniteEns]]:
"""Parcour dans lequel l'étudiant est inscrit,
et liste des UEs à valider pour ce semestre
et liste des UEs à valider pour ce semestre (sans les UE "dispensées")
"""
if res.etuds_parcour_id[etud.id] is None:
parcour = None
@ -926,6 +926,7 @@ def list_ue_parcour_etud(
.order_by(UniteEns.numero)
.all()
)
ues = [ue for ue in ues if (etud.id, ue.id) not in res.dispense_ues]
return parcour, ues

View File

@ -554,8 +554,8 @@ def _list_but_ue_inscriptions(res: NotesTableCompat, read_only: bool = True) ->
"""</table>
</form>
<div class="help">
L'inscription ou désinscription aux UE du BUT n'affecte pas les inscriptions aux modules
mais permet de "dispenser" un étudiant de suivre certaines UE de son parcours.
L'inscription ou désinscription aux UEs du BUT n'affecte pas les inscriptions aux modules
mais permet de "dispenser" un étudiant de suivre certaines UEs de son parcours.
Il peut s'agit d'étudiants redoublants ayant déjà acquis l'UE, ou d'autres cas particuliers.
La dispense d'UE est réversible à tout moment (avant le jury de fin de semestre)
et n'affecte pas les notes saisies.