From 177a209f5060abdd1d55b90789203b7c4439560f Mon Sep 17 00:00:00 2001 From: Rucha Mahabal Date: Tue, 25 Jan 2022 16:49:53 +0530 Subject: [PATCH] fix(Employee): set user image and validate user id only if user data is found (#29452) --- erpnext/hr/doctype/employee/employee.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/erpnext/hr/doctype/employee/employee.py b/erpnext/hr/doctype/employee/employee.py index 88e5ca9d4c5..8a2950696af 100755 --- a/erpnext/hr/doctype/employee/employee.py +++ b/erpnext/hr/doctype/employee/employee.py @@ -68,12 +68,18 @@ class Employee(NestedSet): self.employee_name = ' '.join(filter(lambda x: x, [self.first_name, self.middle_name, self.last_name])) def validate_user_details(self): - data = frappe.db.get_value('User', - self.user_id, ['enabled', 'user_image'], as_dict=1) - if data.get("user_image") and self.image == '': - self.image = data.get("user_image") - self.validate_for_enabled_user_id(data.get("enabled", 0)) - self.validate_duplicate_user_id() + if self.user_id: + data = frappe.db.get_value("User", + self.user_id, ["enabled", "user_image"], as_dict=1) + + if not data: + self.user_id = None + return + + if data.get("user_image") and self.image == "": + self.image = data.get("user_image") + self.validate_for_enabled_user_id(data.get("enabled", 0)) + self.validate_duplicate_user_id() def update_nsm_model(self): frappe.utils.nestedset.update_nsm(self)