diff --git a/erpnext/education/report/course_wise_assessment_report/course_wise_assessment_report.py b/erpnext/education/report/course_wise_assessment_report/course_wise_assessment_report.py index c0f498f19b..1043e5bd45 100644 --- a/erpnext/education/report/course_wise_assessment_report/course_wise_assessment_report.py +++ b/erpnext/education/report/course_wise_assessment_report/course_wise_assessment_report.py @@ -101,7 +101,7 @@ def get_formatted_result(args, get_assessment_criteria=False, get_course=False, # create the nested dictionary structure as given below: # ..... - # "Total Score" -> assessment criteria used for totaling and args.assessment_group -> for totaling all the assesments + # "Final Grade" -> assessment criteria used for totaling and args.assessment_group -> for totaling all the assesments student_details = {} formatted_assessment_result = defaultdict(dict) @@ -123,13 +123,13 @@ def get_formatted_result(args, get_assessment_criteria=False, get_course=False, formatted_assessment_result[result.student][result.course][assessment_group]\ [assessment_criteria]["grade"] = tmp_grade - # create the assessment criteria "Total Score" with the sum of all the scores of the assessment criteria in a given assessment group + # create the assessment criteria "Final Grade" with the sum of all the scores of the assessment criteria in a given assessment group def add_total_score(result, assessment_group): - if "Total Score" not in formatted_assessment_result[result.student][result.course][assessment_group]: - formatted_assessment_result[result.student][result.course][assessment_group]["Total Score"] = frappe._dict({ - "assessment_criteria": "Total Score", "maximum_score": result.maximum_score, "score": result.score, "grade": result.grade}) + if "Final Grade" not in formatted_assessment_result[result.student][result.course][assessment_group]: + formatted_assessment_result[result.student][result.course][assessment_group]["Final Grade"] = frappe._dict({ + "assessment_criteria": "Final Grade", "maximum_score": result.maximum_score, "score": result.score, "grade": result.grade}) else: - add_score_and_recalculate_grade(result, assessment_group, "Total Score") + add_score_and_recalculate_grade(result, assessment_group, "Final Grade") for result in assessment_result: if result.student not in student_details: @@ -166,7 +166,7 @@ def get_formatted_result(args, get_assessment_criteria=False, get_course=False, add_total_score(result, args.assessment_group) total_maximum_score = formatted_assessment_result[result.student][result.course][args.assessment_group]\ - ["Total Score"]["maximum_score"] + ["Final Grade"]["maximum_score"] if get_assessment_criteria: assessment_criteria_dict[result.assessment_criteria] = formatted_assessment_result[result.student][result.course]\ [args.assessment_group][result.assessment_criteria]["maximum_score"] @@ -174,7 +174,7 @@ def get_formatted_result(args, get_assessment_criteria=False, get_course=False, course_dict[result.course] = total_maximum_score if get_assessment_criteria and total_maximum_score: - assessment_criteria_dict["Total Score"] = total_maximum_score + assessment_criteria_dict["Final Grade"] = total_maximum_score return { "student_details": student_details, @@ -220,7 +220,7 @@ def get_chart_data(grades, criteria_list, kounter): datasets = [] for grade in grades: - tmp = frappe._dict({"name": grade, "values":[], "title": grade}) + tmp = frappe._dict({"name": grade, "values":[]}) for criteria in criteria_list: if grade in kounter[criteria]: tmp["values"].append(kounter[criteria][grade])