Intègre l'affichage des pré-requis

This commit is contained in:
Cléo Baras 2021-03-30 12:14:27 +02:00
parent 4c0030183e
commit 810ee3bc93
4 changed files with 37 additions and 7 deletions

View File

@ -145,6 +145,9 @@ for r in liste_ressources:
# Remet en forme les ACs
nettoie_acs(r)
# Remet en forme les saé
nettoie_sae(r)
# Remet en forme les pré-requis
nettoie_prerequis(r)
@ -195,4 +198,5 @@ for sem in ressources:
for sem in ressources:
for r in ressources[sem]:
fichieryaml = "export/{}.yml".format(r.code)
convert_ressource_yml_to_latex(fichieryaml, "export/test.txt", "pn/modele_ressource.tex")
fichierlatex = "latex/{}.txt".format(r.code)
convert_ressource_yml_to_latex(fichieryaml, fichierlatex, "pn/modele_ressource.tex")

View File

@ -92,3 +92,11 @@ def affiche_bilan_heures(ressources, sem):
chaine += ligne.format("", "Total", str(heures_formation_total), str(heures_tp_total)) + "\n"
chaine += trait + "\n"
return chaine
def get_officiel_ressource_name_by_code(code):
"""Pour un code valide, fournit le nom officiel de la ressource (sans conaissance du semestre)"""
for sem in DATA_RESSOURCES:
for rcode in DATA_RESSOURCES[sem]:
if rcode==code:
return DATA_RESSOURCES[sem][code]

View File

@ -5,8 +5,8 @@ S1:
SAE14: "Se présenter sur Internet"
SAE15: "Traiter des données"
S2:
SAE21: ""
SAE22: ""
SAE23: ""
SAE24: ""
SAE21: "Construction dun réseau informatique pour une petite structure"
SAE22: "Mesures et caractérisation dun signal ou dun système"
SAE23: "Mise en place d'une solution informatique pour lentreprise"
SAE24: "Projet intégratif de S2"

View File

@ -158,11 +158,18 @@ def nettoie_acs(r):
acs_finaux = sorted(list(set(acs_finaux)))
r.apprentissages[comp] = acs_finaux
def nettoie_sae(r):
"""Nettoie les sae en détectant les codes"""
print(r.sae)
def nettoie_prerequis(r):
"""Nettoie les prérequis (ressource) en les remplaçant par leur code de ressource"""
R_avec_code = devine_ressources_by_code(r.prerequis)
R_avec_nom = devine_code_by_nom_from_dict(r.prerequis, DATA_RESSOURCES)
R_finaux = sorted(list(set(R_avec_code + R_avec_nom)))
liste = R_avec_code + R_avec_nom
liste = [l.rstrip() for l in liste] # supprime les espaces
R_finaux = sorted(list(set(liste)))
if R_finaux:
r.prerequis = R_finaux
else:
@ -304,7 +311,7 @@ def convert_ressource_yml_to_latex(fichieryaml, fichierlatex, modele):
for (i, accomp) in enumerate(ressource["acs"]):
comps = []
for no_ac in range(len(accomp)): # les ac de la comp
comps.append( ajoutac % (no_ac, DATA_ACS["RT"+str(i+1)][accomp[no_ac]]) )
comps.append( ajoutac % (accomp[no_ac], DATA_ACS["RT"+str(i+1)][accomp[no_ac]]) )
compRT.append("\n".join(comps))
# ajoutsaes = "\\ajoutsae{%s}{%s}"
@ -318,6 +325,13 @@ def convert_ressource_yml_to_latex(fichieryaml, fichierlatex, modele):
ajoutprerequis = "\\ajoutprerequis{%s}{%s}"
prerequis = ""
if ressource["prerequis"] == "Aucun":
prerequis = ""
else:
liste = []
for (no, mod) in enumerate(ressource["prerequis"]):
liste.append(ajoutprerequis % (mod, get_officiel_ressource_name_by_code(mod)))
prerequis = "\n".join(liste)
chaine = ""
chaine = TemplateLatex(contenu).substitute(code=ressource["code"],
@ -333,6 +347,10 @@ def convert_ressource_yml_to_latex(fichieryaml, fichierlatex, modele):
contenu=ressource["contenu"],
motscles=ressource["motscles"]
)
with open(fichierlatex, "w", encoding="utf8") as fid:
fid.write(chaine)
return chaine
if __name__=="__main__":