From 2ca4502303958843a3af110ae725622cf4bce234 Mon Sep 17 00:00:00 2001 From: shaohuzhang1 <80892890+shaohuzhang1@users.noreply.github.com> Date: Thu, 23 Jan 2025 17:06:58 +0800 Subject: [PATCH] fix: Workflow execution logic error (#2091) --- .../step_node/function_lib_node/impl/base_function_lib_node.py | 2 +- .../flow/step_node/function_node/impl/base_function_node.py | 2 +- apps/application/flow/workflow_manage.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/application/flow/step_node/function_lib_node/impl/base_function_lib_node.py b/apps/application/flow/step_node/function_lib_node/impl/base_function_lib_node.py index f4c5b53ee..4f5399f6b 100644 --- a/apps/application/flow/step_node/function_lib_node/impl/base_function_lib_node.py +++ b/apps/application/flow/step_node/function_lib_node/impl/base_function_lib_node.py @@ -93,7 +93,7 @@ def convert_value(name: str, value, _type, is_required, source, node): class BaseFunctionLibNodeNode(IFunctionLibNode): def save_context(self, details, workflow_manage): self.context['result'] = details.get('result') - self.answer_text = details.get('result') + self.answer_text = str(details.get('result')) def execute(self, function_lib_id, input_field_list, **kwargs) -> NodeResult: function_lib = QuerySet(FunctionLib).filter(id=function_lib_id).first() diff --git a/apps/application/flow/step_node/function_node/impl/base_function_node.py b/apps/application/flow/step_node/function_node/impl/base_function_node.py index e9aac69dc..12e07927a 100644 --- a/apps/application/flow/step_node/function_node/impl/base_function_node.py +++ b/apps/application/flow/step_node/function_node/impl/base_function_node.py @@ -80,7 +80,7 @@ def convert_value(name: str, value, _type, is_required, source, node): class BaseFunctionNodeNode(IFunctionNode): def save_context(self, details, workflow_manage): self.context['result'] = details.get('result') - self.answer_text = details.get('result') + self.answer_text = str(details.get('result')) def execute(self, input_field_list, code, **kwargs) -> NodeResult: params = {field.get('name'): convert_value(field.get('name'), field.get('value'), field.get('type'), diff --git a/apps/application/flow/workflow_manage.py b/apps/application/flow/workflow_manage.py index 0f565de66..7ed0de42e 100644 --- a/apps/application/flow/workflow_manage.py +++ b/apps/application/flow/workflow_manage.py @@ -588,7 +588,7 @@ class WorkflowManage: details['node_id'] = node.id details['up_node_id_list'] = node.up_node_id_list details['runtime_node_id'] = node.runtime_node_id - details_result[str(uuid.uuid1())] = details + details_result[node.runtime_node_id] = details return details_result def get_answer_text_list(self):