From 61576ca03092a2a60eb5d468ee62495a868673ad Mon Sep 17 00:00:00 2001 From: Dietmar Fischer Date: Thu, 1 Aug 2024 17:01:43 +0200 Subject: [PATCH] feat: changes in opportunity.py to show contacts and addresses from referenced and opportunities --- erpnext/crm/doctype/opportunity/opportunity.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/erpnext/crm/doctype/opportunity/opportunity.py b/erpnext/crm/doctype/opportunity/opportunity.py index 34fd1e91ba2..0989ea553e1 100644 --- a/erpnext/crm/doctype/opportunity/opportunity.py +++ b/erpnext/crm/doctype/opportunity/opportunity.py @@ -93,7 +93,20 @@ class Opportunity(TransactionBase, CRMNote): def onload(self): ref_doc = frappe.get_doc(self.opportunity_from, self.party_name) + load_address_and_contact(ref_doc) + load_address_and_contact(self) + + ref_doc_contact_list = ref_doc.get("__onload").get('contact_list') + opportunity_doc_contact_list = [contact for contact in self.get('__onload').get('contact_list') if contact not in ref_doc_contact_list] + ref_doc_contact_list.extend(opportunity_doc_contact_list) + ref_doc.set_onload("contact_list", ref_doc_contact_list) + + ref_doc_addr_list = ref_doc.get("__onload").get('addr_list') + opportunity_doc_addr_list = [addr for addr in self.get('__onload').get('addr_list') if addr not in ref_doc_addr_list] + ref_doc_addr_list.extend(opportunity_doc_addr_list) + ref_doc.set_onload("addr_list", ref_doc_addr_list) + self.set("__onload", ref_doc.get("__onload")) def after_insert(self):