Files
geg-gas-web/src/router/routes/basic.ts
‘huanghaiixia’ 2fcd09b943 标题优化
2026-01-30 15:55:59 +08:00

302 lines
8.0 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import type { AppRouteRecordRaw } from '/@/router/types';
import { t } from '/@/hooks/web/useI18n';
import { REDIRECT_NAME, LAYOUT, EXCEPTION_COMPONENT, PAGE_NOT_FOUND_NAME } from '/@/router/constant';
import { PageEnum } from '/@/enums/pageEnum';
// 404 on a page
export const PAGE_NOT_FOUND_ROUTE: AppRouteRecordRaw = {
path: '/:path(.*)*',
name: PAGE_NOT_FOUND_NAME,
component: LAYOUT,
meta: {
title: 'ErrorPage',
hideBreadcrumb: true,
hideMenu: true
},
children: [
{
path: '/:path(.*)*',
name: PAGE_NOT_FOUND_NAME,
component: EXCEPTION_COMPONENT,
meta: {
title: 'ErrorPage',
hideBreadcrumb: true,
hideMenu: true
}
}
]
};
export const REDIRECT_ROUTE: AppRouteRecordRaw = {
path: '/redirect',
component: LAYOUT,
name: 'RedirectTo',
meta: {
title: REDIRECT_NAME,
hideBreadcrumb: true,
hideMenu: true
},
children: [
{
path: '/redirect/:path(.*)',
name: REDIRECT_NAME,
component: () => import('/@/views/sys/redirect/index.vue'),
meta: {
title: REDIRECT_NAME,
hideBreadcrumb: true
}
}
]
};
export const ERROR_LOG_ROUTE: AppRouteRecordRaw = {
path: '/error-log',
name: 'ErrorLog',
component: LAYOUT,
redirect: '/error-log/list',
meta: {
title: 'ErrorLog',
hideBreadcrumb: true,
hideChildrenInMenu: true
},
children: [
{
path: 'list',
name: 'ErrorLogList',
component: () => import('/@/views/sys/error-log/index.vue'),
meta: {
title: t('错误日志列表'),
hideBreadcrumb: true,
currentActiveMenu: '/error-log'
}
}
]
};
export const SYSTEM_ROUTE: AppRouteRecordRaw = {
path: '/dashboard',
name: 'Dashboard',
component: LAYOUT,
redirect: '/dashboard/analysis',
meta: {
orderNo: 10,
icon: 'ion:grid-outline',
title: t('分析页')
},
children: [
{
path: 'analysis',
name: 'Analysis',
component: () => import('/@/views/dashboard/analysis/index.vue'),
meta: {
affix: true,
title: t('分析页')
}
},
{
path: 'workbench',
name: 'Workbench',
component: () => import('/@/views/dashboard/workbench/index.vue'),
meta: {
title: t('工作台')
}
}
]
};
export const USERCENTER_ROUTE: AppRouteRecordRaw = {
path: '/user-center',
name: 'UserCenter',
component: LAYOUT,
redirect: PageEnum.USER_CENTER,
meta: {
title: t('用户中心')
},
children: [
{
path: 'info',
name: 'UserInfo',
component: () => import('/@/views/system/setting/index.vue'),
meta: {
title: t('用户中心'),
icon: 'ant-design:user-outlined'
}
}
]
};
export const FLOW_ROUTE: AppRouteRecordRaw[] = [{
path: '/flow/:arg1/:arg2',
name: 'Flow',
meta: {
title: '流程'
},
component: LAYOUT,
children: [
{
path: 'createFlow',
name: 'CreateFlow',
component: () => import('/@/views/secondDev/createFlow.vue'),
meta: {
title: (route) => (route.query.formName||'流程')
}
},
{
path: 'approveFlow',
name: 'ApproveFlow',
component: () => import('/@/views/secondDev/approveFlowPage.vue'),
meta: {
title: (route) => (route.query.formName||'流程')
}
}
]
}, {
path: '/flowList',
name: 'FlowList',
meta: {
title: '流程列表'
},
component: LAYOUT,
children: [
/* 菜单不支持复用不同菜单如果path或者name一样会报错 */
{
path: 'draft',
name: 'FlowListPage',
component: () => import('/@/views/secondDev/processTasksPage.vue'),
meta: {
title: '草稿箱'
}
},
{
path: 'todo',
name: 'FlowListPage2',
component: () => import('/@/views/secondDev/processTasksPage.vue'),
meta: {
title: '待办列表'
}
},
{
path: 'myProcess',
name: 'FlowListPage3',
component: () => import('/@/views/secondDev/processTasksPage.vue'),
meta: {
title: '我发起的'
}
},
{
path: 'done',
name: 'FlowListPage4',
component: () => import('/@/views/secondDev/processTasksPage.vue'),
meta: {
title: '已办'
}
}
]
}, {
path: '/form/:module/:id',
name: 'SimpleForm',
meta: {
title: '表单'
},
component: LAYOUT,
children: [
{
path: 'createForm',
name: 'createForm',
component: () => import('/@/views/secondDev/formCreatePage.vue'),
meta: {
title: (route) => '新建'+(route.query.formName||'表单')
}
},
{
path: 'updateForm',
name: 'updateForm',
component: () => import('/@/views/secondDev/formCreatePage.vue'),
meta: {
title: (route) => '更新'+(route.query.formName||'表单')
}
},
{
path: 'viewForm',
name: 'viewForm',
component: () => import('/@/views/secondDev/formCreatePage.vue'),
meta: {
title: (route) => '查看'+(route.query.formName||'表单')
}
},
]
}];
export const PROCESS_MONITORING: AppRouteRecordRaw[] = [{
path: '/processMonitoring/:arg1/:arg2',
name: 'ProcessMonitoring',
meta: {
title: '流程监控'
},
component: LAYOUT,
children: [
{
path: 'processMonitoringFlow',
name: 'ProcessMonitoringFlow',
component: () => import('/@/views/secondDev/processMonitoringPage.vue'),
meta: {
title: (route) => '流程监控'
}
},
]
}]
// 自定义页面路由
export const PAGE_CUSTOM_ROUTE: AppRouteRecordRaw[] = [{
path: '',
name: '',
meta: {
title: ''
},
component: LAYOUT,
children: [
{
path: '/approve/Appro/viewForm',
name: 'ApproForm',
component: () => import('/@/views/approve/Appro/components/createForm.vue'),
meta: {
title: (route) => '签报详情'
}
},
{
path: '/contract/ContractFact/viewForm',
name: 'ContractFactForm',
component: () => import('/@/views/contract/ContractFact/components/createForm.vue'),
meta: {
title: (route) => '合同详情'
}
},
{
path: '/dayPlan/PngAppro/createForm',
name: 'PngAppro',
component: () => import('/@/views/dayPlan/PngAppro/components/createForm.vue'),
meta: {
title: (route) => route.query.formName
}
},
{
path: '/dayPlan/PngMeasureSalesPur/createForm',
name: 'PngMeasureSalesPur',
component: () => import('/@/views/dayPlan/PngMeasureSalesPur/components/createForm.vue'),
meta: {
title: (route) => route.query.formName
}
},
{
path: '/dayPlan/Demand/createForm',
name: 'Demand',
component: () => import('/@/views/dayPlan/Demand/components/createForm.vue'),
meta: {
title: (route) => route.query.formName
}
},
]
}];