@@ -98,13 +98,14 @@ class YuthonUserRole(models.Model):
|
||||
|
||||
@api.onchange('personnel_ids')
|
||||
def _onchange_personnel_ids(self):
|
||||
for record in self:
|
||||
for personnel_id in record.personnel_ids:
|
||||
employee = self.env['hr.employee'].search([('id', '=', personnel_id.id.origin)], limit=1)
|
||||
if employee:
|
||||
if self.id.origin != employee.user_role_id.id:
|
||||
new_user_role_ids = employee.user_role_ids.ids + [self.id.origin]
|
||||
employee.write({'user_role_ids': [(6, 0, new_user_role_ids)],})
|
||||
for personnel_id in self.personnel_ids:
|
||||
employee = self.env['hr.employee'].browse(personnel_id.id)
|
||||
if employee:
|
||||
if self.id not in employee.user_role_ids.ids:
|
||||
new_user_role_ids = list(set(employee.user_role_ids.ids + [self.id]))
|
||||
employee.write({
|
||||
'user_role_ids': [(6, 0, new_user_role_ids)],
|
||||
})
|
||||
|
||||
def write(self, vals):
|
||||
"""覆盖 write,personnel_ids 变更时双向同步到员工的主/辅助角色字段"""
|
||||
|
||||
Reference in New Issue
Block a user