[salary structure] added a validation

This commit is contained in:
Nabin Hait 2013-04-22 15:15:47 +05:30
parent a305406267
commit d16cae113a

View File

@ -36,7 +36,7 @@ class DocType:
def get_employee_details(self):
ret = {}
det = sql("""select employee_name, branch, designation, department, grade
from `tabEmployee` where name = '%s'""", self.doc.employee)
from `tabEmployee` where name = %s""", self.doc.employee)
if det:
ret = {
'employee_name': cstr(det[0][0]),
@ -50,7 +50,7 @@ class DocType:
def get_ss_values(self,employee):
basic_info = sql("""select bank_name, bank_ac_no, esic_card_no, pf_number
from `tabEmployee` where name ='%s'""", employee)
from `tabEmployee` where name =%s""", employee)
ret = {'bank_name': basic_info and basic_info[0][0] or '',
'bank_ac_no': basic_info and basic_info[0][1] or '',
'esic_no': basic_info and basic_info[0][2] or '',
@ -74,22 +74,23 @@ class DocType:
def check_existing(self):
ret = sql("""select name from `tabSalary Structure` where is_active = 'Yes'
and employee = '%s' and name!='%s'""", (self.doc.employee,self.doc.name))
and employee = %s and name!=%s""", (self.doc.employee,self.doc.name))
if ret and self.doc.is_active=='Yes':
msgprint(_("""Another Salary Structure '%s' is active for employee '%s'.
Please make its status 'Inactive' to proceed.""") %
(cstr(ret), self.doc.employee), raise_exception=1)
def validate_amount(self):
if flt(self.doc.ctc) < 12*flt(self.doc.total_earning):
msgprint(_("Annual Cost To Company can not be less than 12 months of Total Earning"),
raise_exception=1)
if flt(self.doc.net_pay) < 0:
msgprint(_("Net pay can not be negative"), raise_exception=1)
elif flt(self.doc.net_pay)*12 > flt(self.doc.ctc):
msgprint(_("Net pay can not be greater than 1/12th of Annual Cost To Company"),
raise_exception=1)
if flt(self.doc.ctc) < 12*flt(self.doc.total_earning):
msgprint(_("Annual Cost To Company can not be less than 12 months of Total Earning"),
raise_exception=1)
def validate(self):
self.check_existing()