From 0175cda6150656bc74b34c6f6c71edd1e1fc653c Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期四, 04 二月 2021 18:22:54 +0800
Subject: [PATCH] treee, 修复tab切换时树的选中状态.添加区域

---
 src/pages/visual/Pool/TreeData.ts |   57 +++++++++++++++++++++++++++++++++------------------------
 1 files changed, 33 insertions(+), 24 deletions(-)

diff --git a/src/pages/visual/Pool/TreeData.ts b/src/pages/visual/Pool/TreeData.ts
index 7990707..d6097a0 100644
--- a/src/pages/visual/Pool/TreeData.ts
+++ b/src/pages/visual/Pool/TreeData.ts
@@ -119,26 +119,43 @@
     }
   }
 
+  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,
-      cameraName: this.searchInput
+      cameraName: this.searchInput,
+      isPlatform: 1
     });
 
     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));
     }
   }
@@ -151,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