commit
2ece5cb8e8
|
|
@ -258,12 +258,24 @@ class HrEmployee(models.Model):
|
|||
def _compute_gosi_years(self):
|
||||
for emp in self:
|
||||
years = 0
|
||||
date_activation = datetime.strptime(str(emp.sudo().company_id.gosi_active_date), '%Y-%m-%d')
|
||||
if emp.new_gosi==True:
|
||||
if date_activation:
|
||||
today = date.today()
|
||||
years = today.year - date_activation.year - ((today.month, today.day) < (date_activation.month, date_activation.day))
|
||||
emp.sudo().gosi_years = years
|
||||
gosi_date = emp.sudo().company_id.gosi_active_date
|
||||
|
||||
if emp.new_gosi and gosi_date:
|
||||
try:
|
||||
# gosi_active_date أصلاً Date field في Odoo، مش محتاج strptime
|
||||
if isinstance(gosi_date, str):
|
||||
date_activation = datetime.strptime(gosi_date, '%Y-%m-%d').date()
|
||||
else:
|
||||
date_activation = gosi_date # لو هو date object
|
||||
|
||||
today = date.today()
|
||||
years = today.year - date_activation.year - (
|
||||
(today.month, today.day) < (date_activation.month, date_activation.day)
|
||||
)
|
||||
except Exception:
|
||||
years = 0
|
||||
|
||||
emp.gosi_years = years
|
||||
|
||||
@api.constrains('gosi_date','new_gosi')
|
||||
def _check_gosi_date(self):
|
||||
|
|
|
|||
Loading…
Reference in New Issue