From 68fe1629ea048cf3b806b700f9934f990aa4bfdf Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期四, 17 九月 2020 16:52:45 +0800
Subject: [PATCH] 可视化摄像机树排序,取消图标隐藏

---
 src/pages/visual/Pool/TreeData.ts |   54 +++++++++++++++++++++++++++++++-----------------------
 1 files changed, 31 insertions(+), 23 deletions(-)

diff --git a/src/pages/visual/Pool/TreeData.ts b/src/pages/visual/Pool/TreeData.ts
index da3b7a7..d6097a0 100644
--- a/src/pages/visual/Pool/TreeData.ts
+++ b/src/pages/visual/Pool/TreeData.ts
@@ -119,6 +119,29 @@
     }
   }
 
+  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() {
     const rsp: any = await getLocalCameraTree({
       searchType: this.searchCamType,
@@ -127,19 +150,12 @@
     });
 
     if (rsp && rsp.success) {
-      this.treeData = rsp.data
-      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.treeData = rsp.data ? rsp.data : []
+      if (this.treeData && this.treeData.length > 0) {
+        this.sortTreeData(this.treeData)
+      }
 
+      // 璁剧疆绂佹鎷栨嫿鎽勫儚鏈哄埌鎽勫儚鏈鸿妭鐐�
       this.treeDataPure = JSON.parse(JSON.stringify(this.treeData));
     }
   }
@@ -152,17 +168,9 @@
 
     if (rsp && rsp.success) {
       this.gb28181Data = rsp.data
-      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;
-        }
-      });
+      if (this.gb28181Data && this.gb28181Data.length > 0) {
+        this.sortTreeData(this.gb28181Data)
+      }
 
       this.gb28181DataPure = JSON.parse(JSON.stringify(this.gb28181Data));
     }

--
Gitblit v1.8.0