From 733c78f0f1cc0c3b23039d9856fb9257d7acd427 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, 11 Sep 2025 11:09:00 +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 --- .../models/soong_workflow_record.py | 36 +++++++++++++------ 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/soong_workflow/models/soong_workflow_record.py b/soong_workflow/models/soong_workflow_record.py index 180cde344..00b4fbd5f 100644 --- a/soong_workflow/models/soong_workflow_record.py +++ b/soong_workflow/models/soong_workflow_record.py @@ -66,23 +66,37 @@ class SoongWorkflowRecord(models.Model): log_records = record_id.log_ids2 elif record_id.log_ids: log_records = record_id.log_ids + log_model = None + if record_id.log_ids2: + log_model = "soong.workflow.log2" + elif record_id.log_ids: + log_model = "soong.workflow.log" last_log = log_records[-1:] if last_log: last_log.write({ 'approval_state': '3', 'lase_click_date': current_datetime, }) - end_node = self.env["soong.workflow.node"].search( - [('workflow_id', '=', workflow.workflow_id.id), ('is_end', '=', True)], - limit=1 - ) - end_btn = self.env["soong.workflow.node.button"].search( - [('node_id', '=', end_node.id), - ('name', '=', '结束')], - limit=1 - ) - if end_btn: - self.execute_button_code(end_btn.id, workflow.res_model, workflow.res_id) + else: + self.env[log_model].create({ + 'workflow_id': workflow.workflow_id.id, + 'model': workflow.res_model, + 'res_id': workflow.res_id, + 'approval_state': '3', + 'lase_click_date': current_datetime, + 'sequence': 99, + }) + end_node = self.env["soong.workflow.node"].search( + [('workflow_id', '=', workflow.workflow_id.id), ('is_end', '=', True)], + limit=1 + ) + end_btn = self.env["soong.workflow.node.button"].search( + [('node_id', '=', end_node.id), + ('name', '=', '结束')], + limit=1 + ) + if end_btn: + self.execute_button_code(end_btn.id, workflow.res_model, workflow.res_id) workflow.approve_state = 'end' def execute_button_code(self, button_id, res_model, res_id):