diff --git a/src/permission.js b/src/permission.js index 4b4be43..52f958a 100644 --- a/src/permission.js +++ b/src/permission.js @@ -1,6 +1,6 @@ import router from './router' import { isRelogin } from '@/config/axios/service' -import { getAccessToken, removeToken } from '@/utils/auth' +import { getAccessToken } from '@/utils/auth' import { useTitle } from '@/hooks/web/useTitle' import { useNProgress } from '@/hooks/web/useNProgress' import { usePageLoading } from '@/hooks/web/usePageLoading' @@ -9,7 +9,6 @@ import { useUserStoreWithOut } from '@/store/modules/user' import { usePermissionStoreWithOut } from '@/store/modules/permission' import { useAppStoreWithOut } from '@/store/modules/app' import { getTenantId, getAppId, setTenantId, setAppId } from '@/utils/auth' -import cache from '@/plugins/cache' const { start, done } = useNProgress() @@ -21,58 +20,49 @@ const whiteList = ['/login', '/social-login', '/auth-redirect', '/bind', '/regis router.beforeEach(async (to, from, next) => { start() loadStart() - if (getAppId() && to.query?.appId && getAppId() != to.query?.appId) { - removeToken() - cache?.local?.delete('appInfo') - cache?.local?.delete('roleRouters') - cache?.local?.delete('user') - cache?.local?.delete('App_ID') - next(`/login?tenantId=${to.query?.tenantId}&appId=${to.query?.appId}`) - } else { - if (getAccessToken()) { - if (to.path === '/login') { - if (to.query?.tenantId && to.query?.appId) { - setApp(to.query.tenantId, to.query.appId) - await waitTime(1500) - } else { - next({ path: '/' }) - } + if (getAccessToken()) { + if (to.path === '/login') { + if (to.query?.tenantId && to.query?.appId) { + setApp(to.query.tenantId, to.query.appId) + await waitTime(1500) } else { - // 获取所有字典 - const dictStore = useDictStoreWithOut() - const userStore = useUserStoreWithOut() - const permissionStore = usePermissionStoreWithOut() - if (!dictStore.getIsSetDict) { - await dictStore.setDictMap() - } - if (!userStore.getIsSetUser) { - isRelogin.show = true - await userStore.setUserInfoAction() - isRelogin.show = false - // 后端过滤菜单 - await permissionStore.generateRoutes() - permissionStore.getAddRouters.forEach((route) => { - router.addRoute(route) // 动态添加可访问路由表 - }) - const redirectPath = from.query.redirect || to.path - const redirect = decodeURIComponent(redirectPath) - const nextData = to.path === redirect ? { ...to, replace: true } : { path: redirect } - next(nextData) - } else { - next() - } + next({ path: '/' }) } } else { - if (whiteList.indexOf(to.path) !== -1) { + // 获取所有字典 + const dictStore = useDictStoreWithOut() + const userStore = useUserStoreWithOut() + const permissionStore = usePermissionStoreWithOut() + if (!dictStore.getIsSetDict) { + await dictStore.setDictMap() + } + if (!userStore.getIsSetUser) { + isRelogin.show = true + await userStore.setUserInfoAction() + isRelogin.show = false + // 后端过滤菜单 + await permissionStore.generateRoutes() + permissionStore.getAddRouters.forEach((route) => { + router.addRoute(route) // 动态添加可访问路由表 + }) + const redirectPath = from.query.redirect || to.path + const redirect = decodeURIComponent(redirectPath) + const nextData = to.path === redirect ? { ...to, replace: true } : { path: redirect } + next(nextData) + } else { next() + } + } + } else { + if (whiteList.indexOf(to.path) !== -1) { + next() + } else { + const tenantId = getTenantId() + const appId = getAppId() + if (tenantId && appId) { + next(`/oa/login?tenantId=${tenantId}&appId=${appId}&redirect=${to.fullPath}`) // 否则全部重定向到登录页 } else { - const tenantId = getTenantId() - const appId = getAppId() - if (tenantId && appId) { - next(`/oa/login?tenantId=${tenantId}&appId=${appId}&redirect=${to.fullPath}`) // 否则全部重定向到登录页 - } else { - next(`/oa/login?redirect=${to.fullPath}`) // 否则全部重定向到登录页 - } + next(`/oa/login?redirect=${to.fullPath}`) // 否则全部重定向到登录页 } } } diff --git a/src/store/modules/user.ts b/src/store/modules/user.ts index baa1797..23cd47d 100644 --- a/src/store/modules/user.ts +++ b/src/store/modules/user.ts @@ -63,7 +63,7 @@ export const useUserStore = defineStore('admin-user', { async loginOut() { await loginOut() removeToken() - cache.local.clear() + // cache.local.clear() this.resetState() }, resetState() {