Merge pull request #3620 from expsa/attendence_total_hou

cla
This commit is contained in:
eslamtalaat744 2025-06-24 13:23:21 +03:00 committed by GitHub
commit a6ae2a16be
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 19 additions and 6 deletions

View File

@ -273,15 +273,20 @@ class StandardAppraisalLines(models.Model):
('5', '5'),
],
string='Priority',
compute='_compute_priority',
inverse='_inverse_priority',
store=True,
store=True
)
@api.depends('greed', 'great_level')
from_greed = fields.Boolean(default=False)
from_priority = fields.Boolean(default=False)
@api.onchange('greed', 'great_level')
def _compute_priority(self):
for rec in self:
rec.priority = '0'
if rec.from_priority:
# Reset and skip to avoid circular trigger
rec.from_priority = False
continue
rec.from_greed = True
if rec.great_level:
value = rec.greed / (rec.great_level / 5)
if 1 <= value < 2:
@ -295,10 +300,18 @@ class StandardAppraisalLines(models.Model):
elif value >= 5:
rec.priority = '5'
else:
rec.priority = '0' # fallback
rec.priority = '0'
else:
rec.priority = '0'
@api.onchange('priority')
def _inverse_priority(self):
for rec in self:
if rec.from_greed:
# Reset and skip to avoid circular trigger
rec.from_greed = False
continue
rec.from_priority = True
if rec.great_level and rec.priority:
rec.greed = int(rec.priority) * (rec.great_level / 5)