Jelajahi Sumber

Merge branch 'master' into f-1002866

allen 2 tahun lalu
induk
melakukan
295e0dd72a
4 mengubah file dengan 39 tambahan dan 8 penghapusan
  1. 5 2
      src/api/menu.js
  2. 1 1
      src/permission.js
  3. 15 0
      src/utils/auth.js
  4. 18 5
      src/utils/sso.js

+ 5 - 2
src/api/menu.js

@@ -1,10 +1,13 @@
 import request from '@/utils/request';
 
+import { getSysMenuConfigID } from '@/utils/auth';
+
 // 获取路由
 export const getRouters = () => {
   return request({
     url: '/getRouters',
-    method: 'get'
+    method: 'get',
+    params: { menucfgId: getSysMenuConfigID() }
   });
 };
 
@@ -13,6 +16,6 @@ export const getMenus = () => {
   return request({
     url: '/getMenus',
     method: 'get',
-    params: { menucfgId: process.env.VUE_APP_SYS_APP_MENUCFGID }
+    params: { menucfgId: getSysMenuConfigID() }
   });
 };

+ 1 - 1
src/permission.js

@@ -59,7 +59,7 @@ router.beforeEach(async (to, from, next) => {
       }
     }
   } else {
-    const result = await parseSSoToken(store, next, to);
+    const result = await parseSSoToken(store, next, to, router);
     // 没有token
     if (result) {
     } else {

+ 15 - 0
src/utils/auth.js

@@ -4,6 +4,7 @@ const TokenKey = 'SY-Token';
 const SSOConfigKey = 'SY-SSOCONFIG';
 const MenuVisibleKey = 'SY-MENUS-VISIBLE';
 const PlatformTokenKey = 'PLATFORM-Token';
+const SYSTEMAPPMENUCFGID = 'SYS_WPR_MENUCFGID';
 
 export function getToken() {
   return Cookies.get(TokenKey);
@@ -52,3 +53,17 @@ export function setPlatformToken(token) {
 export function removePlatformToken() {
   return Cookies.remove(PlatformTokenKey);
 }
+
+export function getSysMenuConfigID() {
+  return (
+    Cookies.get(SYSTEMAPPMENUCFGID) || process.env.VUE_APP_SYS_APP_MENUCFGID
+  );
+}
+
+export function setSysMenuConfigID(token) {
+  return Cookies.set(SYSTEMAPPMENUCFGID, token);
+}
+
+export function removeSysMenuConfigID() {
+  return Cookies.remove(SYSTEMAPPMENUCFGID);
+}

+ 18 - 5
src/utils/sso.js

@@ -1,5 +1,9 @@
 import request from '@/utils/request';
-import { getSSOConfig, setPlatformToken } from '@/utils/auth';
+import {
+  getSSOConfig,
+  setPlatformToken,
+  setSysMenuConfigID
+} from '@/utils/auth';
 import { defaults, omit } from 'lodash-es';
 const baseURL = process.env.VUE_APP_BASE_API;
 const APP_PORT = process.env.port || process.env.npm_config_port || 8008; // 端口
@@ -133,7 +137,7 @@ export function getResdirectAppUrl(ssoToken) {
       ? parseTarget(
           ssoConfig.ssoLoginUrl + backUrl + `&appid=${ssoConfig.appId}`
         )
-      : '/water/login';
+      : process.env.VUE_APP_SYS_BASE_URL + '/login';
     // alert(  ssoConfig.ssoEnabled );
     // alert(redirectUrl);
     // alert(ssoConfig.ssoLoginUrl);
@@ -141,9 +145,13 @@ export function getResdirectAppUrl(ssoToken) {
   }
 }
 
-export function parseSSoToken(store, next, to) {
+export function parseSSoToken(store, next, to, router) {
   updateSSOConfig();
-  const { token, siblingToken, redirect } = to.query;
+  const { token, siblingToken, subid } = to.query;
+
+  if (subid) {
+    setSysMenuConfigID(subid);
+  }
 
   if (token) {
     let ssoToken = token;
@@ -201,7 +209,12 @@ export function parseSSoToken(store, next, to) {
   } else if (siblingToken) {
     //
     return store.dispatch('SaveSiblingToken', siblingToken).then(() => {
-      router.replace(to.path);
+      router.replace({
+        path: to.path,
+        query: omit(to.query, ['siblingToken', 'subid']),
+        replace: true
+      });
+
       return true;
     });
   } else {