From f20a554bdb24e9dfde9dc6a69d78595944f61d15 Mon Sep 17 00:00:00 2001
From: mark <mark18340872469@163.com>
Date: 星期二, 25 十月 2022 14:53:57 +0800
Subject: [PATCH] 设备管理 样式调整

---
 src/views/hashrate/CameraManage/index.vue |   76 ++++++++++++++++++++++++++++----------
 1 files changed, 56 insertions(+), 20 deletions(-)

diff --git a/src/views/hashrate/CameraManage/index.vue b/src/views/hashrate/CameraManage/index.vue
index c8ab02e..b738df9 100644
--- a/src/views/hashrate/CameraManage/index.vue
+++ b/src/views/hashrate/CameraManage/index.vue
@@ -66,6 +66,7 @@
       activeTab: "淇℃伅缁存姢",
       clusterArr: [],
       cluster: "",
+      clusterData: [],
       intervalTimer: null,
       leftWith: 0,
       screenHeight: 0,
@@ -77,31 +78,45 @@
   },
 
   watch: {
-    "TreeDataPool.selectedNode": function (node) {
-      if (this.TreeDataPool.multiple) {
-        return;
-      }
-
+    "TreeDataPool.activeNode": function (node) {
+      sessionStorage.setItem("cameraDevId", node.devId);
       if (this.activeTab == "淇℃伅缁存姢") {
         if (this.TreeDataPool.treeActiveName == "camera") {
           this.$refs.cameraInfo.selectCamera(node);
         }
       } else if (this.activeTab === "鍦烘櫙閰嶇疆") {
         this.$refs.sepRule.initCameraData(node.id);
+        if (!this.TreeDataPool.multiple) {
+          this.$refs.sepRule.showRules(node.id);
+        }
       }
     },
     "TreeDataPool.selectedNodes": {
-      handler(nodes) {
+      handler(nodes, oldVal) {
         if (this.activeTab == "鍦烘櫙閰嶇疆") {
           //  this.$refs.sepRule.initCameraData(nodes[nodes.length - 1]);
           let CameraArr = [];
+          let CameraIds = [];
 
           nodes.forEach((id) => {
             let newCamera = new VideoRuleData(id);
             CameraArr.push(newCamera);
+            CameraIds.push(id);
           });
 
           this.$refs.sepRule.Carmeras = CameraArr;
+          if (
+            nodes.length == 1 &&
+            oldVal.length == 1 &&
+            nodes[0] == oldVal[0]
+          ) {
+            return;
+          }
+          if (this.TreeDataPool.multiple && oldVal[0]) {
+            this.$refs.sepRule.showRules(CameraIds);
+          }
+
+          console.log(CameraArr);
         }
       },
       deep: true,
@@ -124,7 +139,6 @@
   },
   created() {
     this.getCluster();
-    this.PollData.statistics();
     this.TreeDataPool.readonly = false;
 
     //  this.TreeDataPool.readonly = true;
@@ -132,9 +146,10 @@
     this.TreeDataPool.multiple = false;
     this.TreeDataPool.selectedNode = "";
     this.selectedNodes = [];
-    this.VideoManageData.init();
   },
   beforeDestroy() {
+    sessionStorage.removeItem("devId");
+    sessionStorage.removeItem("clusterId");
     clearInterval(this.intervalTimer);
     //this.TreeDataPool.treeActiveName = "camera";
   },
@@ -148,12 +163,6 @@
       });
       this.TreeDataPool.clean();
     });
-
-    let _this = this;
-    _this.PollData.statisticTaskInfo();
-    this.intervalTimer = setInterval(() => {
-      _this.PollData.statisticTaskInfo();
-    }, 10000);
   },
   methods: {
     handAddDevice(node) {
@@ -183,6 +192,7 @@
       } else if (tab === "鍦烘櫙閰嶇疆") {
         if (this.TreeDataPool.treeActiveName == "camera") {
           this.$refs.sepRule.initCameraData(this.TreeDataPool.selectedNode.id);
+          this.$refs.sepRule.showRules(this.TreeDataPool.selectedNode.id);
         } else if (this.TreeDataPool.treeActiveName == "dataStack") {
           this.$refs.sepRule.initCameraData(this.DataStackPool.selectedDir.id);
         }
@@ -190,8 +200,24 @@
     },
     async getCluster() {
       const res = await getClusterDevList();
-      console.log(res);
       if (res && res.success) {
+        this.clusterData = res.data.clusterList;
+        if (res.data.clusterList <= 0 && res.data.devList <= 0) {
+          this.$confirm(
+            "绯荤粺妫�娴嬪埌鎮ㄨ繕鏈坊鍔犺澶�, 璇峰湪璁惧绠$悊椤甸潰缁存姢",
+            "鎻愮ず",
+            {
+              confirmButtonText: "璺宠浆",
+              cancelButtonText: "鍙栨秷",
+              type: "warning",
+            }
+          )
+            .then(() => {
+              this.$router.push("/manageCenter");
+            })
+            .catch(() => {});
+        }
+
         res.data.clusterList.forEach((item) => {
           this.clusterArr.push({
             label: item.cluster_name,
@@ -207,20 +233,30 @@
         });
 
         this.cluster = this.clusterArr[0].value;
+        this.selectCluster(this.clusterArr[0].value);
       }
     },
     selectCluster(val) {
       const arr = val.split("$$");
-      console.log(arr);
       if (arr[0] == "0") {
-        this.TreeDataPool.clusterId = arr[1];
-        this.TreeDataPool.devId = "";
+        sessionStorage.setItem("clusterId", arr[1]);
+        sessionStorage.setItem("devId", "");
+        console.log(this.clusterData);
+        this.clusterData.forEach((item) => {
+          if (arr[1] == item.cluster_id) {
+            sessionStorage.setItem("nodeId", item.nodeList[0].devId);
+          }
+        });
       }
       if (arr[0] == "1") {
-        this.TreeDataPool.devId = arr[1];
-        this.TreeDataPool.clusterId = "";
+        sessionStorage.setItem("clusterId", "");
+        sessionStorage.setItem("devId", arr[1]);
+        sessionStorage.setItem("nodeId", arr[1]);
       }
       this.TreeDataPool.fetchTreeData();
+      this.PollData.statisticTaskInfo();
+      this.VideoManageData.init();
+      this.PollData.statistics();
     },
   },
 };

--
Gitblit v1.8.0