fix: patched quiz submission data
This commit is contained in:
47
lms/patches/v2_0/update_quiz_submission_data.py
Normal file
47
lms/patches/v2_0/update_quiz_submission_data.py
Normal file
@@ -0,0 +1,47 @@
|
||||
import frappe
|
||||
|
||||
|
||||
def execute():
|
||||
set_question_data()
|
||||
set_submission_data()
|
||||
|
||||
|
||||
def set_question_data():
|
||||
questions = frappe.get_all("LMS Quiz Question", fields=["name", "question"])
|
||||
|
||||
for question in questions:
|
||||
question_doc = frappe.db.get_value(
|
||||
"LMS Question", question.question, ["question", "type"], as_dict=1
|
||||
)
|
||||
frappe.db.set_value(
|
||||
"LMS Quiz Question",
|
||||
question.name,
|
||||
{"question_detail": question_doc.question, "type": question_doc.type},
|
||||
)
|
||||
|
||||
|
||||
def set_submission_data():
|
||||
submissions = frappe.get_all("LMS Quiz Submission", fields=["name", "quiz"])
|
||||
|
||||
for submission in submissions:
|
||||
quiz_title = frappe.db.get_value("LMS Quiz", submission.quiz, "title")
|
||||
frappe.db.set_value("LMS Quiz Submission", submission.name, "quiz_title", quiz_title)
|
||||
|
||||
questions = frappe.get_all(
|
||||
"LMS Quiz Result", filters={"parent": submission.name}, fields=["question_name"]
|
||||
)
|
||||
|
||||
for question in questions:
|
||||
if question.question_name:
|
||||
marks_out_of = frappe.db.get_value(
|
||||
"LMS Quiz Question",
|
||||
{"parent": submission.quiz, "question": question.question_name},
|
||||
["marks"],
|
||||
)
|
||||
|
||||
frappe.db.set_value(
|
||||
"LMS Quiz Result",
|
||||
{"parent": submission.name, "question_name": question.question_name},
|
||||
"marks_out_of",
|
||||
marks_out_of,
|
||||
)
|
||||
Reference in New Issue
Block a user