40
40
class hr_job_level(osv.osv):
41
_name = "hr.job.level"
42
_description = "qualification/seniority/minimum wage"
44
'job_id': fields.many2one('hr.job', 'Job'),
45
'name' : fields.char('Label', size=128, required=True),
46
'job_level': fields.char('Level', size=128),
47
'mini_wage': fields.float('Level minimum wage',digits=(10,2)),
41
_name = "hr.job.level"
42
_description = "qualification/seniority/minimum wage"
44
'job_id': fields.many2one('hr.job', 'Job'),
45
'name' : fields.char('Label', size=128, required=True),
46
'job_level': fields.char('Level', size=128),
47
'mini_wage': fields.float('Level minimum wage',digits=(10,2)),
51
51
class hr_employee(osv.osv):
53
_description = "Employee extension"
54
_inherit = "hr.employee"
53
_description = "Employee extension"
54
_inherit = "hr.employee"
56
def _current_employee_age(self,cr,uid,ids,field_name,arg,context):
58
today = datetime.date.today()
60
for employee in self.browse(cr, uid, ids):
62
dob = DateTime.strptime(employee.birthday,'%Y-%m-%d')
63
res[employee.id] = today.year - dob.year
67
'age' : fields.function(_current_employee_age,method=True,string='Age',type='integer',store=True),
68
'can_use_perso_email' : fields.boolean('Can use personal email'),
69
'emergency_contact' : fields.char('Emergency contact', size=128),
70
'emergency_phone' : fields.char('Emergency phone', size=128),
71
'current_job_level' : fields.many2one('hr.job.level','Current job level'),
56
def _current_employee_age(self,cr,uid,ids,field_name,arg,context):
58
today = datetime.date.today()
60
for employee in self.browse(cr, uid, ids):
62
dob = DateTime.strptime(employee.birthday,'%Y-%m-%d')
63
res[employee.id] = today.year - dob.year
64
dob = DateTime.strptime(employee.birthday,'%Y-%m-%d')
65
birthday_this_year = \
66
datetime.date(today.year, dob.month, dob.day)
67
if birthday_this_year > today: # Improved function by Yives Forkl
68
res[employee.id] = today.year - dob.year - 1
70
res[employee.id] = today.year - dob.year
74
'age' : fields.function(_current_employee_age,method=True,string='Age',type='integer',store=True),
75
'can_use_perso_email' : fields.boolean('Can use personal email'),
76
'emergency_contact' : fields.char('Emergency contact', size=128),
77
'emergency_phone' : fields.char('Emergency phone', size=128),
78
'current_job_level' : fields.many2one('hr.job.level','Current job level'),