mirror of
https://github.com/frappe/erpnext.git
synced 2026-04-30 03:58:26 +00:00
Merge pull request #47016 from barredterra/employee-user-perms
This commit is contained in:
@@ -335,10 +335,7 @@ doc_events = {
|
||||
"User": {
|
||||
"after_insert": "frappe.contacts.doctype.contact.contact.update_contact",
|
||||
"validate": "erpnext.setup.doctype.employee.employee.validate_employee_role",
|
||||
"on_update": [
|
||||
"erpnext.setup.doctype.employee.employee.update_user_permissions",
|
||||
"erpnext.portal.utils.set_default_role",
|
||||
],
|
||||
"on_update": "erpnext.portal.utils.set_default_role",
|
||||
},
|
||||
"Communication": {
|
||||
"on_update": [
|
||||
|
||||
@@ -85,9 +85,7 @@ class Employee(NestedSet):
|
||||
self.reset_employee_emails_cache()
|
||||
|
||||
def update_user_permissions(self):
|
||||
if not has_permission("User Permission", ptype="write", print_logs=False) or (
|
||||
not self.has_value_changed("user_id") and not self.has_value_changed("create_user_permission")
|
||||
):
|
||||
if not self.has_value_changed("user_id") and not self.has_value_changed("create_user_permission"):
|
||||
return
|
||||
|
||||
employee_user_permission_exists = frappe.db.exists(
|
||||
@@ -250,15 +248,6 @@ def validate_employee_role(doc, method=None, ignore_emp_check=False):
|
||||
doc.get("roles").remove(doc.get("roles", {"role": "Employee Self Service"})[0])
|
||||
|
||||
|
||||
def update_user_permissions(doc, method):
|
||||
# called via User hook
|
||||
if "Employee" in [d.role for d in doc.get("roles")]:
|
||||
if not has_permission("User Permission", ptype="write", print_logs=False):
|
||||
return
|
||||
employee = frappe.get_doc("Employee", {"user_id": doc.name})
|
||||
employee.update_user_permissions()
|
||||
|
||||
|
||||
def get_employee_email(employee_doc):
|
||||
return (
|
||||
employee_doc.get("user_id") or employee_doc.get("personal_email") or employee_doc.get("company_email")
|
||||
|
||||
Reference in New Issue
Block a user