From ce3b404a5983f03a56ad9cd65a4ae2352db2ba77 Mon Sep 17 00:00:00 2001
From: hanbaoshan <hanbaoshan@aiotlink.com>
Date: 星期五, 06 十一月 2020 14:15:56 +0800
Subject: [PATCH] 集群树节点状态切换查询参数treeNodes错误修复
---
src/Pool/TreeData.ts | 106 +++++++++++++++++++++++++++++++++++++---------------
1 files changed, 75 insertions(+), 31 deletions(-)
diff --git a/src/Pool/TreeData.ts b/src/Pool/TreeData.ts
index 0e77acd..7ab436f 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,8 +112,8 @@
this.selectedNodes = [this.selectedNode.id];
return;
}
-
let _selected = this.selectedNodes;
+ console.log(this.selectedNodes)
function nodeFilter(node: any) {
if (node.type === "4" && node.selected) {
_selected.push(node.id);
@@ -119,20 +125,33 @@
}
}
if (this.selectedNode.cameraType === 0) {
- this.treeData.forEach((n: any) => {
- nodeFilter(n);
- });
+ //鎽勫儚鏈烘爲
+ if(this.treeActiveName == "camera"){
+ this.treeData.forEach((n: any) => {
+ nodeFilter(n);
+ });
+ }else if(this.treeActiveName == "cluster"){
+ //闆嗙兢鏍�
+ this.clusterData.forEach((n: any) => {
+ nodeFilter(n);
+ });
+ }
}
if (this.selectedNode.cameraType === 1) {
this.gb28181Data.forEach((n: any) => {
nodeFilter(n);
});
}
+ // if (this.selectedNode.cameraType === -1) {
+ // this.clusterData.forEach((n: any) => {
+ // nodeFilter(n);
+ // });
+ // }
}
getCameraInfoByIp(ipaddr) {
let camera = null;
-
+
function nodeFilter(node: any) {
if (node.rtsp && node.rtsp.indexOf(ipaddr) != -1) {
camera = node;
@@ -262,32 +281,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 +353,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 +368,7 @@
if (this.openeds[1]) {
this.fetchGbTree()
}
+
this.findAllFile({})
}
--
Gitblit v1.8.0