From 50f944e5b9f1783245ea758ed1ff6f301199e6f0 Mon Sep 17 00:00:00 2001 From: zhou <123@> Date: Sat, 9 Aug 2025 16:29:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- soong_workflow/__manifest__.py | 2 +- yuthon_hr_employee/models/yuthon_hr_employee.py | 10 ++++++++++ yuthon_hr_employee/views/yuthon_hr_employee_views.xml | 5 +++++ 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/soong_workflow/__manifest__.py b/soong_workflow/__manifest__.py index 9c622de11..da0bcdb5b 100644 --- a/soong_workflow/__manifest__.py +++ b/soong_workflow/__manifest__.py @@ -18,7 +18,7 @@ "views/soong_approval_users_views.xml", "views/soong_note_views.xml", "views/soong_note_setting_views.xml", - "views/soong_hr_employee_views.xml", + # "views/soong_hr_employee_views.xml", "views/soong_user_role_views.xml", "views/soong_workflow_node_views.xml", "views/soong_workflow_link_views.xml", diff --git a/yuthon_hr_employee/models/yuthon_hr_employee.py b/yuthon_hr_employee/models/yuthon_hr_employee.py index 5125a4688..5a4299953 100644 --- a/yuthon_hr_employee/models/yuthon_hr_employee.py +++ b/yuthon_hr_employee/models/yuthon_hr_employee.py @@ -46,6 +46,10 @@ class YuthonHrEmployee(models.Model): ('expatriate', '外派'), ('adjunct', '在职(兼职)')], string="员工状态") user_number_start_time = fields.Date(string="身份证开始时间") + user_role_id = fields.Many2one('soong.user.role', string="主角色") + user_role_ids = fields.Many2many('soong.user.role', string="辅助角色") + department_ids = fields.Many2many('hr.department', string="辅助部门") + bank_account = fields.Char() user_number_end_time = fields.Date(string="身份证到期时间") is_identification = fields.Boolean(string="是否填写身份证") card_documents_id = fields.Many2one('ir.attachment', string="身份证正面") @@ -212,6 +216,12 @@ class YuthonHrEmployee(models.Model): security_amount = fields.Float(string="安全委员会金额", compute='_compute_subsidy_amount', store=True) quality_inspector_amount = fields.Float(string="质检员金额", compute='_compute_subsidy_amount', store=True) + @api.onchange('user_role_id') + def _onchange_user_role_id(self): + if self.user_role_id and self.id: + user_id = self.env['soong.user.role'].search([('id', '=', self.user_role_id.id)]) + user_id.write({'personnel_ids': [(4, self.id.origin)]}) + @api.depends('quota_issued', 'user_year') def _compute_remainder_year(self): for record in self: diff --git a/yuthon_hr_employee/views/yuthon_hr_employee_views.xml b/yuthon_hr_employee/views/yuthon_hr_employee_views.xml index 32fe41573..a0cee81d9 100644 --- a/yuthon_hr_employee/views/yuthon_hr_employee_views.xml +++ b/yuthon_hr_employee/views/yuthon_hr_employee_views.xml @@ -30,10 +30,15 @@ + + ztree_select + + + 1