From ad85ca6fdd062671047118a7d58776f9a0cf60d7 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期二, 14 十一月 2023 14:38:59 +0800
Subject: [PATCH] 集群切换添加密码

---
 src/pages/ai/index/App.vue |  694 ++++++++++++++++++++++++---------------------------------
 1 files changed, 288 insertions(+), 406 deletions(-)

diff --git a/src/pages/ai/index/App.vue b/src/pages/ai/index/App.vue
index 68b8825..9248029 100644
--- a/src/pages/ai/index/App.vue
+++ b/src/pages/ai/index/App.vue
@@ -2,14 +2,17 @@
   <div class="s-task-manage">
     <div style="height: 100%">
       <div class="flex-box task-manage">
+        <!-- 瀹夎杩涘害鏉� -->
         <div class="installModel" v-if="isInstall">
           <div class="progress-bar">
             <div class="inner-bar"></div>
           </div>
         </div>
+
         <div class="super">
           <div class="left-box" v-if="!inDetail">
             <div class="nav-box">
+              <!-- 鑿滃崟鍒楄〃 -->
               <div class="nav-box-menu">
                 <div
                   v-for="(name, index) in menuArr"
@@ -24,34 +27,16 @@
               </div>
               <div class="nav-box-search">
                 <span class="icon iconfont all-scene">&#xe703;</span>
-                <el-input
-                  placeholder="鎼滅储"
-                  v-model="inputText"
-                  @change="searchAll"
-                  class="input-with-select"
-                >
+                <el-input placeholder="鎼滅储" v-model="inputText" @change="searchAll" class="input-with-select">
                   <i class="el-icon-search" slot="prepend"></i>
-                  <el-select
-                    v-model="select"
-                    slot="append"
-                    placeholder="閫夋嫨鍦烘櫙"
-                    :popper-append-to-body="false"
-                  >
-                    <el-option label="閾佽矾鍦烘櫙" value="1">
-                      <span class="icon iconfont">&#xe713;</span>
-                      <span>閾佽矾鍦烘櫙</span>
-                    </el-option>
-                    <el-option label="瀹夊叏鍦烘櫙" value="2">
-                      <span class="icon iconfont">&#xe702;</span>
-                      <span>瀹夊叏鍦烘櫙</span>
-                    </el-option>
+                  <el-select v-model="select" slot="append" placeholder="閫夋嫨鍦烘櫙" :popper-append-to-body="false">
                     <el-option label="閫氱敤鍦烘櫙" value="3">
                       <span class="icon iconfont">&#xe70d;</span>
                       <span>閫氱敤鍦烘櫙</span>
                     </el-option>
-                    <el-option label="鏍″洯鍥尯" value="4">
+                    <el-option label="宸ヤ笟鍥尯" value="4">
                       <span class="icon iconfont">&#xe70e;</span>
-                      <span>鏍″洯鍥尯</span>
+                      <span>宸ヤ笟鍥尯</span>
                     </el-option>
                   </el-select>
                 </el-input>
@@ -70,25 +55,16 @@
                   @click="checkDetail(item, 'inactive', item.sdk_name)"
                 >
                   <div class="icon-img">
-                    <span class="icon iconfont" v-if="item.isUpgrade"
-                      >&#xe72a;</span
-                    >
+                    <span class="icon iconfont" v-if="item.isUpgrade">&#xe72a;</span>
                     <img
                       v-if="item.iconBlob"
-                      :src="
-                        item.iconBlob.indexOf(',') > 0
-                          ? item.iconBlob
-                          : `data:image/png;base64,${item.iconBlob}`
-                      "
+                      :src="item.iconBlob.indexOf(',') > 0 ? item.iconBlob : `data:image/png;base64,${item.iconBlob}`"
                       alt
                     />
                     <img v-else :src="item.icon" alt />
                   </div>
                   <div class="desc">
-                    <el-tooltip
-                      :content="item.sdk_name || item.name"
-                      effect="light"
-                    >
+                    <el-tooltip :content="item.sdk_name || item.name" effect="light">
                       <div class="desc-1">{{ item.sdk_name || item.name }}</div>
                     </el-tooltip>
                     <div class="desc-2">鐗堟湰 {{ item.version }}</div>
@@ -116,64 +92,40 @@
                     class="tab"
                     @click="pickTab('sdk')"
                     :class="activeTab == 'sdk' ? 'tab-active' : ''"
+                    v-show="false"
                   >
                     绠楁硶杞欢
                   </div>
-                  <div
-                    class="tab"
-                    @click="pickTab('app')"
-                    :class="activeTab == 'app' ? 'tab-active' : ''"
-                  >
+                  <div class="tab" @click="pickTab('app')" :class="activeTab == 'app' ? 'tab-active' : ''">
                     搴旂敤杞欢
                   </div>
                 </div>
 
-                <div
-                  class="batch-update"
-                  v-if="activeName == '鏇存柊' && tempList.length"
-                >
-                  <el-button
-                    size="small"
-                    type="primary"
-                    round
-                    @click="batchUpdate"
-                    >鍏ㄩ儴鏇存柊</el-button
-                  >
+                <div class="batch-update" v-if="activeName == '鏇存柊' && tempList.length">
+                  <el-button size="small" type="primary" round @click="batchUpdate">鍏ㄩ儴鏇存柊</el-button>
                 </div>
               </div>
-              <div
-                class="front-page-items"
-                v-if="activeName != '绂荤嚎鍗囩骇/瀹夎'"
-              >
+              <div class="front-page-items" v-if="activeName != '绂荤嚎鍗囩骇/瀹夎'">
                 <div
                   class="front-page-item"
                   v-for="(item, index) in tempList"
                   :key="index"
                   @click="checkDetail(item, null, item.sdk_name)"
                   :class="{
-                    disabled: activeName == '搴旂敤涓績' && !item.canUpOrIns,
+                    disabled: activeName == '搴旂敤涓績' && !item.canUpOrIns
                   }"
                 >
                   <div class="icon-img">
-                    <span class="icon iconfont" v-if="item.isUpgrade"
-                      >&#xe72a;</span
-                    >
+                    <span class="icon iconfont" v-if="item.isUpgrade">&#xe72a;</span>
                     <img
                       v-if="item.iconBlob"
-                      :src="
-                        item.iconBlob.indexOf(',') > 0
-                          ? item.iconBlob
-                          : `data:image/png;base64,${item.iconBlob}`
-                      "
+                      :src="item.iconBlob.indexOf(',') > 0 ? item.iconBlob : `data:image/png;base64,${item.iconBlob}`"
                       alt
                     />
                     <img v-else :src="item.icon" alt />
                   </div>
                   <div class="desc">
-                    <el-tooltip
-                      :content="item.sdk_name || item.name"
-                      effect="light"
-                    >
+                    <el-tooltip :content="item.sdk_name || item.name" effect="light">
                       <div class="desc-1">{{ item.sdk_name || item.name }}</div>
                     </el-tooltip>
                     <div class="desc-2">鐗堟湰 {{ item.version }}</div>
@@ -203,11 +155,9 @@
                       class="check-btn"
                       round
                       v-if="
-                        activeName == '宸叉縺娲�' &&
-                        ((activeTab == 'sdk' && !item.isUpgrade) ||
-                          (activeTab == 'app' &&
-                            !item.isUpgrade &&
-                            !item.isDefault))
+                        activeName == '宸插畨瑁�' &&
+                          ((activeTab == 'sdk' && !item.isUpgrade) ||
+                            (activeTab == 'app' && !item.isUpgrade && !item.isDefault))
                       "
                       >鏌ョ湅</el-button
                     >
@@ -216,26 +166,17 @@
                       type="primary"
                       class="check-btn"
                       round
-                      v-if="
-                        activeName == '宸叉縺娲�' &&
-                        activeTab == 'app' &&
-                        item.isDefault &&
-                        !item.isUpgrade
-                      "
+                      v-if="activeName == '宸插畨瑁�' && activeTab == 'app' && item.isDefault && !item.isUpgrade"
                       >鏌ョ湅</el-button
                     >
                     <el-button
                       size="small"
                       type="primary"
-                      class="other-btn"
+                      class="remove-btn"
                       round
-                      v-if="
-                        activeName == '宸叉縺娲�' &&
-                        activeTab == 'app' &&
-                        item.isDefault &&
-                        item.isUpgrade
-                      "
-                      >鍗囩骇</el-button
+                      v-if="activeName == '宸插畨瑁�' && !item.isDefault"
+                      @click.stop="removeAPP(item)"
+                      >鍗歌浇</el-button
                     >
                     <el-button
                       size="small"
@@ -244,31 +185,21 @@
                       round
                       @click.stop="donwloadSDK(item)"
                       v-if="
-                        (activeName == '鏇存柊' || activeName == '宸叉縺娲�') &&
-                        activeTab == 'sdk' &&
-                        item.isUpgrade &&
-                        !item.upgradeLoading
+                        (activeName == '鏇存柊' || activeName == '宸插畨瑁�') &&
+                          activeTab == 'sdk' &&
+                          item.isUpgrade &&
+                          !item.upgradeLoading
                       "
                       >鏇存柊</el-button
                     >
                     <span
                       class="icon iconfont rocket-icon"
-                      v-if="
-                        activeName == '鏇存柊' &&
-                        item.isUpgrade &&
-                        item.upgradeLoading &&
-                        rocketIf
-                      "
+                      v-if="activeName == '鏇存柊' && item.isUpgrade && item.upgradeLoading && rocketIf"
                       >&#xe70c;</span
                     >
                     <span
                       class="icon iconfont rocket-icon"
-                      v-if="
-                        activeName == '鏇存柊' &&
-                        item.isUpgrade &&
-                        item.upgradeLoading &&
-                        !rocketIf
-                      "
+                      v-if="activeName == '鏇存柊' && item.isUpgrade && item.upgradeLoading && !rocketIf"
                       >&#xe717;</span
                     >
                     <el-button
@@ -278,10 +209,10 @@
                       round
                       @click.stop="downloadApp(item, 'upgrade')"
                       v-if="
-                        (activeName == '鏇存柊' || activeName == '宸叉縺娲�') &&
-                        activeTab == 'app' &&
-                        item.isUpgrade &&
-                        !item.upgradeLoading
+                        (activeName == '鏇存柊' || activeName == '宸插畨瑁�') &&
+                          activeTab == 'app' &&
+                          item.isUpgrade &&
+                          !item.upgradeLoading
                       "
                       >鏇存柊</el-button
                     >
@@ -301,20 +232,13 @@
                   <div class="icon-img">
                     <img
                       v-if="item.iconBlob"
-                      :src="
-                        item.iconBlob.indexOf(',') > 0
-                          ? item.iconBlob
-                          : `data:image/png;base64,${item.iconBlob}`
-                      "
+                      :src="item.iconBlob.indexOf(',') > 0 ? item.iconBlob : `data:image/png;base64,${item.iconBlob}`"
                       alt
                     />
                     <img v-else :src="item.icon" alt />
                   </div>
                   <div class="desc">
-                    <el-tooltip
-                      :content="item.sdk_name || item.name"
-                      effect="light"
-                    >
+                    <el-tooltip :content="item.sdk_name || item.name" effect="light">
                       <div class="desc-1">{{ item.sdk_name || item.name }}</div>
                     </el-tooltip>
                     <div class="desc-2">鐗堟湰 {{ item.version }}</div>
@@ -339,11 +263,7 @@
                       >瀹夎</el-button
                     >
                     <div class="spin-icon">
-                      <span
-                        class="icon iconfont anz-font"
-                        v-if="item.upgradeLoading"
-                        >&#xe70a;</span
-                      >
+                      <span class="icon iconfont anz-font" v-if="item.upgradeLoading">&#xe70a;</span>
                     </div>
                     <div class="status">
                       {{ item.progressMsg }}
@@ -377,6 +297,7 @@
             </div>
           </div>
 
+          <!-- 搴旂敤璇︽儏椤� -->
           <detailPage
             :detailProductID="detailProductID"
             :detailType="detailType"
@@ -391,12 +312,7 @@
       </div>
     </div>
 
-    <el-dialog
-      title="瀹夎鍖呬俊鎭�"
-      :visible.sync="installDialogVisible"
-      width="40%"
-      :close-on-click-modal="false"
-    >
+    <el-dialog title="瀹夎鍖呬俊鎭�" :visible.sync="installDialogVisible" width="40%" :close-on-click-modal="false">
       <div class="installInfo">
         <template v-if="installAppPackage != null">
           <div>
@@ -440,14 +356,7 @@
   </div>
 </template>
 <script>
-import {
-  findAllSdk,
-  downloadSdk,
-  installSdk,
-  getInstallInfo,
-  removeSdk,
-  uploadSDK,
-} from "./api";
+import { findAllSdk, downloadSdk, installSdk, getInstallInfo, removeSdk, uploadSDK } from "./api"
 import {
   getApps,
   installApp,
@@ -456,38 +365,35 @@
   getUnActivedSdk,
   actPageAlg,
   getUnActivedApp,
-  actApp,
-} from "@/api/app";
-import { getUrlKey } from "@/api/utils";
-import FileUploader from "../FileUpload/index";
-import detailPage from "./detail";
+  actApp
+} from "@/api/app"
+import { getUrlKey } from "@/api/utils"
+import FileUploader from "../FileUpload/index"
+import detailPage from "./detail"
 export default {
   name: "algorithmManage",
   components: {
     FileUploader,
-    detailPage,
+    detailPage
   },
   computed: {
     updateNum() {
-      return this.hasNewVersionApp.length + this.hasNewVersionSdk.length;
+      return this.hasNewVersionApp.length + this.hasNewVersionSdk.length
     },
     isAdmin() {
-      if (
-        sessionStorage.getItem("userInfo") &&
-        sessionStorage.getItem("userInfo") !== ""
-      ) {
-        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username;
-        return loginName === "superadmin" || loginName === "basic";
+      if (sessionStorage.getItem("userInfo") && sessionStorage.getItem("userInfo") !== "") {
+        let loginName = JSON.parse(sessionStorage.getItem("userInfo")).username
+        return loginName === "superadmin" || loginName === "basic"
       }
-      return false;
-    },
+      return false
+    }
   },
   data() {
     return {
       installedList: [],
       recomandUpdateList: [],
       hasNewVersionSdk: [],
-      activeTab: "sdk",
+      activeTab: "app",
       hasNewVersionApp: [],
       tempDarkList: [],
       notInstalledList: [],
@@ -525,7 +431,7 @@
         setting: "",
         expireTime: "",
         licence: "",
-        devIds: "",
+        devIds: ""
       },
       installedApps: [],
       storeApps: [],
@@ -546,243 +452,233 @@
       showInputCode: false,
       needToUpgradeInWin: false,
       showInstallNotActive: false,
-      menuArr: ["搴旂敤涓績", "宸叉縺娲�", "绂荤嚎鍗囩骇/瀹夎", "鏇存柊"],
-    };
+      menuArr: ["搴旂敤涓績", "宸插畨瑁�", "绂荤嚎鍗囩骇/瀹夎", "鏇存柊"]
+    }
   },
   directives: {
     focus: {
-      inserted: function (el) {
-        el.querySelector("input").focus();
-      },
-    },
+      inserted: function(el) {
+        el.querySelector("input").focus()
+      }
+    }
   },
   mounted() {
-    var name = getUrlKey("activeName");
+    var name = getUrlKey("activeName")
     if (name) {
-      this.pickMenu(name);
+      this.pickMenu(name)
     }
-    this.autoRefreshAppAndSdkState();
-    this.getUnActivedList(1);
-    this.getUnActivedAppList();
+    this.autoRefreshAppAndSdkState()
+    this.getUnActivedList(1)
+    this.getUnActivedAppList()
   },
   beforeDestroy() {
-    this.autoRefresh = false;
+    this.autoRefresh = false
   },
   methods: {
     searchAll() {
-      this.getAllApps();
-      this.getAllSdk();
-      this.getUnActivedList(1);
-      this.getUnActivedAppList();
+      this.getAllApps()
+      this.getAllSdk()
+      this.getUnActivedList(1)
+      this.getUnActivedAppList()
     },
     goback() {
-      this.inDetail = false;
+      this.inDetail = false
     },
     batchUpdate(s) {
       if (s == "both") {
-        this.batchUpdateSDK();
-        this.batchUpdateApp();
+        this.batchUpdateSDK()
+        this.batchUpdateApp()
       } else if (this.activeTab == "sdk") {
-        this.batchUpdateSDK();
+        this.batchUpdateSDK()
       } else {
-        this.batchUpdateApp();
+        this.batchUpdateApp()
       }
     },
     batchUpdateSDK() {
       this.hasNewVersionSdk.forEach((sdk) => {
-        this.donwloadSDK(sdk);
-      });
+        this.donwloadSDK(sdk)
+      })
     },
     batchUpdateApp() {
       this.hasNewVersionApp.forEach((app) => {
-        this.downloadApp(app, "upgrade");
-      });
+        this.downloadApp(app, "upgrade")
+      })
     },
     pickMenu(name) {
-      this.activeName = name;
-      this.activeTab = "sdk";
-      this.showQuickPath = true;
+      this.activeName = name
+      this.activeTab = "app"
+      this.showQuickPath = true
       switch (name) {
         case "搴旂敤涓績":
-          this.tempList = this.unActivedSDKList;
-          this.tempDarkList = [];
-          break;
-        case "宸叉縺娲�":
-          this.tempList = this.installedList;
-          this.tempDarkList = this.notInstalledList;
-          break;
+          this.tempList = this.unActivedSDKList
+          this.tempDarkList = []
+          break
+        case "宸插畨瑁�":
+          this.tempList = this.installedList
+          this.tempDarkList = this.notInstalledList
+          break
         case "鏇存柊":
-          this.showQuickPath = false;
-          this.tempList = this.hasNewVersionSdk;
-          this.tempDarkList = [];
-          break;
+          this.showQuickPath = false
+          this.tempList = this.hasNewVersionSdk
+          this.tempDarkList = []
+          break
         default:
-          this.tempList = [];
-          this.tempDarkList = [];
-          break;
+          this.tempList = []
+          this.tempDarkList = []
+          break
       }
+      this.pickTab("app")
     },
     pickTab(val) {
       if (val) {
-        this.activeTab = val;
+        this.activeTab = val
       }
       if (this.activeName == "搴旂敤涓績") {
-        this.tempList =
-          this.activeTab == "sdk"
-            ? this.unActivedSDKList
-            : this.unActivedAppList;
-        this.tempDarkList = [];
-      } else if (this.activeName == "宸叉縺娲�") {
-        this.tempList =
-          this.activeTab == "sdk" ? this.installedList : this.installedApps;
-        this.tempDarkList =
-          this.activeTab == "sdk" ? this.notInstalledList : this.storeApps;
+        this.tempList = this.activeTab == "sdk" ? this.unActivedSDKList : this.unActivedAppList
+        this.tempDarkList = []
+      } else if (this.activeName == "宸插畨瑁�") {
+        this.tempList = this.activeTab == "sdk" ? this.installedList : this.installedApps
+        this.tempDarkList = this.activeTab == "sdk" ? this.notInstalledList : this.storeApps
       } else if (this.activeName == "鏇存柊") {
-        this.tempList =
-          this.activeTab == "sdk"
-            ? this.hasNewVersionSdk
-            : this.hasNewVersionApp;
+        this.tempList = this.activeTab == "sdk" ? this.hasNewVersionSdk : this.hasNewVersionApp
 
-        this.tempDarkList = [];
+        this.tempDarkList = []
       }
     },
     checkDetail(item, typ, sdkName) {
       /* if (!item.canUpOrIns && typ == "Appcenter") {
         return false;
       } */
-      this.isSdk = Boolean(sdkName);
-      this.inDetail = true;
-      this.detailProductID = item.id;
-      this.detailPrice = item.price;
+      this.isSdk = Boolean(sdkName)
+      this.inDetail = true
+      this.detailProductID = item.id
+      this.detailPrice = item.price
       if (typ) {
-        this.detailType = typ;
+        this.detailType = typ
       } else {
-        this.detailType = this.activeName == "搴旂敤涓績" ? "inactive" : "active";
+        this.detailType = this.activeName == "搴旂敤涓績" ? "inactive" : "active"
       }
     },
     checkIsDefOrNot(id) {
-      this.isDefaultApp = id.length <= 10;
+      this.isDefaultApp = id.length <= 10
     },
     forwards() {
       if (this.forwardStack.length == 0) {
-        this.forwardDisable = true;
-        return;
+        this.forwardDisable = true
+        return
       }
 
-      this.backStack.push([this.productDetail, this.otherProducts]);
-      this.backDisable = false;
-      let item = this.forwardStack.pop();
+      this.backStack.push([this.productDetail, this.otherProducts])
+      this.backDisable = false
+      let item = this.forwardStack.pop()
 
-      this.productDetail = item[0];
-      this.otherProducts = item[1];
+      this.productDetail = item[0]
+      this.otherProducts = item[1]
       if (this.forwardStack.length == 0) {
-        this.forwardDisable = true;
+        this.forwardDisable = true
       }
     },
     offlineInstall() {
-      this.installDialogVisible = false;
-      this.isInstall = true;
+      this.installDialogVisible = false
+      this.isInstall = true
       installSdk(this.installFile)
         .then((res) => {
           if (res.success) {
-            this.isInstall = false;
-            this.$message.success('瀹夎鎴愬姛,灏嗚烦杞嚦"宸叉縺娲�"涓煡鐪�');
+            this.isInstall = false
+            this.$message.success('瀹夎鎴愬姛,灏嗚烦杞嚦"宸叉縺娲�"涓煡鐪�')
             setTimeout(() => {
-              this.getAllSdk();
-              window.parent.postMessage({ msg: "AppUpdate" }, "*");
-              this.activeName = "宸叉縺娲�";
-            }, 3000);
+              this.getAllSdk()
+              window.parent.postMessage({ msg: "AppUpdate" }, "*")
+              this.activeName = "宸插畨瑁�"
+            }, 3000)
           }
         })
         .catch((e) => {
-          this.isInstall = false;
-          this.$message.error(e.msg);
-        });
+          this.isInstall = false
+          this.$message.error(e.msg)
+        })
     },
     downloadApp(app, action) {
-      let timer = null;
-      app.upgradeLoading = true;
+      let timer = null
+      app.upgradeLoading = true
       timer = setInterval(() => {
-        this.rocketIf = !this.rocketIf;
-      }, 350);
+        this.rocketIf = !this.rocketIf
+      }, 350)
 
-      let _this = this;
+      let _this = this
       installApp({ path: app.id })
         .then((res) => {
           if (res && res.success) {
-            _this.$notify.success("瀹夎搴旂敤鎴愬姛");
-            clearInterval(timer);
-            app.upgradeLoading = false;
+            _this.$notify.success("瀹夎搴旂敤鎴愬姛")
+            clearInterval(timer)
+            app.upgradeLoading = false
             setTimeout(() => {
-              window.parent.postMessage({ msg: "AppUpdate" }, "*");
-            }, 3000);
+              window.parent.postMessage({ msg: "AppUpdate" }, "*")
+            }, 3000)
           } else {
           }
         })
         .catch((e) => {
-          _this.$notify.warning(e.msg);
-          clearInterval(timer);
-          app.upgradeLoading = false;
-        });
+          _this.$notify.warning(e.msg)
+          clearInterval(timer)
+          app.upgradeLoading = false
+        })
       // 寮�鍚嚜鍔ㄥ埛鏂�
-      this.appUpgreading = true;
+      this.appUpgreading = true
     },
     async getAllApps() {
-      let iArry = [];
-      let sArry = [];
-      let nArry = [];
-      let rsp = await getApps({ appName: this.inputText });
+      let iArry = []
+      let sArry = []
+      let nArry = []
+      let rsp = await getApps({ appName: this.inputText })
       if (rsp && rsp.success) {
         // 閬嶅巻app鐨勮繃绋嬮噸缃�
-        this.appUpgreading = false;
+        this.appUpgreading = false
 
         rsp.data.forEach((item) => {
-          let obj = Object.assign(
-            { unloadLoading: false, upgradeLoading: false },
-            item
-          );
-          if (
-            obj.progressMsg !== "" &&
-            obj.progressMsg !== "宸插畨瑁�" &&
-            obj.progressMsg != "100%"
-          ) {
-            obj.upgradeLoading = true;
-            this.appUpgreading = true;
+          let obj = Object.assign({ unloadLoading: false, upgradeLoading: false }, item)
+          if (obj.progressMsg !== "" && obj.progressMsg !== "宸插畨瑁�" && obj.progressMsg != "100%") {
+            obj.upgradeLoading = true
+            this.appUpgreading = true
           }
 
           if (obj.upgradeDone) {
-            this.$notify.success(1 ? "绠楁硶瀹夎鎴愬姛" : "绠楁硶鍗囩骇鎴愬姛");
+            this.$notify.success(1 ? "绠楁硶瀹夎鎴愬姛" : "绠楁硶鍗囩骇鎴愬姛")
           }
 
-          item.installed ? iArry.push(obj) : sArry.push(obj);
-          item.isUpgrade && nArry.push(obj);
-        });
+          item.installed ? iArry.push(obj) : sArry.push(obj)
+          item.isUpgrade && nArry.push(obj)
+        })
+
+        this.$nextTick(() => {
+          this.pickTab("app")
+        })
       }
-      this.installedApps = iArry;
-      this.storeApps = sArry;
-      this.hasNewVersionApp = nArry;
+      this.installedApps = iArry
+      this.storeApps = sArry
+      this.hasNewVersionApp = nArry
     },
     unloadApp(app) {
-      let _this = this;
+      let _this = this
       this.$confirm("纭畾瑕佸嵏杞借搴旂敤鍚�?", "鎻愮ず")
         .then(() => {
-          _this.productDetailVisible = false;
+          _this.productDetailVisible = false
 
-          app.unloadLoading = true;
+          app.unloadLoading = true
           removeApp({ appId: app.id })
             .then((res) => {
               if (res && res.success) {
-                app.unloadLoading = false;
-                _this.getAllApps();
-                window.parent.postMessage({ msg: "AppUpdate" }, "*");
-                _this.$notify.success("鍗歌浇搴旂敤鎴愬姛");
+                app.unloadLoading = false
+                _this.getAllApps()
+                window.parent.postMessage({ msg: "AppUpdate" }, "*")
+                _this.$notify.success("鍗歌浇搴旂敤鎴愬姛")
               }
             })
             .catch((e) => {
-              app.unloadLoading = false;
-            });
+              app.unloadLoading = false
+            })
         })
-        .catch((e) => {});
+        .catch((e) => {})
     },
     newActInfo() {
       return {
@@ -791,211 +687,207 @@
         setting: "",
         expireTime: "",
         licence: "",
-        devIds: "",
-      };
+        devIds: ""
+      }
     },
     getUnActivedList(v) {
       getUnActivedSdk({ sdkName: this.inputText }).then((res) => {
         if (res.code == 200) {
-          this.unActivedSDKList = res.data;
-          const len = this.unActivedSDKList.length;
-          const set = new Set();
+          this.unActivedSDKList = res.data
+          const len = this.unActivedSDKList.length
+          const set = new Set()
           if (len <= 3) {
-            this.recomandUpdateList = [...this.unActivedSDKList];
+            this.recomandUpdateList = [...this.unActivedSDKList]
           } else {
             for (let i = 0; i < 3; i++) {
-              const pickI = Math.floor(Math.random() * len);
+              const pickI = Math.floor(Math.random() * len)
               if (set.has(pickI)) {
-                i--;
-                continue;
+                i--
+                continue
               }
-              set.add(pickI);
-              this.recomandUpdateList.push(this.unActivedSDKList[pickI]);
+              set.add(pickI)
+              this.recomandUpdateList.push(this.unActivedSDKList[pickI])
             }
           }
-          v == 1 ? (this.tempList = res.data) : null;
+          v == 1 ? (this.tempList = res.data) : null
         }
-      });
+      })
     },
     getUnActivedAppList() {
       getUnActivedApp({ appName: this.inputText }).then((res) => {
         if (res.code == 200) {
-          this.unActivedAppList = res.data;
-          this.pickTab();
+          this.unActivedAppList = res.data
+          this.pickTab("app")
         }
-      });
+      })
     },
     actived(item) {
       if (!item.canUpOrIns) {
-        return false;
+        return false
       }
 
-      let _this = this;
+      let _this = this
       if (this.activeTab == "sdk") {
         actPageAlg(item.id, "")
           .then((res) => {
             if (res.data.isSuccess) {
-              this.productDetailVisible = false;
-              _this.activedSdkOrApp = res.data.successMsg;
-              this.showActivateSuccess = true;
-              _this.actStep++;
-              _this.getUnActivedList(1);
-              _this.getAllSdk();
+              this.productDetailVisible = false
+              _this.activedSdkOrApp = res.data.successMsg
+              this.showActivateSuccess = true
+              _this.actStep++
+              _this.getUnActivedList(1)
+              _this.getAllSdk()
             } else {
-              _this.$notify.error(res.data.failMsg.failMsg);
+              _this.$notify.error(res.data.failMsg.failMsg)
             }
           })
-          .catch((e) => {});
+          .catch((e) => {})
       } else if (this.activeTab == "app") {
         //婵�娲诲簲鐢�
         actApp(item.id, "")
           .then((res) => {
             if (res.data.isSuccess) {
-              this.productDetailVisible = false;
-              _this.activedSdkOrApp = res.data.successMsg;
-              this.showActivateSuccess = true;
-              _this.actStep++;
-              _this.getUnActivedAppList();
-              _this.getAllApps();
+              this.productDetailVisible = false
+              _this.activedSdkOrApp = res.data.successMsg
+              this.showActivateSuccess = true
+              _this.actStep++
+              _this.getUnActivedAppList()
+              _this.getAllApps()
             } else {
-              _this.$notify.error(res.data.failMsg.failMsg);
+              _this.$notify.error(res.data.failMsg.failMsg)
             }
           })
-          .catch((e) => {});
+          .catch((e) => {})
       }
     },
     onFileUpload(file) {
-      this.patchFile = { ...file };
-      this.fileAdded = true;
-      const h = this.$createElement;
+      this.patchFile = { ...file }
+      this.fileAdded = true
+      const h = this.$createElement
       //涓婁紶瀹屾垚鑾峰彇瀹夎淇℃伅
-      let _this = this;
+      let _this = this
       getInstallInfo(file)
         .then((res) => {
-          _this.installFile = file;
+          _this.installFile = file
           if (res.success) {
-            _this.installDialogVisible = true;
+            _this.installDialogVisible = true
             if (res.data.apps.length > 0) {
               _this.installAppPackage = {
                 appId: res.data.apps[0].appId,
                 version: res.data.apps[0].version,
                 productName: res.data.productName,
-                installContent: res.data.apps[0].installContent,
-              };
+                installContent: res.data.apps[0].installContent
+              }
             }
             if (res.data.sdks.length > 0) {
               _this.installSdkPackage = {
                 appId: res.data.sdks[0].sdkId,
                 version: res.data.sdks[0].version,
                 productName: res.data.productName,
-                installContent: res.data.sdks[0].installContent,
-              };
+                installContent: res.data.sdks[0].installContent
+              }
             }
           } else {
-            this.$message.error(res.msg);
+            this.$message.error(res.msg)
           }
         })
         .catch((e) => {
-          this.$message.error(e.msg);
-        });
+          this.$message.error(e.msg)
+        })
     },
     onFileAdded(f) {
-      this.patchUpdateStatus = "";
+      this.patchUpdateStatus = ""
     },
     async getAllSdk() {
-      let installedList = [];
-      let unInstalledList = [];
-      let hasNewVersionList = [];
-      let res = await findAllSdk({ sdkName: this.inputText });
+      let installedList = []
+      let unInstalledList = []
+      let hasNewVersionList = []
+      let res = await findAllSdk({ sdkName: this.inputText })
       if (res && res.success) {
-        this.sdkUpgreading = false;
+        this.sdkUpgreading = false
 
         res.data.forEach((item) => {
-          let obj = Object.assign(
-            { unloadLoading: false, upgradeLoading: false },
-            item
-          );
-          if (
-            obj.progressMsg !== "" &&
-            obj.progressMsg !== "宸插畨瑁�" &&
-            obj.progressMsg !== "100%"
-          ) {
-            obj.upgradeLoading = true;
-            this.sdkUpgreading = true;
+          let obj = Object.assign({ unloadLoading: false, upgradeLoading: false }, item)
+          if (obj.progressMsg !== "" && obj.progressMsg !== "宸插畨瑁�" && obj.progressMsg !== "100%") {
+            obj.upgradeLoading = true
+            this.sdkUpgreading = true
           }
 
           //绠楁硶杞欢 宸插畨瑁呭叾涓寘鍚緟鍗囩骇 鏈畨瑁�
-          item.installed ? installedList.push(obj) : unInstalledList.push(obj);
-          item.isUpgrade ? hasNewVersionList.push(obj) : null;
-        });
+          item.installed ? installedList.push(obj) : unInstalledList.push(obj)
+          item.isUpgrade ? hasNewVersionList.push(obj) : null
+        })
       }
-      this.installedList = installedList;
-      this.notInstalledList = unInstalledList;
-      this.toUpdateArr1 = this.installedList.slice(0, 10);
-      this.hasNewVersionSdk = hasNewVersionList;
-      this.pickTab();
+      this.installedList = installedList
+      this.notInstalledList = unInstalledList
+      this.toUpdateArr1 = this.installedList.slice(0, 10)
+      this.hasNewVersionSdk = hasNewVersionList
+      this.pickTab("app")
     },
     unloadSdk(sdk) {
-      let _this = this;
+      let _this = this
       this.$confirm("纭畾瑕佸嵏杞借绠楁硶鍚�?", "鎻愮ず")
         .then(() => {
-          _this.productDetailVisible = false;
-          sdk.unloadLoading = true;
+          _this.productDetailVisible = false
+          sdk.unloadLoading = true
           removeSdk({ sdkId: sdk.id })
             .then((res) => {
               if (res && res.success) {
-                sdk.unloadLoading = false;
-                this.$notify.success("鍗歌浇瀹屾垚");
-                _this.getAllSdk();
-                window.parent.postMessage({ msg: "AppUpdate" }, "*");
+                sdk.unloadLoading = false
+                this.$notify.success("鍗歌浇瀹屾垚")
+                _this.getAllSdk()
+                window.parent.postMessage({ msg: "AppUpdate" }, "*")
               }
             })
             .catch((e) => {
-              sdk.unloadLoading = false;
-            });
+              sdk.unloadLoading = false
+            })
         })
-        .catch((e) => {});
+        .catch((e) => {})
     },
     donwloadSDK(item) {
-      let timer = null;
-      item.upgradeLoading = true;
+      let timer = null
+      item.upgradeLoading = true
       timer = setInterval(() => {
-        this.rocketIf = !this.rocketIf;
-      }, 350);
-      this.downloadItem = item.id;
+        this.rocketIf = !this.rocketIf
+      }, 350)
+      this.downloadItem = item.id
       downloadSdk({ path: item.id })
         .then((rsp) => {
-          clearInterval(timer);
-          item.upgradeLoading = false;
-          this.downloadItem = "";
+          clearInterval(timer)
+          item.upgradeLoading = false
+          this.downloadItem = ""
 
-          window.parent.postMessage({ msg: "AppUpdate" }, "*");
+          window.parent.postMessage({ msg: "AppUpdate" }, "*")
         })
         .catch((err) => {
-          this.$notify.warning(err.data);
-          item.upgradeLoading = false;
-          this.downloadItem = "";
-        });
+          this.$notify.warning(err.data)
+          item.upgradeLoading = false
+          this.downloadItem = ""
+        })
       // 寮�鍚嚜鍔ㄥ埛鏂�
-      this.sdkUpgreading = true;
+      this.sdkUpgreading = true
     },
     autoRefreshAppAndSdkState() {
-      this.getAllApps();
-      this.getAllSdk();
+      this.getAllApps()
+      this.getAllSdk()
       if (!this.autoRefresh) {
-        return;
+        return
       }
       setTimeout(() => {
         if (this.appUpgreading) {
-          this.getAllApps();
+          this.getAllApps()
         }
         if (this.sdkUpgreading) {
-          this.getAllSdk();
+          this.getAllSdk()
         }
-      }, 1000);
+      }, 1000)
     },
-  },
-};
+    removeAPP(item) {
+      console.log(item)
+    }
+  }
+}
 </script>
 <style lang="scss">
 .s-task-manage {
@@ -1142,12 +1034,7 @@
               border: none;
               border-radius: 20px;
               width: 52px;
-              background: linear-gradient(
-                180deg,
-                #ecfcfe 0%,
-                #ebf4fd 47.92%,
-                #f4f4fe 100%
-              );
+              background: linear-gradient(180deg, #ecfcfe 0%, #ebf4fd 47.92%, #f4f4fe 100%);
               .el-input--suffix {
                 border: none;
                 .el-input__icon {
@@ -1196,12 +1083,7 @@
               margin: -10px -20px;
               border: none;
               border-radius: 20px;
-              background: linear-gradient(
-                180deg,
-                #ecfcfe 0%,
-                #ebf4fd 47.92%,
-                #f4f4fe 100%
-              );
+              background: linear-gradient(180deg, #ecfcfe 0%, #ebf4fd 47.92%, #f4f4fe 100%);
             }
           }
         }
@@ -1221,12 +1103,7 @@
         height: 200px;
         margin: 0 60px;
         z-index: 99;
-        background: linear-gradient(
-          180deg,
-          #ecfcfe 0%,
-          #ebf4fd 47.92%,
-          #f4f4fe 100%
-        );
+        background: linear-gradient(180deg, #ecfcfe 0%, #ebf4fd 47.92%, #f4f4fe 100%);
         border-radius: 4px;
         height: 75px;
         display: flex;
@@ -1418,6 +1295,12 @@
                 border-color: #1dd4ec !important;
                 color: #ffffff;
               }
+              .remove-btn {
+                margin: 10px 0px;
+                background-color: #b6b9b9 !important;
+                border-color: #b9bbbb !important;
+                color: #ffffff;
+              }
               @keyframes spin {
                 from {
                   transform: rotate(0deg);
@@ -1587,4 +1470,3 @@
   }
 }
 </style>
-

--
Gitblit v1.8.0