Apo: améliore changement période

This commit is contained in:
Emmanuel Viennet 2023-04-18 02:20:32 +02:00 committed by iziram
parent e36a83a48a
commit 36f75ab0c4
4 changed files with 23 additions and 16 deletions

View File

@ -143,9 +143,10 @@ def apo_csv_list_stored_archives(annee_scolaire=None, sem_id=None, etapes=None):
if annee_scolaire:
e = re.compile(str(annee_scolaire) + "-.+")
oids = [x for x in oids if e.match(x)]
if sem_id:
e = re.compile(r"[0-9]{4}-" + str(sem_id))
oids = [x for x in oids if e.match(x)]
# Note: ne filtre plus sur la période, afin que l'on puisse chnager le semset de période.
# if sem_id:
# e = re.compile(r"[0-9]{4}-" + str(sem_id))
# oids = [x for x in oids if e.match(x)]
infos = [] # liste d'infos
for oid in oids:

View File

@ -640,21 +640,21 @@ def view_apo_csv_store(semset_id="", csvfile=None, data: bytes = "", autodetect=
apo_data = sco_apogee_csv.ApoData(
data_str, periode=semset["sem_id"]
) # parse le fichier -> exceptions
if apo_data.etape not in semset["etapes"]:
raise ScoValueError(
"Le code étape de ce fichier ne correspond pas à ceux de cet ensemble"
)
sco_etape_apogee.apo_csv_store(data_str, semset["annee_scolaire"], semset["sem_id"])
return flask.redirect(
url_for(
dest_url = url_for(
"notes.apo_semset_maq_status",
scodoc_dept=g.scodoc_dept,
semset_id=semset_id,
)
if apo_data.etape not in semset["etapes"]:
raise ScoValueError(
"Le code étape de ce fichier ne correspond pas à ceux de cet ensemble",
dest_url=dest_url,
)
sco_etape_apogee.apo_csv_store(data_str, semset["annee_scolaire"], semset["sem_id"])
return flask.redirect(dest_url)
def view_apo_csv_download_and_store(etape_apo="", semset_id=""):
"""Download maquette and store it"""

View File

@ -137,8 +137,15 @@ class SemSet(dict):
self["semtitles"] = [sem["titre_num"] for sem in self.sems]
# Construction du ou des lien(s) vers le semestre
pattern = '<a class="stdlink" href="formsemestre_status?formsemestre_id=%(formsemestre_id)s">%(titreannee)s</a>'
self["semlinks"] = [(pattern % sem) for sem in self.sems]
self["semlinks"] = [
f"""<a class="stdlink" href="{
url_for("notes.formsemestre_status", scodoc_dept=g.scodoc_dept,
formsemestre_id=sem["formsemestre_id"])
}">{sem["titreannee"]}</a>
"""
for sem in self.sems
]
self["semtitles_str"] = "<br>".join(self["semlinks"])
def fill_formsemestres(self):
@ -364,7 +371,6 @@ class SemSet(dict):
"""
if sco_portal_apogee.has_portal():
return self.bilan.html_diagnostic()
else:
return ""

View File

@ -1,7 +1,7 @@
# -*- mode: python -*-
# -*- coding: utf-8 -*-
SCOVERSION = "9.4.72"
SCOVERSION = "9.4.73"
SCONAME = "ScoDoc"