Implémente #557

This commit is contained in:
Emmanuel Viennet 2023-01-12 10:14:54 -03:00
parent 19e8145e8a
commit f84e7b10e4
6 changed files with 28 additions and 17 deletions

View File

@ -1049,8 +1049,8 @@ class DecisionsProposeesRCUE(DecisionsProposees):
for ue_id in (self.rcue.ue_1.id, self.rcue.ue_2.id): for ue_id in (self.rcue.ue_1.id, self.rcue.ue_2.id):
dec_ue = deca.decisions_ues.get(ue_id) dec_ue = deca.decisions_ues.get(ue_id)
if dec_ue and dec_ue.code_valide not in CODES_UE_VALIDES: if dec_ue and dec_ue.code_valide not in CODES_UE_VALIDES:
log(f"rcue.record: force ADJ sur {dec_ue}") log(f"rcue.record: force ADJR sur {dec_ue}")
dec_ue.record("ADJ") dec_ue.record("ADJR")
if self.rcue.formsemestre_1 is not None: if self.rcue.formsemestre_1 is not None:
sco_cache.invalidate_formsemestre( sco_cache.invalidate_formsemestre(
@ -1100,7 +1100,7 @@ class DecisionsProposeesUE(DecisionsProposees):
sinon si compensation dans RCUE: CMP sinon si compensation dans RCUE: CMP
sinon: ADJ, AJ sinon: ADJ, AJ
et proposer toujours: RAT, DEF, ABAN, DEM, UEBSL (codes_communs) et proposer toujours: RAT, DEF, ABAN, ADJR, DEM, UEBSL (codes_communs)
""" """
# Codes toujours proposés sauf si include_communs est faux: # Codes toujours proposés sauf si include_communs est faux:
@ -1108,6 +1108,7 @@ class DecisionsProposeesUE(DecisionsProposees):
sco_codes.RAT, sco_codes.RAT,
sco_codes.DEF, sco_codes.DEF,
sco_codes.ABAN, sco_codes.ABAN,
sco_codes.ADJR,
sco_codes.ATJ, sco_codes.ATJ,
sco_codes.DEM, sco_codes.DEM,
sco_codes.UEBSL, sco_codes.UEBSL,

View File

@ -13,6 +13,7 @@ from app.scodoc.sco_codes_parcours import (
ABL, ABL,
ADC, ADC,
ADJ, ADJ,
ADJR,
ADM, ADM,
AJ, AJ,
ATB, ATB,
@ -34,6 +35,7 @@ CODES_SCODOC_TO_APO = {
ABL: "ABL", ABL: "ABL",
ADC: "ADMC", ADC: "ADMC",
ADJ: "ADM", ADJ: "ADM",
ADJR: "ADM",
ADM: "ADM", ADM: "ADM",
AJ: "AJ", AJ: "AJ",
ATB: "AJAC", ATB: "AJAC",

View File

@ -122,6 +122,7 @@ ABL = "ABL"
ADM = "ADM" # moyenne gen., barres UE, assiduité: sem. validé ADM = "ADM" # moyenne gen., barres UE, assiduité: sem. validé
ADC = "ADC" # admis par compensation (eg moy(S1, S2) > 10) ADC = "ADC" # admis par compensation (eg moy(S1, S2) > 10)
ADJ = "ADJ" # admis par le jury ADJ = "ADJ" # admis par le jury
ADJR = "ADJR" # UE admise car son RCUE est ADJ
ATT = "ATT" # ATT = "ATT" #
ATJ = "ATJ" # pb assiduité: décision repoussée au semestre suivant ATJ = "ATJ" # pb assiduité: décision repoussée au semestre suivant
ATB = "ATB" ATB = "ATB"
@ -158,6 +159,7 @@ CODES_EXPL = {
ABL: "Année blanche", ABL: "Année blanche",
ADC: "Validé par compensation", ADC: "Validé par compensation",
ADJ: "Validé par le Jury", ADJ: "Validé par le Jury",
ADJR: "UE validée car son RCUE est validé ADJ par le jury",
ADM: "Validé", ADM: "Validé",
AJ: "Ajourné (ou UE/BC de BUT en attente pour problème de moyenne)", AJ: "Ajourné (ou UE/BC de BUT en attente pour problème de moyenne)",
ATB: "Décision en attente d'un autre semestre (au moins une UE sous la barre)", ATB: "Décision en attente d'un autre semestre (au moins une UE sous la barre)",
@ -190,7 +192,7 @@ CODES_SEM_ATTENTES = {ATT: True, ATB: True, ATJ: True} # semestre en attente
CODES_SEM_REO = {NAR: 1} # reorientation CODES_SEM_REO = {NAR: 1} # reorientation
CODES_UE_VALIDES = {ADM: True, CMP: True, ADJ: True} # UE validée CODES_UE_VALIDES = {ADM: True, CMP: True, ADJ: True, ADJR: True} # UE validée
CODES_RCUE_VALIDES = CODES_UE_VALIDES # Niveau RCUE validé CODES_RCUE_VALIDES = CODES_UE_VALIDES # Niveau RCUE validé
# Pour le BUT: # Pour le BUT:
CODES_ANNEE_ARRET = {DEF, DEM, ABAN, ABL} CODES_ANNEE_ARRET = {DEF, DEM, ABAN, ABL}
@ -208,16 +210,17 @@ BUT_CODES_PASSAGE = {
# les codes, du plus "défavorable" à l'étudiant au plus favorable: # les codes, du plus "défavorable" à l'étudiant au plus favorable:
# (valeur par défaut 0) # (valeur par défaut 0)
BUT_CODES_ORDERED = { BUT_CODES_ORDERED = {
"NAR": 0, NAR: 0,
"DEF": 0, DEF: 0,
"AJ": 10, AJ: 10,
"ATJ": 20, ATJ: 20,
"CMP": 50, CMP: 50,
"ADC": 50, ADC: 50,
"PASD": 50, PASD: 50,
"PAS1NCI": 60, PAS1NCI: 60,
"ADJ": 100, ADJR: 90,
"ADM": 100, ADJ: 100,
ADM: 100,
} }

View File

@ -18,7 +18,7 @@ function change_menu_code(elt) {
} else { } else {
elt.parentElement.parentElement.classList.remove("recorded"); elt.parentElement.parentElement.classList.remove("recorded");
} }
// Si RCUE passant en ADJ, change les menus des UEs associées // Si RCUE passant en ADJ, change les menus des UEs associées ADJR
if (elt.classList.contains("code_rcue") if (elt.classList.contains("code_rcue")
&& elt.dataset.niveau_id && elt.dataset.niveau_id
&& elt.value == "ADJ" && elt.value == "ADJ"
@ -26,7 +26,7 @@ function change_menu_code(elt) {
let ue_selects = elt.parentElement.parentElement.parentElement.querySelectorAll( let ue_selects = elt.parentElement.parentElement.parentElement.querySelectorAll(
"select.ue_rcue_" + elt.dataset.niveau_id); "select.ue_rcue_" + elt.dataset.niveau_id);
ue_selects.forEach(select => { ue_selects.forEach(select => {
select.value = "ADJ"; select.value = "ADJR";
change_menu_code(select); // pour changer les styles change_menu_code(select); // pour changer les styles
}); });
} }

View File

@ -189,6 +189,12 @@
<td class="amue"></td> <td class="amue"></td>
<td>Acquis par décision de jury (ECTS acquis)</td> <td>Acquis par décision de jury (ECTS acquis)</td>
</tr> </tr>
<tr>
<td>ADJR</td>
<td>{{codes["ADJR"]}}</td>
<td class="amue"></td>
<td>Acquis par décision de jury sur le RCUE (ECTS acquis)</td>
</tr>
<tr> <tr>
<td>AJ</td> <td>AJ</td>
<td>{{codes["AJ"]}}</td> <td>{{codes["AJ"]}}</td>

View File

@ -1,5 +1,4 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
############################################################################## ##############################################################################
# #