Commit b05f534b authored by Jérémie Passerat's avatar Jérémie Passerat

Cycle complet xml calculee simple

parent ef5d7e48
...@@ -868,6 +868,9 @@ class ContenuDao: ...@@ -868,6 +868,9 @@ class ContenuDao:
liste_note = [] liste_note = []
liste_feedback = [] liste_feedback = []
liste_tolerance = [] liste_tolerance = []
liste_tolerance_type = []
liste_reponse_format = []
liste_reponse_taille = []
for answer in root.iter('answer'): for answer in root.iter('answer'):
liste_note.append(answer.attrib["fraction"]) liste_note.append(answer.attrib["fraction"])
for question in answer.iter('text'): for question in answer.iter('text'):
...@@ -880,11 +883,25 @@ class ContenuDao: ...@@ -880,11 +883,25 @@ class ContenuDao:
# print ("tolerance : ", tolerance.text) # print ("tolerance : ", tolerance.text)
if tolerance.text is not None: if tolerance.text is not None:
liste_tolerance.append(tolerance.text) liste_tolerance.append(tolerance.text)
if elements_question["type_question"] == "calculatedsimple":
for type in answer.iter('tolerancetype'):
if type.text is not None:
liste_tolerance_type.append(type.text)
for format in answer.iter('correctanswerformat'):
if format.text is not None:
liste_reponse_format.append(format.text)
for length in answer.iter('correctanswerlength'):
if length.text is not None:
liste_reponse_taille.append(length.text)
elements_question["liste_reponse"] = liste_reponse elements_question["liste_reponse"] = liste_reponse
elements_question["liste_note"] = liste_note elements_question["liste_note"] = liste_note
elements_question["liste_feedback"] = liste_feedback elements_question["liste_feedback"] = liste_feedback
elements_question["liste_tolerance"] = liste_tolerance elements_question["liste_tolerance"] = liste_tolerance
if elements_question["type_question"] == "calculatedsimple":
elements_question["liste_tolerance_type"] = liste_tolerance_type
elements_question["liste_reponse_format"] = liste_reponse_format
elements_question["liste_reponse_taille"] = liste_reponse_taille
# elif elements_question["type_question"] == 'calculatedsimple': # elif elements_question["type_question"] == 'calculatedsimple':
# print("calculatedsimple") # print("calculatedsimple")
...@@ -1076,13 +1093,20 @@ class ContenuDao: ...@@ -1076,13 +1093,20 @@ class ContenuDao:
# on ajoute les éventuelles nouvelles unités # on ajoute les éventuelles nouvelles unités
if i < len(elements_contenu["liste_unite_nom"]): if i < len(elements_contenu["liste_unite_nom"]):
for question in root.iter('question'): for question in root.iter('question'):
for unit in question.iter('units'): if sum(1 for _ in question.iter('units')) == 0:
print("1. : ", str(ET.tostring(unit))) creer_units = SubElement(question, "units")
new_unit = SubElement(unit, "unit") new_unit = SubElement(creer_units, "unit")
multiplier = SubElement(new_unit, "multiplier") multiplier = SubElement(new_unit, "multiplier")
multiplier.text = elements_contenu["liste_unite_coef"][i] multiplier.text = elements_contenu["liste_unite_coef"][i]
unit_name = SubElement(new_unit, "unit_name") unit_name = SubElement(new_unit, "unit_name")
unit_name.text = elements_contenu["liste_unite_nom"][i] unit_name.text = elements_contenu["liste_unite_nom"][i]
else:
for unit in question.iter('units'):
new_unit = SubElement(unit, "unit")
multiplier = SubElement(new_unit, "multiplier")
multiplier.text = elements_contenu["liste_unite_coef"][i]
unit_name = SubElement(new_unit, "unit_name")
unit_name.text = elements_contenu["liste_unite_nom"][i]
# print("Je le ai ", len(elements_contenu["liste_note"]), " notes, ", len(elements_contenu["liste_feedback"]), " feedbacks, ", # print("Je le ai ", len(elements_contenu["liste_note"]), " notes, ", len(elements_contenu["liste_feedback"]), " feedbacks, ",
# len(elements_contenu["liste_reponse"]), " reponses et ", len(elements_contenu["liste_tolerance"]), "tolerances") # len(elements_contenu["liste_reponse"]), " reponses et ", len(elements_contenu["liste_tolerance"]), "tolerances")
...@@ -1099,6 +1123,16 @@ class ContenuDao: ...@@ -1099,6 +1123,16 @@ class ContenuDao:
for tolerance in answer.iter('tolerance'): for tolerance in answer.iter('tolerance'):
if tolerance.text is not None: if tolerance.text is not None:
tolerance.text = elements_contenu["liste_tolerance"][i] tolerance.text = elements_contenu["liste_tolerance"][i]
if elements_contenu["type_question"] == "calculatedsimple":
for type in answer.iter('tolerancetype'):
if type.text is not None:
type.text = elements_contenu["liste_tolerance_type"][i]
for format in answer.iter('correctanswerformat'):
if format.text is not None:
format.text = elements_contenu["liste_reponse_format"][i]
for length in answer.iter('correctanswerlength'):
if length.text is not None:
length.text = elements_contenu["liste_reponse_taille"][i]
i += 1 i += 1
# on ajoute les éventuelles nouvelles réponses # on ajoute les éventuelles nouvelles réponses
...@@ -1116,6 +1150,13 @@ class ContenuDao: ...@@ -1116,6 +1150,13 @@ class ContenuDao:
text_feedback.text = elements_contenu["liste_feedback"][i] text_feedback.text = elements_contenu["liste_feedback"][i]
tolerance = SubElement(new_answer, "tolerance") tolerance = SubElement(new_answer, "tolerance")
tolerance.text = elements_contenu["liste_tolerance"][i] tolerance.text = elements_contenu["liste_tolerance"][i]
if elements_contenu["type_question"] == "calculatedsimple":
tolerance_type = SubElement(new_answer, "tolerancetype")
tolerance_type.text = elements_contenu["liste_tolerance_type"][i]
correct_answer_format = SubElement(new_answer, "correctanswerformat")
correct_answer_format.text = elements_contenu["liste_reponse_format"][i]
correct_answer_length = SubElement(new_answer, "correctanswerlength")
correct_answer_length.text = elements_contenu["liste_reponse_taille"][i]
i += 1 i += 1
# on maj le fichier du contenu # on maj le fichier du contenu
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment