diff options
Diffstat (limited to 'addons/hr_holidays_attendance/models/hr_leave_allocation.py')
| -rw-r--r-- | addons/hr_holidays_attendance/models/hr_leave_allocation.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/addons/hr_holidays_attendance/models/hr_leave_allocation.py b/addons/hr_holidays_attendance/models/hr_leave_allocation.py index 1b962540e9f..2732fd5e4b8 100644 --- a/addons/hr_holidays_attendance/models/hr_leave_allocation.py +++ b/addons/hr_holidays_attendance/models/hr_leave_allocation.py @@ -52,7 +52,9 @@ class HolidaysAllocation(models.Model): res = super().write(vals) if 'number_of_days' not in vals: return res - for allocation in self.filtered('overtime_id'): + if not self.env.user.has_group("hr_holidays.group_hr_holidays_user") and any(allocation.state not in ('draft', 'confirm') for allocation in self): + raise ValidationError(_('Only an Officer or Administrator is allowed to edit the allocation duration in this status.')) + for allocation in self.sudo().filtered('overtime_id'): employee = allocation.employee_id duration = allocation.number_of_hours_display overtime_duration = allocation.overtime_id.sudo().duration |
