Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
6242 Zobrazení

How do I get the age of the employee when defining a salary rules like 

if age < 35:

result = 0.17 * categories.BASIC

elif age >= 35 and age < 45:

result = 0.17 * categories.BASIC

elif age >= 45 and age < 50:

result = 0.17 * categories.BASIC

elif age >= 50 and age < 55:

result = 0.16 * categories.BASIC

elif age >= 55 and age < 60:

result = 0.12 * categories.BASIC

elif age >= 55 and age < 60:

result = 0.085 * categories.BASIC

elif age > 65:

result = 0.075 * categories.BASIC

Avatar
Zrušit
Autor Nejlepší odpověď

I have to edit code  to openerp/addons/hr/hr.py

import time
from datetime import datetime
from openerp.tools import DEFAULT_SERVER_DATE_FORMAT
...
class hr_employee(osv.osv):
    _name = "hr.employee" 
    _description = "Employee" 
    _order = 'name_related'
    _inherits = {'resource.resource': "resource_id"}
    _inherit = ['mail.thread']

...

    def get_age(self):
        if not  self.birthday:
            return 0
        birth = datetime.strptime(self.birthday, DEFAULT_SERVER_DATE_FORMAT)
        today = datetime.strptime(time.strftime(DEFAULT_SERVER_DATE_FORMAT), DEFAULT_SERVER_DATE_FORMAT)
        delta = today - birth
        return delta.days / 365

Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
1
říj 22
2805
0
bře 15
3139
2
čvn 22
11867
1
kvě 22
2168
2
bře 15
7181