123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- import { RouteRecordRaw } from 'vue-router';
- /**
- * * 建议:路由 path 路径与文件夹名称相同,找文件可浏览器地址找,方便定位文件位置
- *
- * 路由meta对象参数说明
- * meta: {
- * title: 菜单栏及 tagsView 栏、菜单搜索名称(国际化)
- * isLink: 是否超链接菜单,开启外链条件,`1、isLink: 链接地址不为空`
- * isHide: 是否隐藏此路由
- * isKeepAlive: 是否缓存组件状态
- * isAffix: 是否固定在 tagsView 栏上
- * isIframe: 是否内嵌窗口,开启条件,`1、isIframe:true 2、isLink:链接地址不为空`
- * roles: 当前路由权限标识,取角色管理。控制路由显示、隐藏。超级管理员:admin 普通角色:common
- * icon: 菜单、tagsView 图标,阿里:加 `iconfont xxx`,fontawesome:加 `fa xxx`
- * }
- */
- // 扩展 RouteMeta 接口
- declare module 'vue-router' {
- interface RouteMeta {
- title?: string;
- isLink?: string;
- isHide?: boolean;
- isKeepAlive?: boolean;
- isAffix?: boolean;
- isIframe?: boolean;
- roles?: string[];
- icon?: string;
- }
- }
- /**
- * 定义动态路由
- * 前端添加路由,请在顶级节点的 `children 数组` 里添加
- * @description 未开启 isRequestRoutes 为 true 时使用(前端控制路由),开启时第一个顶级 children 的路由将被替换成接口请求回来的路由数据
- * @description 各字段请查看 `@/views/system/menu/component/Menu-add.vue 下的 ruleForm`
- * @returns 返回路由菜单数据
- */
- export const dynamicRoutes: Array<RouteRecordRaw> = [
- {
- path: '/',
- name: '/',
- component: () => import('@/layout/index.vue'),
- redirect: '/home',
- meta: {
- isKeepAlive: true,
- },
- children: [
- {
- path: '/home',
- name: 'home',
- component: () => import('@/views/home/index.vue'),
- meta: {
- title: '首页',
- isLink: '',
- isHide: false,
- isKeepAlive: true,
- isAffix: true,
- isIframe: false,
- icon: 'iconfont icon-shouye',
- },
- },
- ],
- },
- {
- path: '/todo/seats/accept/:tagsViewName/:callId?/:id?',
- name: 'orderAccept',
- component: () => import('@/views/todo/seats/accept/index.vue'),
- meta: {
- title: '工单受理',
- },
- },
- {
- path: '/knowledge/index/edit/:id?/:tagsViewName/:isDraft?',
- name: 'knowledgeEdit',
- component: () => import('@/views/knowledge/index/edit.vue'),
- meta: {
- title: '知识库新增/编辑',
- },
- },
- {
- path: '/knowledge/index/preview/:tagsViewName/:id?/:isAddPv?',
- name: 'knowledgePreview',
- component: () => import('@/views/knowledge/index/preview.vue'),
- meta: {
- title: '知识查看',
- },
- },
- {
- path: '/system/roles/dataAuth',
- name: 'systemDataAuth',
- component: () => import('@/views/system/dataAuth/index.vue'),
- meta: {
- title: '数据权限',
- },
- },
- {
- path: '/system/config/workflow/edit/:id?/:tagsViewName',
- name: 'workflowAddEdit',
- component: () => import('@/views/system/config/workflow/component/workflowEdit.vue'),
- meta: {
- title: '流程编辑',
- },
- },
- {
- path: '/public/notice/:tagsViewName/:id/:isRead',
- name: 'auxiliaryNoticeRead',
- component: () => import('@/views/public/notice/index.vue'),
- meta: {
- title: '通知阅读',
- },
- },
- {
- path: '/statistics/order/visitTable/:id/:startTime/:endTime/:orgId/:tagsViewName',
- name: 'statisticsOrderVisitTable',
- component: () => import('@/views/statistics/order/visitTable.vue'),
- meta: {
- title: '不满意回访明细',
- },
- },
- {
- path: '/statistics/order/specialTable/:cause/:startTime:/:endTime/:tagsViewName',
- name: 'statisticsOrderSpecialTable',
- component: () => import('@/views/statistics/order/specialTable.vue'),
- meta: {
- title: '特提统计明细',
- },
- },
- {
- path: '/statistics/department/Detail/:tagsViewName/:key',
- name: 'statisticsDepartmentSatisfiedDetail',
- component: () => import('@/views/statistics/department/detailSatisfied.vue'),
- meta: {
- title: '部门满意度统计明细',
- },
- },
- {
- path: '/statistics/department/org/:tagsViewName/:key',
- name: 'statisticsDepartmentSatisfiedOrg',
- component: () => import('@/views/statistics/department/orgSatisfied.vue'),
- meta: {
- title: '部门满意度统计明细部门',
- },
- },
- ];
- /**
- * 定义404、401界面
- * @link 参考:https://next.router.vuejs.org/zh/guide/essentials/history-mode.html#netlify
- */
- export const notFoundAndNoPower = [
- {
- path: '/401',
- name: 'noPower',
- component: () => import('@/views/error/401.vue'),
- meta: {
- title: '无权限',
- isHide: true,
- },
- },
- {
- path: '/:pathMatch(.*)',
- name: 'notFound',
- component: () => import('@/views/error/404.vue'),
- meta: {
- title: '404',
- isHide: true,
- },
- },
- ];
- /**
- * 定义静态路由(默认路由)
- * 此路由不要动,前端添加路由的话,请在 `dynamicRoutes 数组` 中添加
- * @description 前端控制直接改 dynamicRoutes 中的路由,后端控制不需要修改,请求接口路由数据时,会覆盖 dynamicRoutes 第一个顶级 children 的内容(全屏,不包含 layout 中的路由出口)
- * @returns 返回路由菜单数据
- */
- export const staticRoutes: Array<RouteRecordRaw> = [
- {
- path: '/login',
- name: 'login',
- component: () => import('@/views/login/index.vue'),
- meta: {
- title: '登录',
- },
- },
- {
- path: '/forgetPwd',
- name: 'forgetPwd',
- component: () => import('@/views/forgetPwd/index.vue'),
- meta: {
- title: '修改密码',
- },
- },
- {
- path: '/resetPwd',
- name: 'resetPwd',
- component: () => import('@/views/resetPwd/index.vue'),
- meta: {
- title: '重置密码',
- },
- },
- ];
|