|
|
/*
|
|
|
* @Author: donghao donghao@supervision.ltd
|
|
|
* @Date: 2024-03-27 14:56:27
|
|
|
* @LastEditors: donghao donghao@supervision.ltd
|
|
|
* @LastEditTime: 2024-04-19 14:51:38
|
|
|
* @FilePath: \general-ai-manage\config\routes.ts
|
|
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
|
*/
|
|
|
|
|
|
/**
|
|
|
* @name umi 的路由配置
|
|
|
* @description 只支持 path,component,routes,redirect,wrappers,name,icon 的配置
|
|
|
* @param path path 只支持两种占位符配置,第一种是动态参数 :id 的形式,第二种是 * 通配符,通配符只能出现路由字符串的最后。
|
|
|
* @param component 配置 location 和 path 匹配后用于渲染的 React 组件路径。可以是绝对路径,也可以是相对路径,如果是相对路径,会从 src/pages 开始找起。
|
|
|
* @param routes 配置子路由,通常在需要为多个路径增加 layout 组件时使用。
|
|
|
* @param redirect 配置路由跳转
|
|
|
* @param wrappers 配置路由组件的包装组件,通过包装组件可以为当前的路由组件组合进更多的功能。 比如,可以用于路由级别的权限校验
|
|
|
* @param name 配置路由的标题,默认读取国际化文件 menu.ts 中 menu.xxxx 的值,如配置 name 为 login,则读取 menu.ts 中 menu.login 的取值作为标题
|
|
|
* @param icon 配置路由的图标,取值参考 https://ant.design/components/icon-cn, 注意去除风格后缀和大小写,如想要配置图标为 <StepBackwardOutlined /> 则取值应为 stepBackward 或 StepBackward,如想要配置图标为 <UserOutlined /> 则取值应为 user 或者 User
|
|
|
* @doc https://umijs.org/docs/guides/routes
|
|
|
*/
|
|
|
|
|
|
// 主页路由模块
|
|
|
export const homeRoute = [
|
|
|
{
|
|
|
name: 'home-business-project',
|
|
|
path: '/home/business-project',
|
|
|
component: './Project/BusinessProject',
|
|
|
access: 'canReadMenu',
|
|
|
key: 'BusinessProject001',
|
|
|
level: 1, // 一级菜单
|
|
|
},
|
|
|
];
|
|
|
|
|
|
/**
|
|
|
* @模型路由模块
|
|
|
* @param modelRouteIndex 一级菜单
|
|
|
* @param subModelRoute 二级菜单
|
|
|
* @param level 菜单级数
|
|
|
* @param isHideMenu 是否隐藏菜单
|
|
|
*/
|
|
|
|
|
|
const modelRouteIndex = {
|
|
|
name: 'model-index',
|
|
|
path: '/home/model-index',
|
|
|
component: './Model/ModelIndex',
|
|
|
access: 'canReadMenu',
|
|
|
key: 'model001',
|
|
|
};
|
|
|
const subModelRoute = [
|
|
|
{
|
|
|
name: 'model-runtime-lib',
|
|
|
path: '/home/runtime-lib',
|
|
|
component: './Model/ModelRuntimeLib',
|
|
|
access: 'canReadMenu',
|
|
|
key: 'model002',
|
|
|
level: 2,
|
|
|
},
|
|
|
{
|
|
|
name: 'model-detail',
|
|
|
path: '/home/model-detail/:id',
|
|
|
component: './Model/ModelDetail',
|
|
|
access: 'canReadMenu',
|
|
|
key: 'model003',
|
|
|
isHideMenu: true,
|
|
|
level: 2,
|
|
|
},
|
|
|
];
|
|
|
|
|
|
export const modelRoute = [
|
|
|
{
|
|
|
...modelRouteIndex,
|
|
|
level: 1,
|
|
|
subMenu: [modelRouteIndex, ...subModelRoute],
|
|
|
},
|
|
|
...subModelRoute,
|
|
|
];
|
|
|
|
|
|
/**
|
|
|
* @外部菜单
|
|
|
*/
|
|
|
export const outerMenuRoute = {
|
|
|
name: 'home',
|
|
|
path: '/home',
|
|
|
layout: false,
|
|
|
access: 'canReadMenu',
|
|
|
component: '@/layouts/HomeLayout',
|
|
|
routes: [...homeRoute, ...modelRoute],
|
|
|
};
|
|
|
|
|
|
// 全路由模块
|
|
|
export default [
|
|
|
outerMenuRoute,
|
|
|
{
|
|
|
path: '/user',
|
|
|
layout: false,
|
|
|
routes: [
|
|
|
{
|
|
|
name: 'login',
|
|
|
path: '/user/login',
|
|
|
component: './User/Login',
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
{
|
|
|
path: '/testPage',
|
|
|
name: 'testPage',
|
|
|
access: 'canReadMenu',
|
|
|
routes: [
|
|
|
{
|
|
|
name: 'testPage-business-project',
|
|
|
path: '/testPage/business-project',
|
|
|
component: './Project/BusinessProject',
|
|
|
access: 'canReadMenu',
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
{
|
|
|
name: 'businessInfo',
|
|
|
path: '/businessInfo',
|
|
|
access: 'canReadMenu',
|
|
|
routes: [
|
|
|
{
|
|
|
name: 'business-info-index',
|
|
|
path: '/businessInfo/index',
|
|
|
component: './Project/BusinessInfo',
|
|
|
access: 'canReadMenu',
|
|
|
},
|
|
|
// {
|
|
|
// name: 'realTime-alarm-list',
|
|
|
// path: '/realTime/alarm-list',
|
|
|
// component: './RealTime/AlarmList',
|
|
|
// access: 'canReadMenu',
|
|
|
// },
|
|
|
// {
|
|
|
// name: 'realTime-alarm-rules',
|
|
|
// path: '/realTime/alarm-rules',
|
|
|
// component: './RealTime/AlarmRules',
|
|
|
// access: 'canReadMenu',
|
|
|
// },
|
|
|
// {
|
|
|
// name: 'realTime-device-list',
|
|
|
// path: '/realTime/device-list',
|
|
|
// component: './RealTime/DeviceList',
|
|
|
// access: 'canReadMenu',
|
|
|
// },
|
|
|
],
|
|
|
},
|
|
|
{
|
|
|
path: '/',
|
|
|
redirect: '/home/business-project',
|
|
|
},
|
|
|
{
|
|
|
path: '*',
|
|
|
layout: false,
|
|
|
component: './404',
|
|
|
},
|
|
|
// test demo
|
|
|
{
|
|
|
path: '/admin',
|
|
|
name: 'admin',
|
|
|
icon: 'crown',
|
|
|
routes: [
|
|
|
{
|
|
|
path: '/admin',
|
|
|
redirect: '/admin/sub-page',
|
|
|
},
|
|
|
{
|
|
|
path: '/admin/sub-page',
|
|
|
name: 'sub-page',
|
|
|
component: './Admin',
|
|
|
},
|
|
|
],
|
|
|
},
|
|
|
];
|