添加功能

This commit is contained in:
李鹏宇
2026-08-04 16:55:08 +08:00
parent 75de9bcec0
commit 784fe71dd0
@@ -655,18 +655,21 @@ class SoongWorkflowRecord(models.Model):
is_kq_user = bool(kq_group and user in kq_group.users)
company_ids = self.env.companies.ids
conditions = []
# 注意:必须用扁平前缀形式(&/| 放在 domain 顶层),
# 不能把 ['&', ...] 作为子列表元素,否则 Odoo 会把它当叶子、把 & 当成字段名报错。
parts = []
if is_hr_user:
conditions.append(['&', ('approvals_group_id.name', '=', '人事'), ('company_id', 'in', company_ids)])
parts.append(['&', ('approvals_group_id.name', '=', '人事'), ('company_id', 'in', company_ids)])
if is_kq_user:
conditions.append(['&', ('approvals_group_id.name', '=', '考勤'), ('company_id', 'in', company_ids)])
parts.append(['&', ('approvals_group_id.name', '=', '考勤'), ('company_id', 'in', company_ids)])
if not conditions:
if not parts:
# 当前用户不属于任何特殊权限组,恒不满足
domain = [('id', '=', False)]
else:
domain = ['|'] * (len(conditions) - 1)
domain += conditions
domain = ['|'] * (len(parts) - 1)
for grp in parts:
domain += grp
if (operator == '=' and not value) or (operator == '!=' and value):
domain = ['!'] + domain