This commit is contained in:
2026-05-02 09:59:06 +08:00
parent ea3e60c17c
commit 1af4075e9b
249 changed files with 11209 additions and 14884 deletions

View File

@@ -6,11 +6,10 @@ import defaultSettings from '@/config/settings.json'
import { userPmn } from '@/api/module/user'
import { localMenuData, transformMenuToRoutes, type ServerMenuItem } from '@/router/menu-data'
import { buildTree } from '@/utils/tree'
import SafeStorage, { AppStorageKey } from "@/utils/safeStorage";
import SafeStorage, { AppStorageKey } from '@/utils/safeStorage'
import router from '@/router'
import { AppState } from './types'
const useAppStore = defineStore('app', {
state: (): AppState => ({ ...defaultSettings }),
@@ -59,15 +58,15 @@ const useAppStore = defineStore('app', {
console.log('res', res)
if (res.code === 0 && res?.details?.length) {
// 使用 buildTree 将扁平数据构建为树结构
const treeResult = buildTree(res.details[0].permissions as ServerMenuItem[], {
orderKey: 'order'
const treeResult = buildTree(res.details[0].permissions as ServerMenuItem[], {
orderKey: 'order',
})
console.log('buildTree', treeResult)
// 使用 transformMenuToRoutes 将树结构转换为路由配置
const routes = transformMenuToRoutes(treeResult.rootItems as ServerMenuItem[])
console.log('transformMenuToRoutes', routes)
// 动态注册路由
routes.forEach((route) => {
// 打印路由结构以便调试
@@ -77,7 +76,7 @@ const useAppStore = defineStore('app', {
// }, 2))
router.addRoute(route as any)
})
this.serverMenu = routes as unknown as RouteRecordNormalized[]
} else {
// 如果接口返回数据为空,使用本地数据
@@ -86,7 +85,6 @@ const useAppStore = defineStore('app', {
// })
// this.serverMenu = localMenuData as unknown as RouteRecordNormalized[]
}
} catch (error) {
// 接口失败时使用本地数据
console.error('fetchServerMenuConfig error:', error)

View File

@@ -4,7 +4,7 @@ import { request } from '@/api/request'
import { clearToken, setToken } from '@/utils/auth'
import { removeRouteListener } from '@/utils/route-listener'
import { defineStore } from 'pinia'
import SafeStorage, { AppStorageKey } from "@/utils/safeStorage";
import SafeStorage, { AppStorageKey } from '@/utils/safeStorage'
import useAppStore from '../app'
import { UserState } from './types'
@@ -26,7 +26,7 @@ const useUserStore = defineStore('user', {
accountId: undefined,
certification: undefined,
role: '',
userInfo: SafeStorage.get(AppStorageKey.USER_INFO)
userInfo: SafeStorage.get(AppStorageKey.USER_INFO),
}),
getters: {
@@ -62,7 +62,7 @@ const useUserStore = defineStore('user', {
// Login
async login(loginForm: LoginData) {
try {
const { code, details } = await login(loginForm as any) as any
const { code, details } = (await login(loginForm as any)) as any
if (code === 0 && details?.token) {
setToken(details.token)
SafeStorage.set(AppStorageKey.USER_INFO, details)