Skip to content

Commit ac6ec0f

Browse files
committed
fix: Error displaying execution details for assigning loop node variables
1 parent 80da909 commit ac6ec0f

File tree

2 files changed

+25
-9
lines changed

2 files changed

+25
-9
lines changed

ui/src/workflow/nodes/loop-body-node/index.vue

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,9 @@ const renderGraphData = (data?: any) => {
126126
}
127127
}
128128
lf.value.graphModel.refresh_loop_fields = refresh_loop_fields
129+
lf.value.graphModel.get_parent_nodes = () => {
130+
return props.nodeModel.graphModel.nodes
131+
}
129132
lf.value.graphModel.get_up_node_field_list = props.nodeModel.get_up_node_field_list
130133
lf.value.batchRegister([...Object.keys(nodes).map((key) => nodes[key].default), AppEdge])
131134
lf.value.setDefaultEdgeType('app-edge')

ui/src/workflow/nodes/variable-assign-node/index.vue

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,15 @@
5656
v-model="item.type"
5757
style="max-width: 85px"
5858
class="mr-8"
59-
@change="(val: string) => {
60-
if (val === 'bool') {
61-
form_data.variable_list[index].value = true;
62-
} else {
63-
form_data.variable_list[index].value = null;
59+
@change="
60+
(val: string) => {
61+
if (val === 'bool') {
62+
form_data.variable_list[index].value = true
63+
} else {
64+
form_data.variable_list[index].value = null
65+
}
6466
}
65-
}"
67+
"
6668
>
6769
<el-option v-for="item in typeOptions" :key="item" :label="item" :value="item" />
6870
</el-select>
@@ -166,11 +168,12 @@
166168
import { cloneDeep, set } from 'lodash'
167169
import NodeContainer from '@/workflow/common/NodeContainer.vue'
168170
import NodeCascader from '@/workflow/common/NodeCascader.vue'
169-
import { computed, nextTick, onMounted, ref } from 'vue'
171+
import { computed, nextTick, onMounted, ref, inject } from 'vue'
170172
import { isLastNode } from '@/workflow/common/data'
171173
import { randomId } from '@/utils/common'
172174
import { t } from '@/locales'
173-
175+
import { WorkflowMode } from '@/enums/application'
176+
const workflowMode = inject('workflowMode') as WorkflowMode
174177
const props = defineProps<{ nodeModel: any }>()
175178
176179
const typeOptions = ['string', 'num', 'json', 'bool']
@@ -257,7 +260,10 @@ function deleteVariable(index: number) {
257260
}
258261
259262
function variableChange(item: any) {
260-
props.nodeModel.graphModel.nodes.map((node: any) => {
263+
;(workflowMode == WorkflowMode.ApplicationLoop
264+
? [...props.nodeModel.graphModel.nodes, ...props.nodeModel.graphModel.get_parent_nodes()]
265+
: props.nodeModel.graphModel.nodes
266+
).map((node: any) => {
261267
if (node.id === 'start-node') {
262268
node.properties.config.globalFields.forEach((field: any) => {
263269
if (field.value === item.fields[1]) {
@@ -270,6 +276,13 @@ function variableChange(item: any) {
270276
}
271277
})
272278
}
279+
if (node.id === 'loop-start-node') {
280+
node.properties.loop_input_field_list.forEach((field: any) => {
281+
if (field.field === item.fields[1]) {
282+
item.name = field.label
283+
}
284+
})
285+
}
273286
})
274287
}
275288

0 commit comments

Comments
 (0)