This commit is contained in:
Mazen Abdo 2025-08-24 13:32:22 +03:00
parent ffffa29edd
commit 350474daaf
1 changed files with 18 additions and 6 deletions

View File

@ -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):