From 649a012bd1f445afd51e3aad8e137d43c36434e0 Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期五, 05 八月 2022 11:48:21 +0800 Subject: [PATCH] 检索导出添加组织字段 --- src/Pool/TreeData.ts | 114 ++++++++++++++++++++++++++++++--------------------------- 1 files changed, 60 insertions(+), 54 deletions(-) diff --git a/src/Pool/TreeData.ts b/src/Pool/TreeData.ts index 1ff4151..16b1ca3 100644 --- a/src/Pool/TreeData.ts +++ b/src/Pool/TreeData.ts @@ -9,9 +9,9 @@ refreshGB28181Tree, updateCameraArea, getCameraBaseImage -} from '@/api/area' +} from "@/api/area" -import {getClusterDevList} from '@/api/clusterManage' +import { getClusterDevList } from "@/api/clusterManage" export default class TreeDataPool { public openeds: Array<boolean> @@ -32,7 +32,7 @@ public readonly: boolean public gbReadonly: boolean public multiple: boolean - public searchFrom: string = '' + public searchFrom: string = "" public showTreeBox: boolean public selectedNodes: Array<string> public selectedNode: any @@ -70,6 +70,8 @@ public clusterId: string public devId: string + // 璁板綍鎽勫儚鏈烘墍灞炵殑鐖惰妭鐐瑰悕绉� + public cameraParents: object constructor() { this.openeds = [true, true, false] @@ -80,11 +82,11 @@ this.treeDataPure = [] this.gb28181DataPure = [] this.clusterDataPure = [] - this.videoArr = [''] + this.videoArr = [""] this.searchCamType = 0 - this.searchInput = '' - this.activeVideoIndex = '' - this.activeVideoId = '' + this.searchInput = "" + this.activeVideoIndex = "" + this.activeVideoId = "" this.activeForceChoose = false this.showTreeBox = true this.readonly = true @@ -92,15 +94,15 @@ this.multiple = false this.selectedNodes = [] this.selectedNode = {} - this.treeType = '' + this.treeType = "" this.foldNodeList = {} - this.treeActiveName = 'camera' + this.treeActiveName = "camera" this.searchLocalType = 0 //1:鏆傚仠鐘舵�侊紱2锛氱瓑寰呯姸鎬�;3:缃伆 - this.btnStaus = '3' - this.ctrlCameraId = '' - this.ctrlCameraName = '' + this.btnStaus = "3" + this.ctrlCameraId = "" + this.ctrlCameraName = "" this.zTree = false this.checkedTreeNode = [] this.gb28181CheckedCount = 0 @@ -109,13 +111,11 @@ this.cameraNameForBaseImage = "" this.gb28181CameraBaseImage = "" this.baseImageLoading = false - this.activeNode = '' - this.clusterId = '' - this.devId = '' - - + this.activeNode = "" + this.clusterId = "" + this.devId = "" + this.cameraParents = {} } - setVideoArr(index: number, value: object, vue: any): void { vue.$set(this.videoArr, index, value) @@ -130,9 +130,9 @@ } let _selected = this.selectedNodes function nodeFilter(node: any) { - if (node.type === '4' && node.selected) { + if (node.type === "4" && node.selected) { _selected.push(node.id) - sessionStorage.setItem('cameraDevId',node.devId) + sessionStorage.setItem("cameraDevId", node.devId) } if (node.children) { node.children.forEach((n: any) => { @@ -142,11 +142,11 @@ } if (this.selectedNode.cameraType === 0) { //鎽勫儚鏈烘爲 - if (this.treeActiveName == 'camera') { + if (this.treeActiveName == "camera") { this.treeData.forEach((n: any) => { nodeFilter(n) }) - } else if (this.treeActiveName == 'cluster') { + } else if (this.treeActiveName == "cluster") { //闆嗙兢鏍� this.clusterData.forEach((n: any) => { nodeFilter(n) @@ -174,8 +174,8 @@ } function nodeFilter(node: any) { - if (node.type === '4' && (node.selected || node.checked)) { - sessionStorage.setItem("cameraDevId", node.devId); + if (node.type === "4" && (node.selected || node.checked)) { + sessionStorage.setItem("cameraDevId", node.devId) _this.selectedNodes.push(node.id) } if (node.children) { @@ -247,7 +247,7 @@ } getParent(id: string, isGB: boolean): string { - let parent = '0' + let parent = "0" function nodeFilter(node: Array<any>): any { for (let i = 0; i < node.length; i++) { @@ -283,10 +283,10 @@ } cleanTree(tree) { - if (tree === 'localTree') { + if (tree === "localTree") { this.treeData = JSON.parse(JSON.stringify(this.treeDataPure)) } - if (tree === 'gb28182Tree') { + if (tree === "gb28182Tree") { this.gb28181Data = JSON.parse(JSON.stringify(this.gb28181DataPure)) } } @@ -295,7 +295,7 @@ if (!node) { return } - node.forEach(n => { + node.forEach((n) => { // vue-js-tree 榛樿灞曞紑,鎺у埗閮ㄥ垎鎶樺彔. z-tree 榛樿鎶樺彔, 鎺у埗閮ㄥ垎灞曞紑 if (this.foldNodeList[n.id]) { if (this.zTree) { @@ -314,22 +314,22 @@ if (!node) { return } - node.forEach(n => { + node.forEach((n) => { if (n.children && n.children.length > 0) { this.setDropDisable(n.children) } else { - if (n.type === '4') { + if (n.type === "4") { n.dropDisabled = true } } }) } - sortTreeData(node) { + sortTreeData(node, parentName = "") { if (!node) { return } - node.sort(function (obj1: any, obj2: any) { + node.sort(function(obj1: any, obj2: any) { var val1 = obj1.name var val2 = obj2.name if (val1 < val2) { @@ -341,36 +341,41 @@ } }) - node.forEach(n => { + node.forEach((n) => { if (n.children && n.children.length > 0) { if (this.zTree) { n.open = true } - this.sortTreeData(n.children) + let pname = parentName === "" ? n.name : parentName + "/" + n.name + // console.log("pname", pname) + this.sortTreeData(n.children, pname) + } else { + if (n.type != "MENU") { + this.cameraParents[n.id] = parentName + } } }) } async fetchLocalTree() { let params: any = { - parentId:"", + parentId: "", searchType: this.searchCamType, - cameraName: this.searchInput, - + cameraName: this.searchInput + //isPlatform: 1 } - if (this.searchFrom == 'cluster') { + if (this.searchFrom == "cluster") { params.isPlatform = 1 } - const rsp: any = await getLocalCameraTree(params) if (rsp && rsp.success) { - this.treeData = rsp.data.treeMenu ? rsp.data.treeMenu : [] if (this.treeData && this.treeData.length > 0) { this.sortTreeData(this.treeData) + // console.log("cameraParents", this.cameraParents) } // 璁剧疆绂佹鎷栨嫿鎽勫儚鏈哄埌鎽勫儚鏈鸿妭鐐� @@ -414,6 +419,7 @@ } async fetchTreeData() { + this.cameraParents = {} if (this.openeds[0]) { this.fetchLocalTree() } @@ -425,7 +431,7 @@ async add(name: string, parent: string) { await addAreaTreeData({ name: name, - parentId: parent, + parentId: parent }) this.fetchTreeData() @@ -433,7 +439,7 @@ async del(id: string) { await delAreaTreeData({ - id: id, + id: id }) this.fetchTreeData() @@ -444,7 +450,7 @@ id: id, name: name, parentId: this.getParent(id, isGb), - alias: alias, + alias: alias }) this.fetchTreeData() @@ -461,20 +467,20 @@ getAllChildrenNodes(treeNode, arr) { for (var i = 0; i < treeNode.length; i++) { - var sonList = treeNode[i].children; + var sonList = treeNode[i].children if (!sonList) { if (treeNode[i].type == "camera") { - arr.push(treeNode[i]); + arr.push(treeNode[i]) if (treeNode[i].checked) { - this.gb28181CheckedCount += 1; + this.gb28181CheckedCount += 1 } } } else { - this.getAllChildrenNodes(sonList, arr); + this.getAllChildrenNodes(sonList, arr) } } - return arr; + return arr } countChildrenNodes(treeNode) { let arry = [] @@ -490,8 +496,8 @@ fn = refreshGB28181Tree } const rsp: any = await fn({ - clusterId:this.clusterId, - devId:this.devId, + clusterId: this.clusterId, + devId: this.devId }) if (rsp && rsp.success) { @@ -512,7 +518,7 @@ } removeNoCheckedNode(nodes: Array<any>) { - for (let i = 0; i < nodes.length;) { + for (let i = 0; i < nodes.length; ) { if (!nodes[i].checked) { nodes.splice(i, 1) continue @@ -527,7 +533,7 @@ countCheckedNodes(nodes: Array<any>) { let count = 0 - nodes.forEach(n => { + nodes.forEach((n) => { if (n.type == "camera") { count++ } @@ -548,10 +554,10 @@ this.cameraNameForBaseImage = node.name try { - const rsp: any = await getCameraBaseImage({ + const rsp: any = await getCameraBaseImage({ id: node.id, clusterId: this.clusterId, - devId: this.devId, + devId: this.devId }) if (rsp && rsp.data) { -- Gitblit v1.8.0