From 773134bc5889cbfa8e570f012220a451ce2e6622 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期二, 27 十月 2020 16:36:39 +0800
Subject: [PATCH] 修改国标端口校验规则

---
 src/pages/desktop/index/components/ToolsEntry.vue |  114 ++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 101 insertions(+), 13 deletions(-)

diff --git a/src/pages/desktop/index/components/ToolsEntry.vue b/src/pages/desktop/index/components/ToolsEntry.vue
index cc44556..13de460 100644
--- a/src/pages/desktop/index/components/ToolsEntry.vue
+++ b/src/pages/desktop/index/components/ToolsEntry.vue
@@ -2,19 +2,17 @@
   <div class="tools-entry">
     <div class="entry-wrap">
       <div class="app-list clearFix">
-        <div
-          class="app"
-          v-for="dock in this.$store.state.desktop.docks"
-          :key="dock.id"
-          @click="dockClick(dock)"
-        >
+        <div class="app" v-for="dock in stateDocks" :key="dock.id" @click="dockClick(dock)">
           <div class="wrap">
             <div class="app-icon">
               <img :src="dock.src" :alt="dock.alt" />
             </div>
-            <div class="app-name">{{dock.name}}</div>
+            <div class="app-name">{{dock.title}}</div>
           </div>
         </div>
+      </div>
+      <div class="logo">
+        <img :src="`${publicPath}images/desktop/desk-logo.png`" alt />
       </div>
     </div>
   </div>
@@ -26,24 +24,63 @@
   data() {
     return {
       publicPath: process.env.BASE_URL,
+      loading: true,
+      localApps: []
     }
   },
-  methods: {
+  computed: {
+    stateDocks() {
+      return this.$store.state.desktop.docks
+    }
+  },
+  mounted() {
+    window.addEventListener('message', e => {
+      if (e.data && e.data.msg) {
+        let msg = e.data.msg;
+        // token 涓嶅悎娉�, 閫�鍑�
+        if (msg === "logout") {
+          location.assign("/");
+          return;
+        }
 
+        // 鎵撳紑妫�绱�, toSearch?showType=findByPic&targetId=108ba0bc-b0a1-433d-8e1e-d5d2e712b53b&picSmUrl=192.168.20.10:6700/47628,7cc869f3a9c714&compType=1
+        if (msg.indexOf("toSearch") >= 0) {
+          let params = msg.substring(7);
+          this.addFrameByName("search", params)
+        }
+      }
+    });
+
+  },
+  methods: {
     dockClick(dock) {
       if (dock.type === '1') {
         window.open(dock.url);
-      } else if (dock.type === '2') {
-        debugger
+      } else if (dock.type === '2' && !dock.isOpen) {
+
         this.$store.dispatch('desktop/addFrame', {
           id: dock.id,
           icon: dock.src,
-          title: dock.name,
+          title: dock.title,
           url: dock.url
         });
-      } else if (dock.type === '3') {
+        this.$store.commit('desktop/addMinDock', {
+          id: dock.id,
+          src: dock.src,
+          alt: dock.title,
+          type: "3",
+          highlight: true,
+          url: dock.url,
+          screenshot: ''
+        });
+        //鎵撳紑搴旂敤鍚庡紓姝ユ姄鎷�,涔嬪悗鐨勬姄鎷嶉噰鐢ㄨ繖寮犲浐瀹氱殑
+        //if(dock.name=='cameraVideo'||dock.name=='search'||dock.name=='library'||dock.name=='cameraAccess'||dock.name=='dataStack'){
+        setTimeout(() => {
+          this.$parent.screenShot(dock);
+        }, 1500)
+        //}
+      } else if (dock.type === '2' && dock.isOpen) {
         this.$store.commit('desktop/resetMinFrame', dock.id);
-        this.resetDockItem();
       }
     },
     resetDockItem() {
@@ -57,6 +94,34 @@
       }
       dockMask.style.width = dockItems.length * 60 + 40 + 'px';
     },
+    addFrameByName(name, params) {
+
+      let dock = null;
+      this.$store.state.desktop.docks.forEach(app => {
+        if (app.name === name) {
+          dock = app;
+        }
+      });
+
+      if (dock.isOpen) {
+        this.$store.dispatch('desktop/closeFrame', dock);
+      }
+      this.$store.dispatch('desktop/addFrame', {
+        id: dock.id,
+        icon: dock.src,
+        title: dock.title,
+        url: dock.url + "?" + params
+      });
+      this.$store.commit('desktop/addMinDock', {
+        id: dock.id,
+        src: dock.src,
+        alt: dock.title,
+        type: "3",
+        highlight: true,
+        url: dock.url,
+        screenshot: ''
+      });
+    }
   }
 };
 </script>
@@ -89,6 +154,20 @@
               margin-right: -3px;
             }
           }
+          .el-loading-mask {
+            border-radius: 8px;
+          }
+          .el-loading-spinner {
+            top: 20px;
+          }
+          .el-loading-spinner .path {
+            stroke: #78adf7;
+          }
+          .el-loading-spinner .el-loading-text {
+            line-height: 1;
+            margin-top: -30px;
+            color: #78adf7;
+          }
           .app-name {
             padding-top: 10px;
             text-align: center;
@@ -104,6 +183,15 @@
         }
       }
     }
+    .logo {
+      text-align: right;
+      padding-right: 50px;
+      user-select: none;
+      img {
+        user-select: none;
+        -webkit-user-drag: none;
+      }
+    }
   }
 }
 </style>
\ No newline at end of file

--
Gitblit v1.8.0