From 051024a0ce6e36c4de5593b9c282fd65bc14af5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=B9=8F=E5=AE=87?= <9664676+pengyuthon@user.noreply.gitee.com> Date: Thu, 12 Mar 2026 18:19:21 +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/models/soong_workflow_mixin.py | 10 ++++++++++ soong_workflow/wizard/soong_workflow_comment_wizard.py | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/soong_workflow/models/soong_workflow_mixin.py b/soong_workflow/models/soong_workflow_mixin.py index 9c61ac1fc..b17b8a4ec 100644 --- a/soong_workflow/models/soong_workflow_mixin.py +++ b/soong_workflow/models/soong_workflow_mixin.py @@ -160,6 +160,16 @@ class SoongWorkflowMixin(models.AbstractModel): for record in self: record.is_confirm = False record.is_end = False + target_models = ['yuthon.official.incoming.normal', 'yuthon.sub.enterprises'] + if record._name in target_models: + chairman_logs = record.log_ids.filtered( + lambda log: '董事长' in (log.name or '') + and log.approval_state in ['0', '1'] + ) + if chairman_logs: + record.is_end = True + continue + log_ids_domain = [ ('done_by', '=', self.env.user.id), ('workflow_id', '=', record.workflow_id.id), diff --git a/soong_workflow/wizard/soong_workflow_comment_wizard.py b/soong_workflow/wizard/soong_workflow_comment_wizard.py index 84a82b859..1746c7ea7 100644 --- a/soong_workflow/wizard/soong_workflow_comment_wizard.py +++ b/soong_workflow/wizard/soong_workflow_comment_wizard.py @@ -793,7 +793,7 @@ class SoongWorkflowCommentWizard(models.TransientModel): }) else: if workflow_record: - workflow_record.write({ + workflow_record.sudo().write({ 'approve_state': 'end', 'employee_ids': False, 'node_id': False,