Merge pull request #9814 from nabinhait/duplicate-contact-email
fix: Duplicate check before inserting in contcat email table
This commit is contained in:
commit
c5f80a704f
2 changed files with 19 additions and 14 deletions
|
|
@ -69,23 +69,25 @@ class Contact(Document):
|
|||
return True
|
||||
|
||||
def add_email(self, email_id, is_primary=0, autosave=False):
|
||||
self.append("email_ids", {
|
||||
"email_id": email_id,
|
||||
"is_primary": is_primary
|
||||
})
|
||||
if not frappe.db.exists("Contact Email", {"email_id": email_id, "parent": self.name}):
|
||||
self.append("email_ids", {
|
||||
"email_id": email_id,
|
||||
"is_primary": is_primary
|
||||
})
|
||||
|
||||
if autosave:
|
||||
self.save(ignore_permissions=True)
|
||||
if autosave:
|
||||
self.save(ignore_permissions=True)
|
||||
|
||||
def add_phone(self, phone, is_primary_phone=0, is_primary_mobile_no=0, autosave=False):
|
||||
self.append("phone_nos", {
|
||||
"phone": phone,
|
||||
"is_primary_phone": is_primary_phone,
|
||||
"is_primary_mobile_no": is_primary_mobile_no
|
||||
})
|
||||
if not frappe.db.exists("Contact Phone", {"phone": phone, "parent": self.name}):
|
||||
self.append("phone_nos", {
|
||||
"phone": phone,
|
||||
"is_primary_phone": is_primary_phone,
|
||||
"is_primary_mobile_no": is_primary_mobile_no
|
||||
})
|
||||
|
||||
if autosave:
|
||||
self.save(ignore_permissions=True)
|
||||
if autosave:
|
||||
self.save(ignore_permissions=True)
|
||||
|
||||
def set_primary_email(self):
|
||||
if not self.email_ids:
|
||||
|
|
|
|||
|
|
@ -5,7 +5,11 @@ def execute():
|
|||
SELECT
|
||||
`name`, `email_id`, `phone`, `mobile_no`, `modified_by`, `creation`, `modified`
|
||||
FROM `tabContact`
|
||||
where not exists (select * from `tabContact Email`
|
||||
where `tabContact Email`.parent=`tabContact`.name
|
||||
and `tabContact Email`.email_id=`tabContact`.email_id)
|
||||
""", as_dict=True)
|
||||
|
||||
frappe.reload_doc("contacts", "doctype", "contact_email")
|
||||
frappe.reload_doc("contacts", "doctype", "contact_phone")
|
||||
frappe.reload_doc("contacts", "doctype", "contact")
|
||||
|
|
@ -15,7 +19,6 @@ def execute():
|
|||
for count, contact_detail in enumerate(contact_details):
|
||||
phone_counter = 1
|
||||
is_primary = 1
|
||||
|
||||
if contact_detail.email_id:
|
||||
email_values.append((
|
||||
1,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue