From 01d0f7d6517822e46e81a6ba58ebeba580cea4d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9o=20BARAS=20=28IUT1=20Grenoble=29?= Date: Tue, 16 Jan 2024 09:21:02 +0100 Subject: [PATCH] =?UTF-8?q?Erreur=20si=20le=20jury=20demand=C3=A9=20corres?= =?UTF-8?q?pond=20=C3=A0=20un=20DUT=20ou=20tout=20formation=20non=20APC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/pe/pe_jurype.py | 8 ++++++-- app/pe/pe_view.py | 9 ++++++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/app/pe/pe_jurype.py b/app/pe/pe_jurype.py index cc3a799d6..9cae9efea 100644 --- a/app/pe/pe_jurype.py +++ b/app/pe/pe_jurype.py @@ -184,14 +184,18 @@ class JuryPE(object): TOUS_LES_PARCOURS = list(PARCOURS.keys()) # ------------------------------------------------------------------------------------------------------------------ - def __init__(self, semBase): + def __init__(self, + sem_base: FormSemestre, + semBase # CB: à supprimer à long terme + ): """ Création d'une table PE sur la base d'un semestre selectionné. De ce semestre est déduit : 1. l'année d'obtention du DUT, 2. tous les étudiants susceptibles à ce stade (au regard de leur parcours) d'être diplomés. Args: - semBase: le dictionnaire sem donnant la base du jury + sem_base: le FormSemestre donnant le semestre à la base du jury PE + semBase: le dictionnaire sem donnant la base du jury (CB: TODO: A supprimer à long term) meme_programme: si True, impose un même programme pour tous les étudiants participant au jury, si False, permet des programmes differents """ diff --git a/app/pe/pe_view.py b/app/pe/pe_view.py index a538b7df8..39b810c99 100644 --- a/app/pe/pe_view.py +++ b/app/pe/pe_view.py @@ -36,6 +36,8 @@ """ from flask import send_file, request + +from app.models import FormSemestre from app.scodoc.sco_exceptions import ScoValueError import app.scodoc.sco_utils as scu @@ -96,9 +98,14 @@ def pe_view_sem_recap( return _pe_view_sem_recap_form(formsemestre_id) prefs = sco_preferences.SemPreferences(formsemestre_id=formsemestre_id) + sem_base = FormSemestre.get_formsemestre(formsemestre_id) + if not sem_base.formation.is_apc(): + raise ScoValueError("Le module de Poursuites d'Etudes avec Scodoc 9 n'est disponible que pour des formations BUT") + + # TODO: CB: A supprimer à long terme semBase = sco_formsemestre.get_formsemestre(formsemestre_id) # FormSemestre.get_formsemestre() - jury = pe_jurype.JuryPE(semBase) + jury = pe_jurype.JuryPE(sem_base, semBase) # Ajout avis LaTeX au même zip: etudids = list(jury.syntheseJury.keys())