From 1acb2169d78d74e347bdfc2e962a88e6cb585bb7 Mon Sep 17 00:00:00 2001 From: hanbaoshan <hanbaoshan@aiotlink.com> Date: 星期五, 30 十月 2020 14:22:34 +0800 Subject: [PATCH] 修复数据栈文件删除列表仍有遗留的bug --- src/Pool/TreeData.ts | 89 +++++++++++++++++++++++++++++++------------- 1 files changed, 62 insertions(+), 27 deletions(-) diff --git a/src/Pool/TreeData.ts b/src/Pool/TreeData.ts index 0e77acd..98708da 100644 --- a/src/Pool/TreeData.ts +++ b/src/Pool/TreeData.ts @@ -1,6 +1,7 @@ import { getLocalCameraTree, getGB28181CameraTree, + getClusterTree, addAreaTreeData, delAreaTreeData, updateAreaTreeData, @@ -16,9 +17,11 @@ export default class TreeDataPool { public openeds: Array<boolean>; public treeData: Array<object>; + public clusterData: Array<object>; public gb28181Data: Array<object>; public treeDataPure: Array<object>; public gb28181DataPure: Array<object>; + public clusterDataPure: Array<object>; public videoArr: Array<string | undefined | object>; public searchCamType: number; public searchInput: string; @@ -28,6 +31,7 @@ public readonly: boolean; public gbReadonly: boolean; public multiple: boolean; + public searchFrom: string = ''; public showTreeBox: boolean; public selectedNodes: Array<string>; public selectedNode: any; @@ -64,8 +68,10 @@ this.openeds = [true, true, false]; this.treeData = []; this.gb28181Data = []; + this.clusterData = []; this.treeDataPure = []; this.gb28181DataPure = []; + this.clusterDataPure = []; this.videoArr = [""]; this.searchCamType = 0; this.searchInput = ""; @@ -106,7 +112,6 @@ this.selectedNodes = [this.selectedNode.id]; return; } - let _selected = this.selectedNodes; function nodeFilter(node: any) { if (node.type === "4" && node.selected) { @@ -125,6 +130,11 @@ } if (this.selectedNode.cameraType === 1) { this.gb28181Data.forEach((n: any) => { + nodeFilter(n); + }); + } + if (this.selectedNode.cameraType === -1) { + this.clusterData.forEach((n: any) => { nodeFilter(n); }); } @@ -262,32 +272,66 @@ }) } - async fetchLocalTree() { - const rsp: any = await getLocalCameraTree({ - searchType: this.searchCamType, - cameraName: this.searchInput + sortTreeData(node) { + if (!node) { + return + } + node.sort(function (obj1: any, obj2: any) { + var val1 = obj1.name; + var val2 = obj2.name; + if (val1 < val2) { + return -1; + } else if (val1 > val2) { + return 1; + } else { + return 0; + } }); + + node.forEach(n => { + if (n.children && n.children.length > 0) { + this.sortTreeData(n.children) + } + }) + } + + async fetchLocalTree() { + let params: any = { + searchType: this.searchCamType, + cameraName: this.searchInput, + //isPlatform: 1 + }; + if (this.searchFrom == 'cluster') { + params.isPlatform = 1 + } + const rsp: any = await getLocalCameraTree(params); if (rsp && rsp.success) { this.treeData = rsp.data ? rsp.data : [] if (this.treeData && this.treeData.length > 0) { - this.treeData.sort(function (obj1: any, obj2: any) { - var val1 = obj1.id; - var val2 = obj2.id; - if (val1 < val2) { - return -1; - } else if (val1 > val2) { - return 1; - } else { - return 0; - } - }); + this.sortTreeData(this.treeData) } // 璁剧疆绂佹鎷栨嫿鎽勫儚鏈哄埌鎽勫儚鏈鸿妭鐐� this.setDropDisable(this.treeData) this.treeDataPure = JSON.parse(JSON.stringify(this.treeData)); this.isFold(this.treeData) + } + } + + async fetchClusterTree() { + const rsp: any = await getClusterTree({ + searchType: this.searchCamType, + cameraName: this.searchInput + }); + if (rsp && rsp.success) { + console.log(rsp.data); + this.clusterData = rsp.data ? rsp.data : [] + if (this.clusterData && this.clusterData.length > 0) { + this.sortTreeData(this.clusterData) + } + this.clusterDataPure = JSON.parse(JSON.stringify(this.clusterData)); + this.isFold(this.clusterData) } } @@ -300,17 +344,7 @@ if (rsp && rsp.success) { this.gb28181Data = rsp.data ? rsp.data : [] if (this.gb28181Data && this.gb28181Data.length > 0) { - this.gb28181Data.sort(function (obj1: any, obj2: any) { - var val1 = obj1.id; - var val2 = obj2.id; - if (val1 < val2) { - return -1; - } else if (val1 > val2) { - return 1; - } else { - return 0; - } - }); + this.sortTreeData(this.gb28181Data) } this.gb28181DataPure = JSON.parse(JSON.stringify(this.gb28181Data)); @@ -325,6 +359,7 @@ if (this.openeds[1]) { this.fetchGbTree() } + this.findAllFile({}) } -- Gitblit v1.8.0