diff --git a/addons/hr_payroll/models/hr_leave.py b/addons/hr_payroll/models/hr_leave.py index efa1d8bc2ce..8450fdacc17 100644 --- a/addons/hr_payroll/models/hr_leave.py +++ b/addons/hr_payroll/models/hr_leave.py @@ -67,7 +67,7 @@ class HrLeave(models.Model): @api.multi def action_validate(self): super(HrLeave, self).action_validate() - self._cancel_benefit_conflict() + self.sudo()._cancel_benefit_conflict() calendar_leaves = self.env['resource.calendar.leaves'].search([('holiday_id', 'in', self.ids)]) calendar_leaves.write({'benefit_type_id': self.holiday_status_id.benefit_type_id.id}) return True @@ -75,6 +75,6 @@ class HrLeave(models.Model): @api.multi def action_refuse(self): super(HrLeave, self).action_refuse() - benefits = self.env['hr.benefit'].search([('leave_id', 'in', self.ids)]) + benefits = self.env['hr.benefit'].sudo().search([('leave_id', 'in', self.ids)]) benefits.write({'display_warning': False, 'leave_id': None}) return True diff --git a/addons/hr_payroll/models/resource.py b/addons/hr_payroll/models/resource.py index 381b0789c16..d0a525e7854 100644 --- a/addons/hr_payroll/models/resource.py +++ b/addons/hr_payroll/models/resource.py @@ -26,6 +26,7 @@ class ResourceCalendar(models.Model): def _onchange_hours_per_day(self): return super(ResourceCalendar, self)._onchange_hours_per_day() + class ResourceCalendarAttendance(models.Model): _inherit = 'resource.calendar.attendance' @@ -34,8 +35,10 @@ class ResourceCalendarAttendance(models.Model): benefit_type_id = fields.Many2one('hr.benefit.type', 'Benefit Type', default=_default_benefit_type_id) + class ResourceCalendarLeave(models.Model): _inherit = 'resource.calendar.leaves' + benefit_type_id = fields.Many2one('hr.benefit.type', 'Benefit Type')