From bf3dd98aa69ea330264ab778a36cb852733b2fcc 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: Wed, 11 Mar 2026 18:42:18 +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.py | 14 +++++++++++++- soong_workflow/models/soong_workflow_node.py | 7 +++++++ soong_workflow/views/soong_workflow_views.xml | 7 +++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/soong_workflow/models/soong_workflow.py b/soong_workflow/models/soong_workflow.py index 573f9c08a..be889b2fa 100644 --- a/soong_workflow/models/soong_workflow.py +++ b/soong_workflow/models/soong_workflow.py @@ -87,7 +87,19 @@ class SoongWorkflow(models.Model): note_text_to_rec[opinion_text] = note_rec node.write({field_name: note_rec.id}) - + def update_confirm(self): + soong_ids = self.env["soong.workflow"].browse( + self._context.get('active_ids', self._context.get('active_id')) + ) + for node in soong_ids.node_ids: + confirm_buttons = node.button_ids.filtered(lambda btn: btn.name == '确认') + if not confirm_buttons: + self.env['soong.workflow.node.button'].create({ + 'node_id': node.id, + 'name': '确认', + 'action_type': 'code', + "has_comment": True + }) def change_opinions_wizard(self): soong_ids = self.env["soong.workflow"].browse( diff --git a/soong_workflow/models/soong_workflow_node.py b/soong_workflow/models/soong_workflow_node.py index b295d867b..d90520cc0 100644 --- a/soong_workflow/models/soong_workflow_node.py +++ b/soong_workflow/models/soong_workflow_node.py @@ -260,8 +260,15 @@ class SoongWorkflowNode(models.Model): "workflow_id": record.workflow_id.id, "sequence": 2, "action_type": "code", + "has_comment": True}), + (0, 0, { + "name": _("确认"), + "workflow_id": record.workflow_id.id, + "sequence": 2, + "action_type": "code", "has_comment": True}) ]}) + # 运行时执行加载所有form,并且只读 model_id = self.env['soong.workflow'].search([('id', '=', record.workflow_id.id), ('is_enable', '=', True)]).model_id form_view = self.env["ir.ui.view"].search([("model", "=", model_id.model), ("type", "=", "form")], limit=1) diff --git a/soong_workflow/views/soong_workflow_views.xml b/soong_workflow/views/soong_workflow_views.xml index 9411c2e30..555bb8652 100644 --- a/soong_workflow/views/soong_workflow_views.xml +++ b/soong_workflow/views/soong_workflow_views.xml @@ -122,4 +122,11 @@ code action = model.change_opinions_wizard() + + 一次性 + + + code + action = model.update_confirm() +