fix: The name of the loop body is not fixed (#4167)
Some checks are pending
sync2gitee / repo-sync (push) Waiting to run
Typos Check / Spell Check with Typos (push) Waiting to run

This commit is contained in:
shaohuzhang1 2025-10-10 11:54:16 +08:00 committed by GitHub
parent 37e506fc98
commit f59648b817
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 19 additions and 15 deletions

View File

@ -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<any>, 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<any>, 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') {

View File

@ -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)