From 54b0bc4e5b17f2b7c733bc8a70a7edf8f874c1f9 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Thu, 4 Jan 2024 19:59:00 +0530 Subject: [PATCH] fix: set lead/deal_owner as assigned user if not set --- crm/api/todo.py | 8 ++++++++ crm/hooks.py | 3 +++ 2 files changed, 11 insertions(+) create mode 100644 crm/api/todo.py diff --git a/crm/api/todo.py b/crm/api/todo.py new file mode 100644 index 00000000..7792e848 --- /dev/null +++ b/crm/api/todo.py @@ -0,0 +1,8 @@ +import frappe + +def after_insert(doc, method): + if doc.reference_type in ["CRM Lead", "CRM Deal"] and doc.reference_name and doc.allocated_to: + fieldname = "lead_owner" if doc.reference_type == "CRM Lead" else "deal_owner" + lead_owner = frappe.db.get_value(doc.reference_type, doc.reference_name, fieldname) + if not lead_owner: + frappe.db.set_value(doc.reference_type, doc.reference_name, fieldname, doc.allocated_to) \ No newline at end of file diff --git a/crm/hooks.py b/crm/hooks.py index c8e6be06..8e703a15 100644 --- a/crm/hooks.py +++ b/crm/hooks.py @@ -129,6 +129,9 @@ doc_events = { "Contact": { "validate": ["crm.api.contact.validate"], }, + "ToDo": { + "after_insert": ["crm.api.todo.after_insert"], + }, } # Scheduled Tasks