添加功能

This commit is contained in:
zhou
2025-06-18 20:07:16 +08:00
parent e6ab24e7be
commit ef06bcebd7
+10 -10
View File
@@ -125,19 +125,19 @@ class SoongWorkflowMixin(models.AbstractModel):
def create(self, vals_list):
res = super().create(vals_list)
for record in res:
button_ids = record.sudo().workflow_id.node_ids.button_ids.search([('workflow_id', '=', res.workflow_id.id), ('sequence', '=', 1)])
button_ids = record.sudo().workflow_id.node_ids.button_ids.search([('workflow_id', '=', res.workflow_id.id)])
current_user_role_id = record.env.user.employee_id.user_role_id.id
for button in button_ids:
print(f" - 按钮ID: {button.id}, 节点名称: {button.node_id.name}")
for button_id in button_ids:
allowed_role_ids = []
if button_id.users_role_id:
employee_ids = record.sudo().env['hr.employee'].search(
['|', ('user_role_id', '=', button_id.users_role_id.id),
('user_role_ids', 'in', button_id.users_role_id.id),
])
allowed_role_ids.append(button_id.users_role_id.id)
elif button_id.users_role_group_ids:
allowed_role_ids.extend(button_id.users_role_group_ids.user_role_ids.ids)
else:
employee_ids = record.sudo().env['hr.employee'].search([
'|', ('user_role_id', 'in', button_id.users_role_group_ids.user_role_ids.ids),
('user_role_ids', 'in', button_id.users_role_group_ids.user_role_ids.ids),
])
if record.env.user.employee_id.id in employee_ids.ids:
continue
if current_user_role_id in allowed_role_ids:
record.state = button_id.node_id.node_name
return res