From af7fe1937ec77028a770b490c942cbd014c36026 Mon Sep 17 00:00:00 2001 From: Mangesh-Khairnar Date: Wed, 13 Nov 2019 19:00:56 +0530 Subject: [PATCH] fix: fetch leave approver defined in employee in leave application (#19559) * fix: fetch leave approver defined in employee in leave application * Update department_approver.py --- .../department_approver/department_approver.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/erpnext/hr/doctype/department_approver/department_approver.py b/erpnext/hr/doctype/department_approver/department_approver.py index 9f2f2013a77..7bf9905d07a 100644 --- a/erpnext/hr/doctype/department_approver/department_approver.py +++ b/erpnext/hr/doctype/department_approver/department_approver.py @@ -19,14 +19,20 @@ def get_approvers(doctype, txt, searchfield, start, page_len, filters): approvers = [] department_details = {} department_list = [] - employee_department = filters.get("department") or frappe.get_value("Employee", filters.get("employee"), "department") + employee = frappe.get_value("Employee", filters.get("employee"), ["department", "leave_approver"], as_dict=True) + if employee.leave_approver: + approver = frappe.db.get_value("User", leave_approver, ['name', 'first_name', 'last_name']) + approvers.append(approver) + return approvers + + employee_department = filters.get("department") or employee.department if employee_department: department_details = frappe.db.get_value("Department", {"name": employee_department}, ["lft", "rgt"], as_dict=True) if department_details: department_list = frappe.db.sql("""select name from `tabDepartment` where lft <= %s and rgt >= %s and disabled=0 - order by lft desc""", (department_details.lft, department_details.rgt), as_list = True) + order by lft desc""", (department_details.lft, department_details.rgt), as_list=True) if filters.get("doctype") == "Leave Application": parentfield = "leave_approvers" @@ -41,4 +47,4 @@ def get_approvers(doctype, txt, searchfield, start, page_len, filters): and approver.parentfield = %s and approver.approver=user.name""",(d, "%" + txt + "%", parentfield), as_list=True) - return approvers \ No newline at end of file + return approvers