[FIX] hr_holidays: Remove related on employee's department

- In SaaS-16 we have added a related on the employee's department.
    This causes access rights issues when changing the employee's department.
    We do not want to rewrite all the old records, only the new ones should use the new employee's department.
This commit is contained in:
tbe-odoo
2018-02-19 10:39:04 +01:00
parent 675a876347
commit 825180867a
2 changed files with 9 additions and 3 deletions
+7 -2
View File
@@ -218,7 +218,12 @@ class Employee(models.Model):
def write(self, values):
res = super(Employee, self).write(values)
if 'parent_id' in values:
if 'parent_id' in values or 'department_id' in values:
holidays = self.env['hr.holidays'].search([('state', 'in', ['draft', 'confirm']), ('employee_id', 'in', self.ids)])
holidays.write({'manager_id': values['parent_id']})
hr_vals = {}
if values.get('parent_id') is not None:
hr_vals['manager_id'] = values['parent_id']
if values.get('department_id') is not None:
hr_vals['department_id'] = values['department_id']
holidays.write(hr_vals)
return res
+2 -1
View File
@@ -197,7 +197,7 @@ class Holidays(models.Model):
"\nChoose 'Allocation Request' if you want to increase the number of leaves available for someone")
parent_id = fields.Many2one('hr.holidays', string='Parent')
linked_request_ids = fields.One2many('hr.holidays', 'parent_id', string='Linked Requests')
department_id = fields.Many2one('hr.department', related='employee_id.department_id', string='Department', readonly=True, store=True)
department_id = fields.Many2one('hr.department', string='Department', readonly=True)
category_id = fields.Many2one('hr.employee.category', string='Employee Tag', readonly=True,
states={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}, help='Category of Employee')
holiday_type = fields.Selection([
@@ -216,6 +216,7 @@ class Holidays(models.Model):
@api.onchange('employee_id')
def _onchange_employee_id(self):
self.manager_id = self.employee_id and self.employee_id.parent_id
self.department_id = self.employee_id and self.employee_id.department_id
@api.multi
@api.depends('number_of_days_temp', 'type')