From 60b4e3f57042c32aca2be628042fd6eff5c87249 Mon Sep 17 00:00:00 2001
From: xiebin <123456>
Date: Tue, 30 Aug 2022 10:24:55 +0800
Subject: [PATCH] 优化登录相关

---
 src/permission.js |   27 ++++++++++++++++++++++++++-
 1 files changed, 26 insertions(+), 1 deletions(-)

diff --git a/src/permission.js b/src/permission.js
index 2f88c34..418ad23 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -8,6 +8,8 @@
 import {getToken} from '@/util/auth'
 import NProgress from 'nprogress' // progress bar
 import 'nprogress/nprogress.css' // progress bar style
+import {loginInfoByToken} from '@/api/user'
+import {Message} from "element-ui";
 NProgress.configure({showSpinner: false});
 const lockPage = store.getters.website.lockPage; //锁屏页
 router.beforeEach((to, from, next) => {
@@ -57,7 +59,30 @@
     if (meta.isAuth === false) {
       next()
     } else {
-      next('/login')
+      // 需要判断是否单点登录
+      let token = window.sessionStorage.getItem('token')
+      if (token) {
+        loginInfoByToken.then(res => {
+          const data = res.data;
+          if (data.error_description) {
+            Message({
+              message: data.error_description,
+              type: 'error'
+            })
+          } else {
+            this.$store.commit('SET_TOKEN', data.access_token);
+            this.$store.commit('SET_REFRESH_TOKEN', data.refresh_token);
+            this.$store.commit('SET_TENANT_ID', data.tenant_id);
+            this.$store.commit('SET_USER_INFO', data);
+            this.$store.commit('DEL_ALL_TAG');
+            this.$store.commit('CLEAR_LOCK');
+            next(to.path)
+          }
+
+        })
+      } else {
+        next('/login')
+      }
     }
   }
 })

--
Gitblit v1.9.3