Files
gzth/yuthon_account_report/wizard/table_setting_wizard.py
T
2025-12-02 11:18:27 +08:00

32 lines
1.3 KiB
Python

from odoo import models, fields, api, _, SUPERUSER_ID
from odoo.exceptions import UserError, ValidationError
class TableSettingWizard(models.TransientModel):
_name = 'table.setting.wizard'
_description = '初始化人员弹窗'
financial_ids = fields.Many2many('sheet.collection.setting', string='财务数据表行')
information_ids = fields.Many2many('summary.table.setting', string='信息汇总表行')
employee_ids = fields.Many2many('hr.employee', string='员工')
user_role_ids = fields.Many2many('soong.user.role', string="角色")
@api.onchange('user_role_ids')
def _onchange_user_role_ids(self):
for rec in self:
domain = ['|', ('user_role_id', 'in', rec.user_role_ids.ids),
('user_role_ids', 'in', rec.user_role_ids.ids)]
new_employees = self.env['hr.employee'].search(domain)
all_employees = rec.employee_ids | new_employees
rec.employee_ids = all_employees
def action_confirm(self):
if self.financial_ids:
for rec in self.financial_ids:
rec.write({'employee_ids': [(6, 0, self.employee_ids.ids)]})
if self.information_ids:
for rec in self.information_ids:
rec.write({'employee_ids': [(6, 0, self.employee_ids.ids)]})