Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
1 Antworten
6348 Ansichten

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
Verwerfen
Autor Beste Antwort

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
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
1
Okt. 22
2926
0
März 15
3237
2
Juni 22
12028
1
Mai 22
2245
2
März 15
7311