fix: The Fee details are not fetched in Program Enrollment (#31153)

This commit is contained in:
Syed Mujeer Hashmi
2022-07-28 11:00:39 +04:00
committed by GitHub
parent 9985d28571
commit 0602848caa
3 changed files with 34 additions and 9 deletions

View File

@@ -199,16 +199,32 @@ def get_fee_components(fee_structure):
@frappe.whitelist() @frappe.whitelist()
def get_fee_schedule(program, student_category=None): def get_fee_schedule(program, student_category=None, academic_year=None):
"""Returns Fee Schedule. """Returns Fee Schedule.
:param program: Program. :param program: Program.
:param student_category: Student Category :param student_category: Student Category.
:param academic_year: Academic Year.
""" """
fs = frappe.get_all( filters = {}
"Program Fee", if program:
fields=["academic_term", "fee_structure", "due_date", "amount"], filters = {"program": program}
filters={"parent": program, "student_category": student_category},
if student_category:
filters["student_category"] = student_category
if academic_year:
filters["academic_year"] = academic_year
fs = frappe.db.get_list(
"Fee Schedule",
filters=filters,
fields=[
"academic_term",
"fee_structure",
"student_category",
"due_date",
"total_amount as amount",
],
order_by="idx", order_by="idx",
) )
return fs return fs

View File

@@ -60,12 +60,15 @@ frappe.ui.form.on('Program Enrollment', {
method: 'erpnext.education.api.get_fee_schedule', method: 'erpnext.education.api.get_fee_schedule',
args: { args: {
'program': frm.doc.program, 'program': frm.doc.program,
'student_category': frm.doc.student_category 'student_category': frm.doc.student_category,
'academic_year': frm.doc.academic_year
}, },
callback: function(r) { callback: function(r) {
if (r.message) { if (r.message) {
cur_frm.clear_table("fees");
frm.refresh_fields('fees');
frm.set_value('fees' ,r.message); frm.set_value('fees' ,r.message);
frm.events.get_courses(frm); frm.refresh_fields('fees');
} }
} }
}); });
@@ -76,6 +79,10 @@ frappe.ui.form.on('Program Enrollment', {
frappe.ui.form.trigger('Program Enrollment', 'program'); frappe.ui.form.trigger('Program Enrollment', 'program');
}, },
academic_year: function() {
frappe.ui.form.trigger('Program Enrollment', 'program');
},
get_courses: function(frm) { get_courses: function(frm) {
frm.set_value('courses',[]); frm.set_value('courses',[]);
frappe.call({ frappe.call({

View File

@@ -105,6 +105,8 @@ class ProgramEnrollment(Document):
"academic_term": d.academic_term, "academic_term": d.academic_term,
"fee_structure": d.fee_structure, "fee_structure": d.fee_structure,
"program": self.program, "program": self.program,
"student_batch": self.student_batch_name,
"student_category": self.student_category,
"due_date": d.due_date, "due_date": d.due_date,
"student_name": self.student_name, "student_name": self.student_name,
"program_enrollment": self.name, "program_enrollment": self.name,