fix: Cleanup code

This commit is contained in:
Faris Ansari 2020-10-16 15:28:12 +05:30
parent 349fcfd6a5
commit 22bcad9dc7
2 changed files with 14 additions and 24 deletions

View File

@ -1,37 +1,27 @@
import frappe import frappe
from frappe import _ from frappe import _
from frappe.contacts.doctype.address.address import Address from frappe.contacts.doctype.address.address import Address
from frappe.contacts.address_and_contact import set_link_title
from frappe.core.doctype.dynamic_link.dynamic_link import deduplicate_dynamic_links
from frappe.contacts.doctype.address.address import get_address_templates from frappe.contacts.doctype.address.address import get_address_templates
class CustomAddress(Address): class ERPNextAddress(Address):
def validate(self): def validate(self):
self.link_address()
self.validate_reference() self.validate_reference()
super(CustomAddress, self).validate_preferred_address() super(ERPNextAddress, self).validate()
set_link_title(self)
deduplicate_dynamic_links(self)
def link_address(self): def link_address(self):
"""Link address based on owner""" """Link address based on owner"""
if not self.links and not self.is_your_company_address: if not self.is_your_company_address:
contact_name = frappe.db.get_value("Contact", {"email_id": self.owner}) return
if contact_name:
contact = frappe.get_cached_doc('Contact', contact_name) return super(ERPNextAddress, self).link_address()
print('here', str(contact))
for link in contact.links:
self.append('links', dict(link_doctype=link.link_doctype, link_name=link.link_name))
return True
return False
def validate_reference(self): def validate_reference(self):
if self.is_your_company_address: if self.is_your_company_address and not [
print('here') row for row in self.links if row.link_doctype == "Company"
if not [row for row in self.links if row.link_doctype == "Company"]: ]:
frappe.throw(_("Address needs to be linked to a Company. Please add a row for Company in the Links table below."), frappe.throw(_("Address needs to be linked to a Company. Please add a row for Company in the Links table."),
title =_("Company not Linked")) title=_("Company Not Linked"))
@frappe.whitelist() @frappe.whitelist()
def get_shipping_address(company, address = None): def get_shipping_address(company, address = None):
filters = [ filters = [

View File

@ -28,7 +28,7 @@ doctype_js = {
} }
override_doctype_class = { override_doctype_class = {
'Address': 'erpnext.accounts.custom.address.CustomAddress' 'Address': 'erpnext.accounts.custom.address.ERPNextAddress'
} }
welcome_email = "erpnext.setup.utils.welcome_email" welcome_email = "erpnext.setup.utils.welcome_email"
@ -566,4 +566,4 @@ global_search_doctypes = {
{'doctype': 'Hotel Room Package', 'index': 3}, {'doctype': 'Hotel Room Package', 'index': 3},
{'doctype': 'Hotel Room Type', 'index': 4} {'doctype': 'Hotel Room Type', 'index': 4}
] ]
} }