From 4aca5a138eaf0e212524c5aa013bc585a5c29fac Mon Sep 17 00:00:00 2001 From: liaoboping <344114999@qq.com> Date: Sun, 28 Sep 2025 11:12:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E7=BB=93=E6=9E=84?= =?UTF-8?q?=E5=88=86=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/generator-routers.js | 98 ++++++++++++++++---- src/views/simulationScene/database/index.vue | 18 ++-- src/views/user/Welcome.vue | 2 +- 3 files changed, 92 insertions(+), 26 deletions(-) diff --git a/src/router/generator-routers.js b/src/router/generator-routers.js index 78cac3e..2cdee25 100644 --- a/src/router/generator-routers.js +++ b/src/router/generator-routers.js @@ -10,13 +10,13 @@ const constantRouterComponents = { BlankLayout: BlankLayout, RouteView: RouteView, PageView: PageView, - '403': () => import(/* webpackChunkName: "error" */ '@/views/exception/403'), - '404': () => import(/* webpackChunkName: "error" */ '@/views/exception/404'), - '500': () => import(/* webpackChunkName: "error" */ '@/views/exception/500'), + 403: () => import(/* webpackChunkName: "error" */ '@/views/exception/403'), + 404: () => import(/* webpackChunkName: "error" */ '@/views/exception/404'), + 500: () => import(/* webpackChunkName: "error" */ '@/views/exception/500'), // 你需要动态引入的页面组件 WorkplaceEquipment: () => import('@/views/dashboard/WorkplaceEquipment'), - Analysis: () => import('@/views/dashboard/Analysis') + Analysis: () => import('@/views/dashboard/Analysis'), // 'TestWork': () => import(/* webpackChunkName: "TestWork" */ '@/views/dashboard/TestWork') } @@ -24,7 +24,7 @@ const constantRouterComponents = { const notFoundRouter = { path: '*', redirect: '/404', - hidden: true + hidden: true, } // 根级菜单 @@ -36,9 +36,72 @@ const rootRouter = { component: 'BasicLayout', // redirect: '/dashboard/equipment', meta: { - title: '首页' + title: '首页', }, - children: [] + children: [], +} + +const systemNav = { + id: '_67ed94a37b03415c8ee77a8991e79745', + title: '系统管理', + key: 'System', + name: '系统管理', + component: 'BasicLayout', + redirect: '/system/userlist', + parentId: '', + icon: 'dashboard', + children: [ + { + id: '_1', + title: '菜单管理', + key: 'MenuList', + name: '菜单管理', + component: 'isystem/menuList', + redirect: null, + parentId: '67ed94a37b03415c8ee77a8991e79745', + icon: 'dashboard', + }, + { + id: '_5114bf6a963f41149ab2435c86551927', + title: '用户管理', + key: 'UserList', + name: '用户管理', + component: 'isystem/userList', + redirect: null, + parentId: '67ed94a37b03415c8ee77a8991e79745', + icon: 'dashboard', + }, + { + id: '_230a5ebe7cdc41acb997122d6de2d86f', + title: '角色管理', + key: 'RoleList', + name: '角色管理', + component: 'isystem/roleList', + redirect: null, + parentId: '67ed94a37b03415c8ee77a8991e79745', + icon: 'dashboard', + }, + { + id: '_2fd1683b13c241be84c34185ff55028e', + title: '字典管理', + key: 'DictIndex', + name: '字典管理', + component: 'isystem/dict/dictlist', + redirect: null, + parentId: '67ed94a37b03415c8ee77a8991e79745', + icon: 'dashboard', + }, + { + id: '_85924f8619f1451e847c9f69705f360f', + title: '系统日志', + key: 'LogList', + name: '系统日志', + component: 'isystem/logList', + redirect: null, + parentId: '67ed94a37b03415c8ee77a8991e79745', + icon: 'dashboard', + }, + ], } /** @@ -75,11 +138,11 @@ const rootRouter = { // }) // }) // } -export const generatorDynamicRouter = token => { +export const generatorDynamicRouter = (token) => { return new Promise((resolve, reject) => { loginService .getCurrentUserNav() - .then(res => { + .then((res) => { console.log('generatorDynamicRouter response:', res) const data = res.data const childrenNav = [] @@ -87,11 +150,14 @@ export const generatorDynamicRouter = token => { // 后端数据, 根级树数组, 根级 PID listToTree(data, childrenNav, '') console.log('childrenNav', childrenNav) + if (process.env.NODE_ENV !== 'production') { + childrenNav.push(systemNav) + } const routers = generator(childrenNav) console.log('routers', routers) resolve(routers) }) - .catch(err => { + .catch((err) => { reject(err) }) }) @@ -104,8 +170,8 @@ export const generatorDynamicRouter = token => { * @param parent * @returns {*} */ - export const generator = (routerMap, parent) => { - return routerMap.map(item => { +export const generator = (routerMap, parent) => { + return routerMap.map((item) => { const { title, show, hideChildren, hiddenHeaderContent, target, icon } = item || item.meta || {} const currentRouter = { // 如果路由设置了 path,则作为默认 path,否则 路由地址 动态拼接生成如 /dashboard/workplace @@ -123,9 +189,9 @@ export const generatorDynamicRouter = token => { title: title, icon: icon || undefined, hiddenHeaderContent: hiddenHeaderContent, - target: target + target: target, // permission: item.name - } + }, } // 是否设置了隐藏菜单 if (show === false) { @@ -157,13 +223,13 @@ export const generatorDynamicRouter = token => { * @param parentId 父ID */ const listToTree = (list, tree, parentId) => { - list.forEach(item => { + list.forEach((item) => { // 判断是否为父级菜单 if (item.parentId === parentId) { const child = { ...item, key: item.key || item.name, - children: [] + children: [], } // 迭代 list, 找到当前菜单相符合的所有子菜单 listToTree(list, child.children, item.id) diff --git a/src/views/simulationScene/database/index.vue b/src/views/simulationScene/database/index.vue index f136bda..bdd2ce7 100644 --- a/src/views/simulationScene/database/index.vue +++ b/src/views/simulationScene/database/index.vue @@ -28,49 +28,49 @@ export default { { title: '作战力量数据库', image: require('@/assets/images/simulation-scene/database/zzllsjk.png'), - path: '/databaseSystem/zzllsjk', + path: '/bzstlsjk/zzllsjk', }, { title: '保障力量数据库', image: require('@/assets/images/simulation-scene/database/bzllsjk.png'), - path: '/databaseSystem/bzllsjk', + path: '/bzstlsjk/bzllsjk', }, { title: '保障环境数据库', image: require('@/assets/images/simulation-scene/database/bzhjsjk.png'), - path: '/databaseSystem/bzhjsjk', + path: '/bzstlsjk/bzhjsjk', }, { title: '装备数据库', image: require('@/assets/images/simulation-scene/database/bzhjsjk.png'), - path: '/databaseSystem/zbsjk', + path: '/bzstlsjk/zbsjk', }, ], ywyylsjk: [ { title: '想定数据库', image: require('@/assets/images/simulation-scene/database/xdsjk.png'), - path: '/databaseSystem/xdsjk', + path: '/ywyylsjk/xdsjk', }, { title: '方案数据库', image: require('@/assets/images/simulation-scene/database/fasjk.png'), - path: '/databaseSystem/fasjk', + path: '/ywyylsjk/fasjk', }, { title: '进程数据库', image: require('@/assets/images/simulation-scene/database/jcsjk.png'), - path: '/databaseSystem/jcsjk', + path: '/ywyylsjk/jcsjk', }, { title: '图形数据库', image: require('@/assets/images/simulation-scene/database/txsjk.png'), - path: '/databaseSystem/txsjk', + path: '/bzstlsjk/txsjk', }, { title: '运行记录数据库', image: require('@/assets/images/simulation-scene/database/yxjlsjk.png'), - path: '/databaseSystem/yxjlsjk', + path: '/ywyylsjk/yxjlsjk', }, ], } diff --git a/src/views/user/Welcome.vue b/src/views/user/Welcome.vue index d257375..bbd0239 100644 --- a/src/views/user/Welcome.vue +++ b/src/views/user/Welcome.vue @@ -42,7 +42,7 @@ export default { moduleCode: 'db_system', moduleName: '数据库子系统', icon: require('@/assets/images/simulation-scene/system-icon/database.png'), - modulePath: '/databaseSystem/zzllsjk', + modulePath: '/bzstlsjk/zzllsjk', }, { moduleCode: 'simulation_system',