forked from ScoDoc/ScoDoc
Update opolka/ScoDoc from ScoDoc/ScoDoc #2
@ -307,7 +307,7 @@ class ResultatsSemestreBUT(NotesTableCompat):
|
|||||||
|
|
||||||
return ues_ids
|
return ues_ids
|
||||||
|
|
||||||
def etud_has_decision(self, etudid) -> bool:
|
def etud_has_decision(self, etudid, include_rcues=True) -> bool:
|
||||||
"""True s'il y a une décision (quelconque) de jury
|
"""True s'il y a une décision (quelconque) de jury
|
||||||
émanant de ce formsemestre pour cet étudiant.
|
émanant de ce formsemestre pour cet étudiant.
|
||||||
prend aussi en compte les autorisations de passage.
|
prend aussi en compte les autorisations de passage.
|
||||||
@ -318,10 +318,13 @@ class ResultatsSemestreBUT(NotesTableCompat):
|
|||||||
or ApcValidationAnnee.query.filter_by(
|
or ApcValidationAnnee.query.filter_by(
|
||||||
formsemestre_id=self.formsemestre.id, etudid=etudid
|
formsemestre_id=self.formsemestre.id, etudid=etudid
|
||||||
).count()
|
).count()
|
||||||
or ApcValidationRCUE.query.filter_by(
|
or (
|
||||||
|
include_rcues
|
||||||
|
and ApcValidationRCUE.query.filter_by(
|
||||||
formsemestre_id=self.formsemestre.id, etudid=etudid
|
formsemestre_id=self.formsemestre.id, etudid=etudid
|
||||||
).count()
|
).count()
|
||||||
)
|
)
|
||||||
|
)
|
||||||
|
|
||||||
def get_validations_annee(self) -> dict[int, ApcValidationAnnee]:
|
def get_validations_annee(self) -> dict[int, ApcValidationAnnee]:
|
||||||
"""Les validations des étudiants de ce semestre
|
"""Les validations des étudiants de ce semestre
|
||||||
|
@ -290,9 +290,10 @@ class NotesTableCompat(ResultatsSemestre):
|
|||||||
]
|
]
|
||||||
return etudids
|
return etudids
|
||||||
|
|
||||||
def etud_has_decision(self, etudid) -> bool:
|
def etud_has_decision(self, etudid, include_rcues=True) -> bool:
|
||||||
"""True s'il y a une décision de jury pour cet étudiant émanant de ce formsemestre.
|
"""True s'il y a une décision de jury pour cet étudiant émanant de ce formsemestre.
|
||||||
prend aussi en compte les autorisations de passage.
|
prend aussi en compte les autorisations de passage.
|
||||||
|
Si include_rcues, prend en compte les validation d'RCUEs en BUT (pas d'effet en classic).
|
||||||
Sous-classée en BUT pour les RCUEs et années.
|
Sous-classée en BUT pour les RCUEs et années.
|
||||||
"""
|
"""
|
||||||
return bool(
|
return bool(
|
||||||
|
@ -7,7 +7,6 @@ from app import db
|
|||||||
from app.models import CODE_STR_LEN
|
from app.models import CODE_STR_LEN
|
||||||
from app.models.but_refcomp import ApcNiveau
|
from app.models.but_refcomp import ApcNiveau
|
||||||
from app.models.etudiants import Identite
|
from app.models.etudiants import Identite
|
||||||
from app.models.formations import Formation
|
|
||||||
from app.models.formsemestre import FormSemestre
|
from app.models.formsemestre import FormSemestre
|
||||||
from app.models.ues import UniteEns
|
from app.models.ues import UniteEns
|
||||||
|
|
||||||
|
@ -660,7 +660,7 @@ def notes_add(
|
|||||||
nb_suppress += 1
|
nb_suppress += 1
|
||||||
if changed:
|
if changed:
|
||||||
etudids_changed.append(etudid)
|
etudids_changed.append(etudid)
|
||||||
if res.etud_has_decision(etudid):
|
if res.etud_has_decision(etudid, include_rcues=False):
|
||||||
etudids_with_decision.append(etudid)
|
etudids_with_decision.append(etudid)
|
||||||
except Exception as exc:
|
except Exception as exc:
|
||||||
log("*** exception in notes_add")
|
log("*** exception in notes_add")
|
||||||
@ -1168,7 +1168,11 @@ def _form_saisie_notes(
|
|||||||
return '<div class="ue_warning"><span>Aucun étudiant sélectionné !</span></div>'
|
return '<div class="ue_warning"><span>Aucun étudiant sélectionné !</span></div>'
|
||||||
|
|
||||||
# Décisions de jury existantes ?
|
# Décisions de jury existantes ?
|
||||||
decisions_jury = {etudid: res.etud_has_decision(etudid) for etudid in etudids}
|
# en BUT on ne considère pas les RCUEs car ils peuvenut avoir été validés depuis
|
||||||
|
# d'autres semestres (les validations de RCUE n'indiquent pas si elles sont "externes")
|
||||||
|
decisions_jury = {
|
||||||
|
etudid: res.etud_has_decision(etudid, include_rcues=False) for etudid in etudids
|
||||||
|
}
|
||||||
|
|
||||||
# Nb de décisions de jury (pour les inscrits à l'évaluation):
|
# Nb de décisions de jury (pour les inscrits à l'évaluation):
|
||||||
nb_decisions = sum(decisions_jury.values())
|
nb_decisions = sum(decisions_jury.values())
|
||||||
|
Loading…
Reference in New Issue
Block a user