From 829517bc9c6ff792c93be3ddbeff0e4d1dfca648 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期三, 15 九月 2021 17:21:04 +0800
Subject: [PATCH] fix run serve. user npm 7.12.0

---
 src/pages/index/App.vue |   83 +++++++++++++++++++++++++----------------
 1 files changed, 51 insertions(+), 32 deletions(-)

diff --git a/src/pages/index/App.vue b/src/pages/index/App.vue
index 4218947..2d1738b 100644
--- a/src/pages/index/App.vue
+++ b/src/pages/index/App.vue
@@ -46,9 +46,14 @@
         </el-form>
       </div>
       <!-- <p class="gradient-text gradient-text-one">鈥斺�斺�� {{serverTitle || 'SmartAI 鈥� ReID'}} 鈥斺�斺��</p> -->
-      <p class="gradient-text gradient-text-one">鈥斺�� <b>SmartAI</b> 浜哄伐鏅鸿兘鎿嶄綔绯荤粺 鈥斺��</p>
-      <p class="gradient-text gradient-text-one" style="letter-spacing: 1.8px;font-size:15px;"> V1.0.0 </p>
-
+      <p class="gradient-text gradient-text-one">
+        鈥斺��
+        <b>SmartAI</b> 浜哄伐鏅鸿兘鎿嶄綔绯荤粺 鈥斺��
+      </p>
+      <p
+        class="gradient-text gradient-text-one"
+        style="letter-spacing: 1.8px;font-size:15px;"
+      >V1.0.0</p>
     </div>
   </div>
 </template>
@@ -57,7 +62,7 @@
 import { tologin, getLoginUserData, getServerName } from './api.ts'
 import ParticleNetwork from './ParticleNetwork'
 import Licence from '@/components/licence'
-import { getMenuListData, findButtonAuthoritys, findInArr } from "@/api/utils";
+import { getMenuListData } from "@/api/utils";
 
 export default {
   name: 'login-pgae',
@@ -92,13 +97,36 @@
     this.getScreenHeight()
   },
   mounted() {
-    console.log(this.serverTitle)
+    // 鑷姩鐧诲綍鎺ュ彛
+    this.loginRobot();
   },
   watch: {},
   beforeDestroy() {
     window.onresize = null
   },
   methods: {
+    loginRobot() {
+      // 瑙f瀽璺敱鍙傛暟锛屽苟缂撳瓨
+      let user = this.getQueryVariable("username");
+      let passwd = this.getQueryVariable("password");
+      if (user.length && passwd.length) {
+        sessionStorage.setItem("autoLogin", JSON.stringify({ username: user, passwd: passwd }));
+
+        this.user.loginName = user;
+        this.user.password = passwd;
+        this.systemLogin();
+        return;
+      }
+
+      // 鐧婚檰瓒呮椂鍚庣殑閲嶆柊鐧婚檰
+      let sessionInfo = sessionStorage.getItem('autoLogin');
+      if (sessionInfo) {
+        let authority = JSON.parse(sessionInfo);
+        this.user.loginName = authority.username;
+        this.user.password = authority.passwd;
+        this.systemLogin();
+      }
+    },
     systemLogin() {
       this.nullRule = this.rules
       this.$nextTick(() => {
@@ -111,7 +139,6 @@
               background: 'rgba(0, 0, 0, 0.7)'
             })
             this.testLogin()
-            // return false
           } else {
             this.nullRule = {}
           }
@@ -120,9 +147,9 @@
       })
     },
     async testLogin() {
+      // location.assign("/view/desktop/")
       tologin({ username: this.user.loginName, password: this.user.password })
         .then(json => {
-          // console.log(json, "鐧诲綍璇锋眰");
           const loginedInfo = {
             access_token: json.token_type + ' ' + json.access_token,
             refresh_token: json.refresh_token
@@ -133,56 +160,41 @@
           this.getLoginUserData()
         })
         .catch(err => {
-          // console.log(err, "鐧诲綍鎶ラ敊");
           this.loading.close()
           this.$notify({
             title: '鎻愮ず',
             type: 'error',
-            message: err
+            message: err.msg
           })
           this.$refs.pwd.focus()
         })
     },
     async getLoginUserData() {
-      let json = await getLoginUserData()
-      if (!json.error) {
-        // this.loading.close()
-        sessionStorage.setItem('userInfo', JSON.stringify(json))
-        this.$notify({
-          title: '鎻愮ず',
-          type: 'success',
-          message: '鐧诲綍鎴愬姛锛�'
-        })
-
+      let res = await getLoginUserData()
+      if (res.success) {
+        sessionStorage.setItem('userInfo', JSON.stringify(res.data))
+        this.$notify.success("鐧诲綍鎴愬姛锛�")
         // 鑾峰彇鏉冮檺
         await this.getMenuList()
         location.assign("/view/desktop/")
-        return json
+        return res.data
       } else {
-        this.$notify({
-          title: '鎻愮ず',
-          type: 'error',
-          message: '鐧诲綍澶辫触锛�'
-        })
-        // this.loading.close()
+        this.$notify.error("鐧诲綍澶辫触锛�")
       }
     },
 
     getScreenHeight() {
       this.currentHeight = document.documentElement.clientHeight
       this.currentWidth = document.documentElement.clientWidth
-      // console.log(this.currentHeight, "褰撳墠绐楀彛澶у皬");
       window.onresize = () => {
         this.currentHeight = document.documentElement.clientHeight
         this.currentWidth = document.documentElement.clientWidth
-        // console.log(this.currentHeight, "褰撳墠绐楀彛澶у皬2", this.currentWidth);
         this.$forceUpdate()
       }
     },
     async getServerName() {
       let res = await getServerName()
       if (res && res.success) {
-        console.log(res.data.serverName)
         this.serverTitle = res.data.serverName
         window.document.title = res.data.serverName
           ? res.data.serverName
@@ -195,7 +207,6 @@
       if (results && results.success) {
         /* 瀛樺偍鏉冮檺 */
         let buttonAuthoritys = results.data;
-        // console.log(this.$route.query.is_loginsss)
         if (results && results.length && this.$route.query.is_login) {
           this.$router.replace(results[0].url);
         }
@@ -208,6 +219,15 @@
         });
       }
     },
+    getQueryVariable(variable) {
+      var query = window.location.search.substring(1);
+      var vars = query.split("&");
+      for (var i = 0; i < vars.length; i++) {
+        var pair = vars[i].split("=");
+        if (pair[0] == variable) { return pair[1]; }
+      }
+      return (false);
+    }
   },
 }
 </script>
@@ -261,7 +281,6 @@
   }
   .login-form {
     margin: 40px 10px;
-    // margin: 24px 10px 40px 10px;
   }
   .gradient-text {
     line-height: 36px;
@@ -269,7 +288,7 @@
     font-family: -webkit-pictograph;
     font-weight: bolder;
     position: relative;
-    b{
+    b {
       font-size: 20px;
     }
   }

--
Gitblit v1.8.0