diff --git a/core/frontend/src/views/chart/view/ChartEdit.vue b/core/frontend/src/views/chart/view/ChartEdit.vue index c2ae9bb3c6..49e41e1158 100644 --- a/core/frontend/src/views/chart/view/ChartEdit.vue +++ b/core/frontend/src/views/chart/view/ChartEdit.vue @@ -1097,13 +1097,15 @@ > {{ $t('chart.result_filter') }} - 已设置 + 已设置
{ + if (next.id !== 'count') { + pre[next.id] = next + } + return pre + }, {}) + } }, methods: { closeFilter() { @@ -54,15 +65,39 @@ export default { }) return } + this.dfsTreeDelete(items) this.$emit('filter-data', { logic, items }) this.dialogVisible = false - }, - init(tree) { - this.dialogVisible = true - this.$nextTick(() => { - this.$refs.rowAuth.init(tree || {}) - }) - } + }, + dfsTreeDelete(arr) { + arr.forEach((ele) => { + if (ele?.subTree?.items?.length) { + this.dfsTreeDelete(ele.subTree.items) + } else { + if (ele.field) { + this.$delete(ele, 'field') + } + } + }) + }, + dfsTree(arr) { + arr.forEach((ele) => { + if (ele?.subTree?.items?.length) { + this.dfsTree(ele.subTree.items) + } else { + if (this.computedFiledList[ele.fieldId]) { + ele.field = this.computedFiledList[ele.fieldId] + } + } + }) + }, + init(tree) { + this.dialogVisible = true + this.$nextTick(() => { + this.dfsTree(tree.items || []) + this.$refs.rowAuth.init(tree || {}) + }) + } } }