diff --git a/frontend/src/views/panel/filter/filterDialog.vue b/frontend/src/views/panel/filter/filterDialog.vue index 0deed2a382..5f9f3575cc 100644 --- a/frontend/src/views/panel/filter/filterDialog.vue +++ b/frontend/src/views/panel/filter/filterDialog.vue @@ -15,32 +15,19 @@
- - - - - - +
+ + {{ node.label }} +
+
-
+
item.type === 'view' && item.propValue && item.propValue.viewId) @@ -323,10 +321,32 @@ export default { }) }, handleNodeClick(data) { - if (data.type === 'scene') { - this.showSceneTable(data) + if (data.type !== 'group') { + this.showFieldDatas(data) } }, + loadTree(node, resolve) { + if (!this.isTreeSearch) { + if (node.level > 0) { + if (node.data.id) { + post('/dataset/table/listAndGroup', { + sort: 'type asc,name asc,create_time desc', + sceneId: node.data.id + }).then(res => { + resolve(res.data) + }) + } + } + } else { + resolve(node.data.children) + } + }, + treeNode(group) { + post('/dataset/group/treeNode', group).then(res => { + this.defaultDatas = res.data + this.datas = res.data + }) + }, loadDataSetTree() { groupTree({}).then(res => { const datas = res.data @@ -334,25 +354,7 @@ export default { this.data = datas }) }, - renderNode(h, { node, data, store }) { - return ( -
- { data.type === 'scene' ? ( - - ) : ( - '' - )} - {node.label} -
- ) - }, - showSceneTable(node) { - this.showDomType = 'db' - this.setTailLink(node) - this.addTail(node) - this.loadTable(node.id) - }, setTailLink(node) { const tail = this.dataSetBreads[this.dataSetBreads.length - 1] tail.type = node.type @@ -389,26 +391,30 @@ export default { this.componentSetBreads[this.componentSetBreads.length - 1]['link'] = false }, backToLink(bread) { - if (bread.type === 'db') { - this.showDomType = 'db' - } else { - this.showDomType = 'tree' - } + // if (bread.type === 'field') { + // this.showDomType = 'db' + // } else { + // this.showDomType = 'tree' + // } + this.showDomType = 'tree' this.removeTail(bread) + this.$nextTick(() => { + this.datas = JSON.parse(JSON.stringify(this.defaultDatas)) + }) }, comBackLink(bread) { this.comShowDomType = 'view' this.comRemoveTail() }, - loadTable(sceneId) { - loadTable({ sceneId: sceneId, sort: 'type asc,create_time desc,name asc' }).then(res => { - res && res.data && (this.sceneDatas = res.data.map(tb => { - tb.type = 'db' - return tb - })) - }) - }, + // loadTable(sceneId) { + // loadTable({ sceneId: sceneId, sort: 'type asc,create_time desc,name asc' }).then(res => { + // res && res.data && (this.sceneDatas = res.data.map(tb => { + // tb.type = 'db' + // return tb + // })) + // }) + // }, loadField(tableId) { fieldList(tableId).then(res => {