255 lines
6.7 KiB
TypeScript
255 lines
6.7 KiB
TypeScript
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||'表单')
|
||
}
|
||
},
|
||
{
|
||
path: 'createFormCustomer',
|
||
name: 'createFormCustomer',
|
||
component: () => import('/@/views/sales/Customer/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) => '流程监控'
|
||
}
|
||
},
|
||
]
|
||
}]
|