[FIX] hr_*: access rights issues when changing employee's user
- When changing the user of a `hr.employee` record, access rights errors could be triggered. Those errors are triggered when a record (for example a leave) is linked to this employee and the current user has limited write accesses by record rules on this record. closes odoo/odoo#31032
This commit is contained in:
@@ -10,7 +10,7 @@ class GamificationBadgeUserWizard(models.TransientModel):
|
||||
|
||||
employee_id = fields.Many2one('hr.employee', string='Employee', required=True)
|
||||
user_id = fields.Many2one('res.users', string='User',
|
||||
related='employee_id.user_id', store=True, readonly=True)
|
||||
related='employee_id.user_id', store=True, readonly=True, compute_sudo=True)
|
||||
|
||||
# TODO 12.0/master remove this hack by changing the model
|
||||
@api.model
|
||||
|
||||
@@ -174,7 +174,7 @@ class Holidays(models.Model):
|
||||
payslip_status = fields.Boolean('Reported in last payslips',
|
||||
help='Green this button when the leave has been taken into account in the payslip.')
|
||||
report_note = fields.Text('HR Comments')
|
||||
user_id = fields.Many2one('res.users', string='User', related='employee_id.user_id', related_sudo=True, store=True, default=lambda self: self.env.uid, readonly=True)
|
||||
user_id = fields.Many2one('res.users', string='User', related='employee_id.user_id', related_sudo=True, compute_sudo=True, store=True, default=lambda self: self.env.uid, readonly=True)
|
||||
date_from = fields.Datetime('Start Date', readonly=True, index=True, copy=False,
|
||||
states={'draft': [('readonly', False)], 'confirm': [('readonly', False)]})
|
||||
date_to = fields.Datetime('End Date', readonly=True, copy=False,
|
||||
|
||||
@@ -46,7 +46,7 @@ class HrTimesheetSheet(models.Model):
|
||||
|
||||
name = fields.Char(string="Note", states={'confirm': [('readonly', True)], 'done': [('readonly', True)]})
|
||||
employee_id = fields.Many2one('hr.employee', string='Employee', default=_default_employee, required=True)
|
||||
user_id = fields.Many2one('res.users', related='employee_id.user_id', string='User', store=True, readonly=True)
|
||||
user_id = fields.Many2one('res.users', related='employee_id.user_id', string='User', store=True, readonly=True, compute_sudo=True)
|
||||
date_from = fields.Date(string='Date From', default=_default_date_from, required=True,
|
||||
index=True, readonly=True, states={'new': [('readonly', False)]})
|
||||
date_to = fields.Date(string='Date To', default=_default_date_to, required=True,
|
||||
|
||||
Reference in New Issue
Block a user