From 98a6297b10a4b97c3022f84d3ba7908c178d9ee0 Mon Sep 17 00:00:00 2001
From: hanbaoshan <hanbaoshan@aiotlink.com>
Date: 星期二, 20 十月 2020 10:30:10 +0800
Subject: [PATCH] 应用中心安装提示bug修复

---
 src/pages/desktop/index/App.vue |  101 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 92 insertions(+), 9 deletions(-)

diff --git a/src/pages/desktop/index/App.vue b/src/pages/desktop/index/App.vue
index fc70133..9b48ad9 100644
--- a/src/pages/desktop/index/App.vue
+++ b/src/pages/desktop/index/App.vue
@@ -18,14 +18,35 @@
 import axios from 'axios'
 
 import { getApps } from '@/api/app'
+import { findAllSdk } from '@/api/taskMange'
+
+import config from '../../../../package.json'
 
 export default {
   name: 'app',
   components: {
     Desktop, NotificationCenter, NoticeTip, Tools, ToolsEntry
   },
-
-  mounted() {
+  data () {
+    return {
+      buttonAuthority: sessionStorage.getItem('buttonAuthoritys') || []
+    }
+  },
+  computed: {
+    isAdmin () {
+      if (
+        sessionStorage.getItem('userInfo') &&
+        sessionStorage.getItem('userInfo') !== ''
+      ) {
+        let loginName = JSON.parse(sessionStorage.getItem('userInfo')).username
+        return (
+          loginName === 'superadmin' || loginName === 'basic'
+        )
+      }
+      return false
+    }
+  },
+  mounted () {
     document.getElementById('app').style.backgroundImage = process.env.VUE_APP_MAIN_URL;
     this.showApps();
 
@@ -46,21 +67,83 @@
         id: 'N2',
         icon: '/images/desktop/message.png',
         tip: '娑堟伅',
-        title: 'SmartAi',
-        body: 'v1.0.0',
+        title: 'SmartAI',
+        body: config.version,
         time: new Date()
       }, true);
     }, 1000);
+    window.addEventListener('message', (e) => {
+      if (e.data.msg == 'AppUpdate') {
+        this.showApps();
+      }
+    });
   },
   methods: {
-    showApps() {
+    showApps () {
       let _that = this;
 
       getApps().then(rsp => {
         if (rsp && rsp.success) {
+          _that.$store.state.desktop.docks = [];
+          let installedApps = [];
+          let testObj = {
+            id: 'tjcxjq',
+            create_by: 'test',
+            create_time: '',
+            height: 675,
+            icon: '../../images/app-mid/search.png',
+            installed: true,
+            isDelete: 0,
+            isUpgrade: false,
+            title: '缁熻鏌ヨ(闆嗙兢)',
+            name: '缁熻鏌ヨ(闆嗙兢)',
+            remoteVersion: '',
+            type: '2',
+            update_by: '',
+            update_time: '',
+            url: "/view/searchForCluster/",
+            version: '1.0.0',
+            width: 1344,
+            isDefault: false
+          };
+   
+          console.log(rsp.data);
+          rsp.data.push(testObj);
+
           rsp.data.forEach(function (item) {
-            _that.$store.commit('desktop/addDock', item);
+            if (item.installed) {
+              let temp = {
+                id: item.id,
+                create_by: item.create_by,
+                create_time: item.create_time,
+                height: item.height,
+                icon: item.icon,
+                src: item.iconBlob ? 'data:image/png;base64,' + item.iconBlob : item.icon,
+                installed: item.installed,
+                isDelete: item.isDelete,
+                isUpgrade: item.isUpgrade,
+                title: item.title,
+                name: item.package,
+                remoteVersion: item.remoteVersion,
+                type: item.type,
+                update_by: item.update_by,
+                update_time: item.update_time,
+                url: item.url,
+                version: item.version,
+                width: item.width,
+                isDefault: item.isDefault
+              }
+
+              // 鍒ゆ柇鏉冮檺
+              if (_that.isAdmin || _that.buttonAuthority.indexOf(item.package) >= 0) {
+                _that.$store.commit('desktop/addDock', temp);
+              }
+
+              installedApps.push(item.package);
+            }
           });
+
+          sessionStorage.setItem("apps", installedApps.join(","));
         }
       })
     },
@@ -74,7 +157,7 @@
     addWeather: function (weather) {
       this.$store.commit('desktop/addWeather', weather);
     },
-    screenShot(dock) {
+    screenShot (dock) {
       //鎵惧埌褰撳墠鐨刬frame
       let curIframe = Array.from(document.querySelectorAll('iframe')).find(iframe => iframe.src.indexOf(dock.url) >= 0);
       //淇濆瓨褰撳墠搴旂敤蹇収
@@ -120,12 +203,12 @@
   width: 100%;
   height: 100%;
   background-size: 100% 100%;
-  background-image: url("/images/desktop/background.png");
+  background-image: url('/images/desktop/background.png');
   background-attachment: fixed;
 }
 
 .clearFix:after {
-  content: "";
+  content: '';
   display: block;
   height: 0;
   clear: both;

--
Gitblit v1.8.0