Merge pull request #367 from shariquerik/update-deal-on-contact-update
fix: Sync Contact & Deal primary contact's email/mobile_no
This commit is contained in:
commit
257e9b2e4d
@ -7,6 +7,7 @@ def validate(doc, method):
|
||||
set_primary_mobile_no(doc)
|
||||
doc.set_primary_email()
|
||||
doc.set_primary("mobile_no")
|
||||
update_deals_email_mobile_no(doc)
|
||||
|
||||
|
||||
def set_primary_email(doc):
|
||||
@ -25,6 +26,21 @@ def set_primary_mobile_no(doc):
|
||||
doc.phone_nos[0].is_primary_mobile_no = 1
|
||||
|
||||
|
||||
def update_deals_email_mobile_no(doc):
|
||||
linked_deals = frappe.get_all(
|
||||
"CRM Contacts",
|
||||
filters={"contact": doc.name, "is_primary": 1},
|
||||
fields=["parent"],
|
||||
)
|
||||
|
||||
for linked_deal in linked_deals:
|
||||
deal = frappe.get_cached_doc("CRM Deal", linked_deal.parent)
|
||||
if deal.email != doc.email_id or deal.mobile_no != doc.mobile_no:
|
||||
deal.email = doc.email_id
|
||||
deal.mobile_no = doc.mobile_no
|
||||
deal.save(ignore_permissions=True)
|
||||
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_contact(name):
|
||||
Contact = frappe.qb.DocType("Contact")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user