From f59648b8177365c7346f5b993cc827e5280a93e0 Mon Sep 17 00:00:00 2001 From: shaohuzhang1 <80892890+shaohuzhang1@users.noreply.github.com> Date: Fri, 10 Oct 2025 11:54:16 +0800 Subject: [PATCH] fix: The name of the loop body is not fixed (#4167) --- ui/src/workflow/common/app-node.ts | 29 ++++++++++--------- ui/src/workflow/nodes/loop-body-node/index.ts | 5 +++- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/ui/src/workflow/common/app-node.ts b/ui/src/workflow/common/app-node.ts index cdede831b..e217d4b07 100644 --- a/ui/src/workflow/common/app-node.ts +++ b/ui/src/workflow/common/app-node.ts @@ -12,19 +12,7 @@ import { nodeDict } from '@/workflow/common/data' import { isActive, connect, disconnect } from './teleport' import { t } from '@/locales' import { type Dict } from '@/api/type/common' -const getNodeName = (nodes: Array, baseName: string) => { - let index = 0 - let name = baseName - while (true) { - if (index > 0) { - name = baseName + index - } - if (!nodes.some((node: any) => node.properties.stepName === name.trim())) { - return name - } - index++ - } -} + class AppNode extends HtmlResize.view { isMounted r?: any @@ -45,7 +33,7 @@ class AppNode extends HtmlResize.view { if (props.model.properties.noRender) { delete props.model.properties.noRender } else { - props.model.properties.stepName = getNodeName( + props.model.properties.stepName = this.getNodeName( props.graphModel.nodes.filter((node: any) => node.id !== props.model.id), props.model.properties.stepName, ) @@ -56,6 +44,19 @@ class AppNode extends HtmlResize.view { props.model.height = props.model.properties.height } } + getNodeName(nodes: Array, baseName: string) { + let index = 0 + let name = baseName + while (true) { + if (index > 0) { + name = baseName + index + } + if (!nodes.some((node: any) => node.properties.stepName === name.trim())) { + return name + } + index++ + } + } get_node_field_list() { const result = [] if (this.props.model.type === 'start-node') { diff --git a/ui/src/workflow/nodes/loop-body-node/index.ts b/ui/src/workflow/nodes/loop-body-node/index.ts index fb34bf2e9..c4558fbaf 100644 --- a/ui/src/workflow/nodes/loop-body-node/index.ts +++ b/ui/src/workflow/nodes/loop-body-node/index.ts @@ -1,10 +1,13 @@ -import { WorkflowMode } from './../../../enums/application' import LoopNode from './index.vue' +import { t } from '@/locales' import { AppNode, AppNodeModel } from '@/workflow/common/app-node' class LoopBodyNodeView extends AppNode { constructor(props: any) { super(props, LoopNode) } + getNodeName() { + return t('views.applicationWorkflow.nodes.loopBodyNode.label') + } get_up_node_field_list(contain_self: boolean, use_cache: boolean) { const loop_node_id = this.props.model.properties.loop_node_id const loop_node = this.props.graphModel.getNodeModelById(loop_node_id)