From e00cf26e79ea6c36a64331f793c7c8db70cd0a62 Mon Sep 17 00:00:00 2001
From: zpzgiser <45806316+zpzgiser@users.noreply.github.com>
Date: Sun, 18 Jul 2021 00:20:27 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/zhba_regulatory

---
 src/permission.js |   76 ++++++++++++++++++++++++++++++++++---
 1 files changed, 69 insertions(+), 7 deletions(-)

diff --git a/src/permission.js b/src/permission.js
index 2f88c34..899de1f 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -2,13 +2,18 @@
  * 全站权限配置
  *
  */
+import md5 from 'js-md5'
+import request from '@/router/axios';
+import { Message } from 'element-ui'
+
+
 import router from './router/router'
 import store from './store'
-import {validatenull} from '@/util/validate'
-import {getToken} from '@/util/auth'
+import { validatenull } from '@/util/validate'
+import { getToken } from '@/util/auth'
 import NProgress from 'nprogress' // progress bar
 import 'nprogress/nprogress.css' // progress bar style
-NProgress.configure({showSpinner: false});
+NProgress.configure({ showSpinner: false });
 const lockPage = store.getters.website.lockPage; //锁屏页
 router.beforeEach((to, from, next) => {
   const meta = to.meta || {};
@@ -16,14 +21,14 @@
   store.commit('SET_IS_MENU', isMenu === undefined);
   if (getToken()) {
     if (store.getters.isLock && to.path !== lockPage) { //如果系统激活锁屏,全部跳转到锁屏页
-      next({path: lockPage})
+      next({ path: lockPage })
     } else if (to.path === '/login') { //如果登录成功访问登录页跳转到主页
-      next({path: '/'})
+      next({ path: '/' })
     } else {
       //如果用户信息为空则获取用户信息,获取用户信息失败,跳转到登录页
       if (store.getters.token.length === 0) {
         store.dispatch('FedLogOut').then(() => {
-          next({path: '/login'})
+          next({ path: '/login' })
         })
       } else {
         const value = to.query.src || to.fullPath;
@@ -57,7 +62,64 @@
     if (meta.isAuth === false) {
       next()
     } else {
-      next('/login')
+      // console.log(to, from);
+      next();
+      if (to.path == '/wel') {
+        var a = to.query.securitySupervisionSystem;
+        if (typeof a == "string") {
+          console.log(to.query.securitySupervisionSystem, 'securitySupervisionSystem');
+          // console.log("有main");
+
+          var obj = JSON.parse(a);
+          console.log(obj, "obj");
+          if (typeof obj == "object" && obj) {
+            // console.log("自动登入");
+            var data = {
+              tenantId: obj.data.dip,
+              username: obj.data.rese,
+              password: md5(obj.data.sap),
+              grant_type: 'password',
+              scope: 'all',
+              type: 'account'
+            };
+            // console.log(data, "自动ssss");
+            request({
+              url: 'http://192.168.109:80/blade-auth/oauth/token',
+              method: 'post',
+              headers: {
+                'Authorization': 'Basic c2FiZXI6c2FiZXJfc2VjcmV0',
+                "Tenant-Id": "000000"
+              },
+              params: data
+            }).then(res => {
+              const data = res.data;
+              if (data.error_description) {
+                Message({
+                  message: data.error_description,
+                  type: 'error'
+                })
+              } else {
+                store.commit('SET_TOKEN', data.access_token);
+                store.commit('SET_REFRESH_TOKEN', data.refresh_token);
+                store.commit('SET_TENANT_ID', data.tenant_id);
+                store.commit('SET_USER_INFO', data);
+                store.commit('DEL_ALL_TAG');
+                store.commit('CLEAR_LOCK');
+              }
+            })
+            return true;
+          } else {
+            // console.log("手动登入main不是JSON对象");
+            return false;
+          }
+
+        } else {
+          next('/login');
+        }
+
+        return;
+      }
+      next('/login');
     }
   }
 })

--
Gitblit v1.9.3