Merge branch 'master' of git@github.com:webnotes/erpnext
This commit is contained in:
commit
985d8a217f
@ -5,64 +5,60 @@ from webnotes.model.doc import Document
|
||||
from webnotes.model.doclist import getlist
|
||||
from webnotes.model.code import get_obj
|
||||
from webnotes import session, form, is_testing, msgprint, errprint
|
||||
|
||||
from webnotes.utils import flt
|
||||
|
||||
sql = webnotes.conn.sql
|
||||
convert_to_lists = webnotes.conn.convert_to_lists
|
||||
|
||||
# -----------------------------------------------------------------------------------------
|
||||
|
||||
|
||||
class DocType:
|
||||
def __init__(self, doc, doclist=[]):
|
||||
self.doc = doc
|
||||
self.doclist = doclist
|
||||
self.nsm_parent_field = 'parent_sales_person';
|
||||
|
||||
def check_state(self):
|
||||
return "\n" + "\n".join([i[0] for i in sql("select state_name from `tabState` where `tabState`.country='%s' " % self.doc.country)])
|
||||
def __init__(self, doc, doclist=[]):
|
||||
self.doc = doc
|
||||
self.doclist = doclist
|
||||
self.nsm_parent_field = 'parent_sales_person';
|
||||
|
||||
def check_state(self):
|
||||
return "\n" + "\n".join([i[0] for i in sql("select state_name from `tabState` where `tabState`.country='%s' " % self.doc.country)])
|
||||
|
||||
|
||||
# update Node Set Model
|
||||
def update_nsm_model(self):
|
||||
import webnotes
|
||||
import webnotes.utils.nestedset
|
||||
webnotes.utils.nestedset.update_nsm(self)
|
||||
# update Node Set Model
|
||||
def update_nsm_model(self):
|
||||
import webnotes
|
||||
import webnotes.utils.nestedset
|
||||
webnotes.utils.nestedset.update_nsm(self)
|
||||
|
||||
# ON UPDATE
|
||||
#--------------------------------------
|
||||
def on_update(self):
|
||||
# update nsm
|
||||
self.update_nsm_model()
|
||||
# ON UPDATE
|
||||
#--------------------------------------
|
||||
def on_update(self):
|
||||
# update nsm
|
||||
self.update_nsm_model()
|
||||
|
||||
|
||||
def validate(self):
|
||||
from webnotes.utils import flt
|
||||
for d in getlist(self.doclist, 'target_details'):
|
||||
if not flt(d.target_qty) and not flt(d.target_amount):
|
||||
msgprint("Either target qty or target amount is mandatory.")
|
||||
raise Exception
|
||||
|
||||
#self.sync_with_contact()
|
||||
|
||||
def sync_with_contact(self):
|
||||
cid = sql("select name from tabContact where sales_person_id = %s and is_sales_person=1", self.doc.name)
|
||||
if cid:
|
||||
d = Document('Contact', cid[0][0])
|
||||
else:
|
||||
d = Document('Contact')
|
||||
|
||||
name_split = self.doc.sales_person_name.split()
|
||||
d.contact_name = self.doc.sales_person_name
|
||||
d.first_name = name_split[0]
|
||||
d.last_name = len(name_split) > 1 and name_split[1] or ''
|
||||
d.email_id = self.doc.email_id
|
||||
d.contact_no = d.mobile_no = self.doc.mobile_no
|
||||
d.designation = self.doc.designation
|
||||
d.department = self.doc.department
|
||||
d.sales_person_id = self.doc.name
|
||||
d.is_sales_person = 1
|
||||
|
||||
d.save(new = (not d.name))
|
||||
|
||||
|
||||
def validate(self):
|
||||
for d in getlist(self.doclist, 'target_details'):
|
||||
if not flt(d.target_qty) and not flt(d.target_amount):
|
||||
msgprint("Either target qty or target amount is mandatory.")
|
||||
raise Exception
|
||||
|
||||
#self.sync_with_contact()
|
||||
|
||||
def sync_with_contact(self):
|
||||
cid = sql("select name from tabContact where sales_person_id = %s and is_sales_person=1", self.doc.name)
|
||||
if cid:
|
||||
d = Document('Contact', cid[0][0])
|
||||
else:
|
||||
d = Document('Contact')
|
||||
|
||||
name_split = self.doc.sales_person_name.split()
|
||||
d.contact_name = self.doc.sales_person_name
|
||||
d.first_name = name_split[0]
|
||||
d.last_name = len(name_split) > 1 and name_split[1] or ''
|
||||
d.email_id = self.doc.email_id
|
||||
d.contact_no = d.mobile_no = self.doc.mobile_no
|
||||
d.designation = self.doc.designation
|
||||
d.department = self.doc.department
|
||||
d.sales_person_id = self.doc.name
|
||||
d.is_sales_person = 1
|
||||
|
||||
d.save(new = (not d.name))
|
||||
|
Loading…
Reference in New Issue
Block a user