| | |
| | | <script lang="ts" setup> |
| | | import { computed, onMounted, ref, unref, watch } from 'vue' |
| | | import { useAppStore } from '@/store/modules/app' |
| | | import { useUserStoreWithOut } from '@/store/modules/user' |
| | | import { usePermissionStoreWithOut } from '@/store/modules/permission' |
| | | import { useDesign } from '@/hooks/web/useDesign' |
| | | import * as authUtil from "@/utils/auth"; |
| | | import {isRelogin} from "@/config/axios/service"; |
| | | import router from "@/router"; |
| | | import type {RouteRecordRaw} from "vue-router"; |
| | | import {CACHE_KEY, useCache, useSessionCache} from "@/hooks/web/useCache"; |
| | | import {getAccessToken} from "@/utils/auth"; |
| | | import {getInfo} from "@/api/login"; |
| | | const { wsCache } = useCache() |
| | | const { wsSessionCache } = useSessionCache() |
| | | |
| | | defineOptions({ name: 'Logo' }) |
| | | |
| | |
| | | |
| | | const collapse = computed(() => appStore.getCollapse) |
| | | |
| | | let tenantId = authUtil.getTenantId() |
| | | console.log(tenantId) |
| | | if (tenantId && tenantId === 1) { |
| | | homePath.value = '/index' |
| | | } else { |
| | | homePath.value = '/home2' |
| | | } |
| | | console.log(homePath.value) |
| | | homePath.value = '/index' |
| | | |
| | | onMounted(() => { |
| | | if (unref(collapse)) show.value = false |
| | |
| | | } |
| | | } |
| | | ) |
| | | |
| | | /** 刷新所有菜单权限 */ |
| | | const gotoHome = async () => { |
| | | const permissionStore = usePermissionStoreWithOut() |
| | | isRelogin.show = true |
| | | let userInfo = await getInfo() |
| | | wsCache.set(CACHE_KEY.USER, userInfo) |
| | | wsSessionCache.set(CACHE_KEY.ROLE_ROUTERS, userInfo.menus) |
| | | isRelogin.show = false |
| | | // 后端过滤菜单 |
| | | await permissionStore.generateRoutes() |
| | | permissionStore.getAddRouters.forEach((route) => { |
| | | router.addRoute(route as unknown as RouteRecordRaw) // 动态添加可访问路由表 |
| | | }) |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | |
| | | layout !== 'classic' ? `${prefixCls}__Top` : '', |
| | | 'flex !h-[var(--logo-height)] items-center cursor-pointer pl-8px relative decoration-none overflow-hidden' |
| | | ]" |
| | | @click="gotoHome" |
| | | :to="homePath" |
| | | > |
| | | <img |