Files
gzth/yuthon_issue/models/inherit_hr_employee.py
T
2024-10-21 18:19:37 +08:00

28 lines
1.0 KiB
Python

# -*- coding: utf-8 -*-
from odoo import api, fields, models
class YuthonHrEmployee(models.Model):
_inherit = "hr.employee"
user_role_ids_changed = fields.Boolean(compute='_compute_user_roles')
@api.depends('user_role_ids')
def _compute_user_roles(self):
group_mapping = {
'党支委议题': 'group_party_topic',
'班子会议题': 'group_team_topic',
'董事会议题': 'group_board_topic',
'议题管理员': 'group_topic_admin',
}
old_users_ids = self.user_role_ids
for employee in self:
for role in employee.user_role_ids:
group_id = group_mapping.get(role.name)
if group_id:
group = self.env.ref('yuthon_issue.' + group_id, raise_if_not_found=False)
if group:
# 未知因素屏蔽选择值
group.write({'users': [(4, employee.user_id.id)]})
self.user_role_ids = old_users_ids
self.user_role_ids_changed = True