rt-sim-training-client/src/router/index.js

1123 lines
26 KiB
JavaScript
Raw Normal View History

2019-07-04 10:59:40 +08:00
import Vue from 'vue';
import Router from 'vue-router';
2019-07-02 16:29:52 +08:00
2019-07-04 10:59:40 +08:00
Vue.use(Router);
2019-07-02 16:29:52 +08:00
/* Layout */
2019-07-04 10:59:40 +08:00
import Layout from '@/layout';
2019-08-12 14:04:57 +08:00
import Login from '@/views/login/index';
// 英文默认登陆窗口
import LoginEn from '@/views/login/loginEn';
2019-08-12 14:04:57 +08:00
import LoginScreen from '@/views/login/loginScreen';
2019-09-23 17:47:54 +08:00
import LoginDesign from '@/views/login/loginDesign';
2019-10-17 16:04:07 +08:00
import LoginDesignEn from '@/views/login/loginEnDesign';
2019-08-12 14:04:57 +08:00
2019-08-12 18:37:43 +08:00
import Jlmap3dedit from '@/views/jlmap3d/edit/jlmap3dedit';
2019-08-13 16:23:46 +08:00
import Jlmap3d from '@/views/jlmap3d/drive/jl3ddrive';
2019-08-12 14:04:57 +08:00
import Display from '@/views/display/index';
2019-10-17 18:06:04 +08:00
import DesignDisplay from '@/views/display/designIndex';
2019-08-12 14:04:57 +08:00
import TrainRoom from '@/views/trainRoom/index';
import JointTraining from '@/views/jointTraining/index';
import Error401 from '@/views/error-page/401';
import Errpr404 from '@/views/error-page/404';
import SkinCode from '@/views/map/skinCode/index';
import SkinCodeDraft from '@/views/map/skinCode/draft';
2019-08-12 14:04:57 +08:00
import Mapdraft from '@/views/map/mapdraft/index';
import Mapedit from '@/views/map/mapdraft/mapedit/index';
import Runplan from '@/views/map/runplan/index';
2019-08-21 13:46:36 +08:00
import MapProduct from '@/views/map/product/index';
2019-08-12 14:04:57 +08:00
import RunplanView from '@/views/map/runplan/chart';
import Trainingrecord from '@/views/lesson/trainingrecord/index';
import TrainingrecordManage from '@/views/lesson/trainingrecord/manage/index';
import Taskmanage from '@/views/lesson/taskmanage/list';
import TrainingRuleList from '@/views/lesson/trainingRule/list';
import TrainingRuleEdit from '@/views/lesson/trainingRule/detail/index';
import Trainingmanage from '@/views/lesson/trainingmanage/index';
2019-09-30 13:24:47 +08:00
import LessonEdit from '@/views/lesson/lessoncategory/index';
2019-09-26 15:08:53 +08:00
import LessonHome from '@/views/lesson/home';
2019-08-15 09:04:17 +08:00
import ScriptmanageHome from '@/views/scriptManage/home';
2019-08-20 12:47:39 +08:00
import ScriptDisplay from '@/views/scriptManage/display/index';
2019-08-15 09:04:17 +08:00
2019-08-12 14:04:57 +08:00
import TeachDetail from '@/views/teach/detail/index';
import TeachPractical from '@/views/teach/practical/index';
import Pay from '@/views/components/pay/index';
import ExamDetail from '@/views/exam/detail/examDetail';
import ExamCourseDetail from '@/views/exam/detail/courseDetail';
import ExamResult from '@/views/exam/result';
import PublishExamRule from '@/views/publish/examRule/index';
import PublishExamRuleDraft from '@/views/publish/examRule/draft/index';
import DemonstrationDetail from '@/views/demonstration/detail/index';
import ScreenMonitor from '@/views/screenMonitor/index';
import ScreenMonitorHome from '@/views/screenMonitor/home';
import ScreenMonitorDetail from '@/views/screenMonitor/detail/index';
import PlanMonitorEditTool from '@/views/planMonitor/editTool/index';
2019-10-08 14:12:53 +08:00
import PlanMonitorEditUserTool from '@/views/planMonitor/editTool/userindex';
2019-08-12 14:04:57 +08:00
import PlanMonitor from '@/views/planMonitor/index';
import PlanMonitorHome from '@/views/planMonitor/home';
import PlanMonitorDetail from '@/views/planMonitor/detail';
2019-09-23 17:47:54 +08:00
import DesignPlatformHome from '@/views/designPlatform/home';
2019-09-25 14:52:21 +08:00
import DesignPlatform from '@/views/designPlatform/index';
import DesignPlatformUser from '@/views/designPlatform/userIndex';
2019-09-23 17:47:54 +08:00
2019-08-12 14:04:57 +08:00
import Replay from '@/views/replay/index';
import Package from '@/views/package/index';
import PackageDraft from '@/views/package/draft/ruleForm';
import PackageDetail from '@/views/package/detail';
2019-08-12 14:04:57 +08:00
import PublishMap from '@/views/publish/publishMap/index';
import PublishMapDraft from '@/views/publish/publishMap/draft';
import PublishMapDetail from '@/views/publish/publishMap/list';
2019-08-12 14:04:57 +08:00
import RunPlanCommon from '@/views/publish/runPlanCommon/index';
import RunPlanCommonDraft from '@/views/publish/runPlanCommon/draft';
import RunPlanTemplate from '@/views/publish/runPlanTemplate/index';
import RunPlanEveryDay from '@/views/publish/runPlanEveryDay/index';
import ProductStatus from '@/views/publish/productStatus/index';
import PublishLesson from '@/views/publish/publishLesson/index';
2019-09-27 18:02:32 +08:00
import IbpEdit from '@/views/ibp/ibpDraft/ibpEdit/index';
2019-09-23 17:49:04 +08:00
import TrainingPlatform from '@/views/trainingPlatform/index';
import TrainingPlatformHome from '@/views/trainingPlatform/home';
2019-08-12 14:04:57 +08:00
import Commodity from '@/views/orderauthor/commodity/index';
import CommodityDraft from '@/views/orderauthor/commodity/draft';
import OrderList from '@/views/orderauthor/order/list';
import OrderDraft from '@/views/orderauthor/order/draft';
import Author from '@/views/orderauthor/author/index';
2019-08-29 09:31:58 +08:00
import AuthorDraft from '@/views/orderauthor/author/draft/ruleForm';
2019-08-12 14:04:57 +08:00
import Permission from '@/views/orderauthor/permission/index';
import PermissionDetail from '@/views/orderauthor/permission/detail';
import PermissionDraft from '@/views/orderauthor/permission/draft/ruleForm';
2019-09-17 13:16:49 +08:00
import PermissionCreate from '@/views/orderauthor/permission/create/index';
2019-08-29 09:31:58 +08:00
import UserRules from '@/views/orderauthor/rules/index';
2019-09-02 17:34:34 +08:00
import UserRulesDetail from '@/views/orderauthor/rules/detail';
2019-08-29 09:31:58 +08:00
2019-08-12 14:04:57 +08:00
import Dictionary from '@/views/management/dictionary/index';
import DictionaryDetail from '@/views/management/dictionaryDetail/index';
import UserControl from '@/views/management/userControl/index';
import UserTraining from '@/views/management/userTraining/index';
import UserExam from '@/views/management/userExam/index';
import UserSimulation from '@/views/management/userSimulation/index';
import ExistingSimulation from '@/views/management/existingSimulation/index';
2019-09-03 15:22:50 +08:00
import CacheControl from '@/views/management/cacheControl/index';
2019-10-11 08:55:02 +08:00
import LessonApproval from '@/views/approval/lesson/index';
2019-10-12 16:47:54 +08:00
import ScriptApproval from '@/views/approval/script/index';
2019-10-17 17:11:15 +08:00
import RunPlanApproval from '@/views/approval/runPlan/index';
import SystemGenerate from '@/views/systemGenerate/index';
2019-10-16 15:28:29 +08:00
import { loginTitle } from '@/scripts/ConstDic';
import { getSessionStorage } from '@/utils/auth';
2019-10-11 08:55:02 +08:00
2019-07-02 16:29:52 +08:00
/**
* Note: sub-menu only appear when route children.length >= 1
* Detail see: https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
*
* hidden: true if set true, item will not show in the sidebar(default is false)
* alwaysShow: true if set true, will always show the root menu
* if not set alwaysShow, when item has more than one children route,
* it will becomes nested mode, otherwise not show the root menu
* redirect: noRedirect if set noRedirect will no redirect in the breadcrumb
* name:'router-name' the name is used by <keep-alive> (must set!!!)
* meta : {
roles: ['admin','editor'] control the page roles (you can set multiple roles)
title: 'title' the name show in sidebar and breadcrumb (recommend set)
icon: 'svg-name' the icon show in the sidebar
breadcrumb: false if set false, the item will hidden in breadcrumb(default is true)
activeMenu: '/example/list' if set path, the sidebar will highlight the path you set
}
*/
export const user = '01'; // 普通用户
export const mapCreater = '02'; // 地图创建权限
export const lessonCreater = '03'; // 课程创建权限
export const admin = '04'; // 管理员
export const superAdmin = '05'; // 超级管理员
2019-08-09 10:10:26 +08:00
export const userExam = '011'; // 考试系统
export const userLesson = '012'; // 教学系统
2019-07-02 16:29:52 +08:00
export const userSimulation = '013'; // 仿真系统
2019-08-09 10:10:26 +08:00
export const userScreen = '014'; // 大屏系统
export const userPlan = '015'; // 计划系统
2019-09-23 17:47:54 +08:00
export const userDesign='016'; // 设计系统
2019-07-02 16:29:52 +08:00
export const UrlConfig = {
display: '/display',
2019-08-20 12:47:39 +08:00
scriptDisplay: '/scriptDisplay',
2019-07-02 16:29:52 +08:00
examRuleDraft: '/examRule/draft',
2019-07-25 13:26:20 +08:00
examRuleManage: '/examRule/manage',
map: {
prefix: '/map',
draft: '/map/draw',
2019-09-25 14:45:18 +08:00
skinCode: '/system/skinCode',
skinCodeDraft: '/system/skinCode/draft',
2019-07-25 13:26:20 +08:00
runPlan: '/map/runPlan',
runPlanView: '/map/runPlan/view',
product: '/map/product',
productDraft: '/map/product/draft'
2019-07-26 13:32:43 +08:00
},
lesson: {
prefix: '/lesson',
record: '/lesson/record/training',
manage: '/lesson/manage/training'
},
dp: {
prefix: '/dp',
detail: '/dp/detail',
pay: '/dp/pay'
},
plan: {
prefix: '/plan',
tool: '/plan/tool',
2019-10-17 14:35:10 +08:00
usertool: '/plan/usertool',
2019-07-26 13:32:43 +08:00
detail: '/plan/detail',
pay: '/plan/pay'
},
2019-10-17 14:35:10 +08:00
design: {
prefix: '/design/home',
// tool: '/design/tool',
// detail: '/plan/detail',
// pay: '/plan/pay'
mapDraw: '/design/map/draw',
lessonEdit: '/design/lesson/edit',
lessonHome: '/design/lesson/home',
lessonManage: '/design/lesson/manage',
taskManage: '/design/lesson/taskManage',
trainingRule: '/design/lesson/trainingRule',
trainingRuleDetail: '/design/lesson/trainingRule/detail',
trainingManage: '/design/lesson/trainingManage',
lessonTraining: '/design/lesson/training',
trainingRecord: '/design/lesson/training',
runPlan: '/design/runPlan/detail',
scriptHome: '/design/script/home',
display: '/design/display'
},
designUser: {
prefix: '/design/userlist/home',
scriptHome: '/design/userlist/script/home',
mapDraw: '/design/userlist/map/draw',
lessonHome: '/design/userlist/lesson/home',
runPlan: '/design/userlist/runPlan/detail'
},
2019-07-26 13:32:43 +08:00
replay: {
prefix: '/replay'
},
publish: {
prefix: '/publish',
map: '/publish/map',
mapDraft: '/publish/map/draft',
runPlanEveryDay: '/publish/runPlan/everyDay',
runPlanTemplate: '/publish/runPlan/template',
runPlanCommon: '/publish/runPlan/common',
runPlanView: '/publish/runPlan/view'
2019-07-26 13:32:43 +08:00
},
orderauthor: {
prefix: '/orderauthor',
commodityManage: '/orderauthor/commodity/manage',
commodityDraft: '/orderauthor/commodity/draft',
orderManage: '/orderauthor/order/manage',
orderDraft: '/orderauthor/order/draft',
authorMange: '/orderauthor/author/manage',
2019-08-29 09:31:58 +08:00
authorDetail: '/orderauthor/author/detail',
2019-07-26 13:32:43 +08:00
authorDraft: '/orderauthor/author/draft',
transferDetail: '/orderauthor/transfer/detail',
2019-09-17 13:16:49 +08:00
trainferPackage: '/orderauthor/transfer/package',
createPackage: '/orderauthor/transfer/create'
2019-08-15 09:04:17 +08:00
},
script: {
prefix: '/script',
2019-08-20 12:47:39 +08:00
detail: '/script/detail',
display: '/script/display'
2019-08-27 14:17:36 +08:00
},
ibp: {
prefix: 'ibp',
draft: '/ibp/draft',
edit: 'ibp/edit'
2019-09-23 17:49:04 +08:00
},
trainingPlatform: {
trainingPlatform: '/trainingPlatform',
trainingPlatformHome: '/trainingPlatform/home',
prodDetail: '/trainingPlatform/detail',
teachDetail: '/trainingPlatform/teach',
2019-09-24 11:05:10 +08:00
examDetail: '/trainingPlatform/exam',
2019-09-27 14:46:08 +08:00
examRuleManage: '/trainingPlatform/examRule/manage',
examRuleDraft: '/trainingPlatform/examRule/Draft',
2019-09-24 11:05:10 +08:00
course: '/trainingPlatform/course',
practical: '/trainingPlatform/practical',
2019-09-25 13:05:01 +08:00
permission: '/trainingPlatform/permission',
2019-09-27 18:02:32 +08:00
permissionDetails: '/trainingPlatform/permission/detail',
2019-09-25 13:05:01 +08:00
draft: '/trainingPlatform/draft',
2019-10-15 13:04:28 +08:00
pay: '/trainingPlatform/pay',
runPlan: '/trainingPlatform/runPlan/manage'
2019-07-25 13:26:20 +08:00
}
2019-07-02 16:29:52 +08:00
};
/**
* constantRoutes
* a base page that does not have permission requirements
* all roles can be accessed
*/
export const constantRoutes = [
2019-10-17 16:04:07 +08:00
// 实训平台登录
2019-07-02 16:29:52 +08:00
{
path: '/login',
2019-08-12 14:04:57 +08:00
component: Login,
2019-07-02 16:29:52 +08:00
hidden: true
},
2019-10-17 16:04:07 +08:00
// 项目系统登录
2019-10-15 09:39:01 +08:00
{
path: '/login/:project',
component: Login,
hidden: true
},
2019-10-17 16:04:07 +08:00
// 实训平台英文登录
{
path: '/en/login',
component: LoginEn,
hidden: true
},
2019-09-29 19:20:10 +08:00
// 大屏登录
2019-07-26 13:32:43 +08:00
{
2019-08-08 13:47:30 +08:00
path: '/dp/login',
2019-08-12 14:04:57 +08:00
component: LoginScreen,
2019-07-26 13:32:43 +08:00
hidden: true
},
2019-10-17 16:04:07 +08:00
// 设计平台登录
2019-07-26 13:32:43 +08:00
{
2019-10-17 16:04:07 +08:00
path: '/design/login',
component: LoginDesign,
2019-07-26 13:32:43 +08:00
hidden: true
},
2019-10-17 16:04:07 +08:00
// 设计平台英文登录
2019-10-17 14:35:10 +08:00
{
2019-10-17 16:04:07 +08:00
path: '/design/en/login',
component: LoginDesignEn,
2019-10-17 14:35:10 +08:00
hidden: true
},
2019-07-26 13:32:43 +08:00
{
2019-08-08 13:47:30 +08:00
path: '/jlmap3d/edit',
2019-08-12 14:04:57 +08:00
component: Jlmap3dedit,
2019-07-26 13:32:43 +08:00
hidden: true
},
2019-07-02 16:29:52 +08:00
{
path: '/401',
2019-08-12 14:04:57 +08:00
component: Error401,
2019-07-02 16:29:52 +08:00
hidden: true
},
{
path: '/404',
2019-08-12 14:04:57 +08:00
component: Errpr404,
2019-07-02 16:29:52 +08:00
hidden: true
},
2019-07-26 13:32:43 +08:00
{ path: '*', redirect: '/404', hidden: true }
2019-07-04 10:59:40 +08:00
];
2019-07-02 16:29:52 +08:00
2019-07-26 13:32:43 +08:00
export const asyncRouter = [
2019-10-17 14:35:10 +08:00
{
path: '/design',
component: Layout,
redirect: '/design/home',
meta: {
roles: [admin, user, userDesign]
},
children: [
{
path: '',
redirect: '/design/home',
component: DesignPlatform,
meta: {
i18n: 'router.designhomePage',
icon: 'design'
},
children: [
{
path: 'home',
component: DesignPlatformHome,
meta: {
}
},
{
path: 'map/draw/:mapId/:view',
component: Mapedit,
hidden: true
},
{
path: 'lesson/edit/:type',
component: LessonEdit,
hidden: true
},
{
path: 'runPlan/detail/:mapId',
component: PlanMonitorDetail,
hidden: true
},
{
path: 'script/home/:mapId',
component: ScriptmanageHome,
meta: {
i18n: 'router.scriptManage'
},
hidden: true
},
{
path: 'lesson/home/:mapId/:skinCode',
component: LessonHome,
hidden: true
},
{
path: 'lesson/training/:trainingId/:trainingName',
component: TrainingrecordManage,
hidden: true
},
{
path: 'lesson/taskManage',
component: Taskmanage,
hidden: true
},
{
path: 'lesson/trainingRule',
component: TrainingRuleList,
hidden: true
},
{
path: 'lesson/trainingRule/detail',
hidden: true,
component: TrainingRuleEdit
},
{
path: 'lesson/trainingManage/:skinCode',
component: Trainingmanage,
hidden: true
},
{
path: 'lesson/training/:trainingId/:trainingName',
component: TrainingrecordManage,
hidden: true
}
]
}
]
},
{
path: '/design/userlist',
redirect: '/design/userlist/home',
component: Layout,
meta: {
roles: [admin, user, userDesign]
},
children: [
{
path: '',
redirect: '/design/userlist/home',
component: DesignPlatformUser,
meta: {
i18n: 'router.designUserPage',
icon: 'design'
},
children: [
{
path: 'home',
component: DesignPlatformHome,
meta: {
}
},
{
path: 'map/draw/:mapId/:view',
component: Mapedit,
hidden: true
},
{
path: 'lesson/edit/:type',
component: LessonEdit,
hidden: true
},
{
path: 'runPlan/detail/:mapId',
component: PlanMonitorDetail,
hidden: true
},
{
path: 'script/home/:mapId',
component: ScriptmanageHome,
meta: {
i18n: 'router.scriptManage'
},
hidden: true
},
{
path: 'lesson/home/:mapId',
component: LessonHome,
hidden: true
},
{
path: 'lesson/training/:trainingId/:trainingName',
component: TrainingrecordManage,
hidden: true
}
]
}
]
},
2019-07-26 13:32:43 +08:00
{
path: '/display/:mode',
2019-08-12 14:04:57 +08:00
component: Display,
2019-07-26 13:32:43 +08:00
meta: {
},
hidden: true
},
2019-10-17 14:35:10 +08:00
{
path: '/design/display/:mode',
2019-10-17 18:06:04 +08:00
component: DesignDisplay,
2019-10-17 14:35:10 +08:00
meta: {
},
hidden: true
},
2019-08-20 12:47:39 +08:00
{
path: '/scriptDisplay/:mode',
component: ScriptDisplay,
meta: {
},
hidden: true
},
2019-07-26 13:32:43 +08:00
{
path: '/trainroom',
2019-08-12 14:04:57 +08:00
component: TrainRoom,
2019-07-26 13:32:43 +08:00
meta: {
},
hidden: true
},
{
path: '/jointTraining',
2019-08-12 14:04:57 +08:00
component: JointTraining,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: '/jlmap3d',
2019-08-12 14:04:57 +08:00
component: Jlmap3d,
2019-07-26 13:32:43 +08:00
meta: {
},
hidden: true
},
{
path: '/map',
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.mapManage',
2019-09-23 17:47:54 +08:00
roles: [admin, mapCreater, userDesign]
2019-07-26 13:32:43 +08:00
},
2019-10-17 14:35:10 +08:00
hidden: true,
2019-08-12 14:04:57 +08:00
component: Layout,
2019-07-26 13:32:43 +08:00
children: [
2019-10-17 14:35:10 +08:00
{
2019-07-26 13:32:43 +08:00
path: 'draw',
redirect: '/map/draw/0/draft',
2019-08-12 14:04:57 +08:00
component: Mapdraft,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.mapDraw'
2019-07-26 13:32:43 +08:00
},
children: [
{
path: ':mapId/:view',
2019-08-12 14:04:57 +08:00
component: Mapedit,
2019-07-26 13:32:43 +08:00
hidden: true
}
]
},
{
path: 'runPlan',
redirect: '/map/runPlan/view/draft',
2019-08-12 14:04:57 +08:00
component: Runplan,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.runPlanManage'
2019-07-26 13:32:43 +08:00
},
children: [{
path: 'view/:mode',
2019-08-12 14:04:57 +08:00
component: RunplanView,
2019-07-25 13:26:20 +08:00
hidden: true
2019-07-26 13:32:43 +08:00
}]
},
{
path: 'product',
2019-08-21 13:46:36 +08:00
component: MapProduct,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.productEdit'
2019-07-25 13:26:20 +08:00
}
2019-07-26 13:32:43 +08:00
}
]
},
{
path: '/lesson',
2019-08-12 14:04:57 +08:00
component: Layout,
2019-10-17 14:35:10 +08:00
hidden: true,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.lessaonManage',
2019-09-23 17:47:54 +08:00
roles: [admin, lessonCreater, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'record',
redirect: '/lesson/record/training/0/null',
2019-08-12 14:04:57 +08:00
component: Trainingrecord,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.trainingRecord'
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'training/:trainingId/:trainingName',
2019-08-12 14:04:57 +08:00
component: TrainingrecordManage,
2019-07-26 13:32:43 +08:00
hidden: true
}
]
},
{
path: 'manage/trainingRule',
2019-08-12 14:04:57 +08:00
component: TrainingRuleList,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.trainingRule'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'manage/trainingRule/detail',
hidden: true,
2019-08-12 14:04:57 +08:00
component: TrainingRuleEdit,
2019-07-26 13:32:43 +08:00
meta: {
}
},
{
path: 'manage/training',
2019-08-12 14:04:57 +08:00
component: Trainingmanage,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.trainingManage'
2019-07-26 13:32:43 +08:00
}
}
]
},
2019-09-23 17:49:04 +08:00
{
path: '/trainingPlatform',
component: Layout,
2019-09-24 10:51:41 +08:00
hidden: true,
2019-09-23 17:49:04 +08:00
meta: {
roles: [admin, userSimulation, user]
},
children: [
{
path: '',
redirect: '/trainingPlatform/home',
component: TrainingPlatform,
meta: {
},
children: [
{
path: 'home',
2019-09-27 14:46:08 +08:00
redirect: '/trainingPlatform/permission/14',
2019-09-23 17:49:04 +08:00
component: TrainingPlatformHome,
meta: {
2019-09-23 18:06:29 +08:00
},
hidden: true
2019-09-23 17:49:04 +08:00
},
{
2019-09-27 14:46:08 +08:00
path: 'detail/:mapId',
2019-09-23 17:49:04 +08:00
component: DemonstrationDetail,
hidden: true
},
{
2019-09-27 14:46:08 +08:00
path: 'teach',
2019-09-23 17:49:04 +08:00
component: TeachDetail,
hidden: true
},
{
path: 'exam/:examId',
component: ExamDetail,
hidden: true
2019-09-24 11:05:10 +08:00
},
{
path: 'practical/:trainingId/:lessonId',
component: TeachPractical,
hidden: true
},
{
path: 'pay/:lessonId',
component: Pay,
hidden: true
},
{
2019-09-27 14:46:08 +08:00
path: 'course/:mapId',
2019-09-24 11:05:10 +08:00
component: ExamCourseDetail,
hidden: true
2019-09-24 15:03:03 +08:00
},
{
path: 'result/:userExamId',
component: ExamResult,
hidden: true
2019-09-25 13:05:01 +08:00
},
{
path: 'permission/:mapId',
component: Package,
hidden: true
},
2019-09-27 18:02:32 +08:00
{
path: 'permission/detail/:id',
component: PackageDetail,
hidden: true
},
2019-09-25 13:05:01 +08:00
{
path: 'draft',
component: PackageDraft,
hidden: true
2019-08-14 10:12:51 +08:00
},
{
2019-09-27 14:46:08 +08:00
path: 'examRule/manage',
component: PublishExamRule,
2019-08-14 10:12:51 +08:00
hidden: true
},
{
2019-09-27 14:46:08 +08:00
path: 'examRule/draft/:mode/:ruleId/:lessonId',
component: PublishExamRuleDraft,
2019-08-14 10:12:51 +08:00
hidden: true
2019-10-15 09:39:01 +08:00
},
{
path: 'runPlan/manage/:mapId',
component: PlanMonitorDetail,
hidden: true
2019-08-14 10:12:51 +08:00
}
]
2019-07-26 13:32:43 +08:00
}
]
},
{
path: '/dp',
2019-10-17 14:35:10 +08:00
hidden: true,
2019-07-26 13:32:43 +08:00
redirect: '/dp/home',
2019-08-12 14:04:57 +08:00
component: ScreenMonitor,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-08 13:47:30 +08:00
roles: [admin, userScreen, user]
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'home',
2019-08-12 14:04:57 +08:00
component: ScreenMonitorHome,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.dpSystem'
2019-07-26 13:32:43 +08:00
},
target: true
},
{
path: 'detail/:lessonId',
2019-08-12 14:04:57 +08:00
component: ScreenMonitorDetail,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: 'pay/:lessonId',
2019-08-12 14:04:57 +08:00
component: Pay,
2019-07-26 13:32:43 +08:00
hidden: true
}
]
},
{
2019-10-17 14:35:10 +08:00
path: '/plan/usertool',
component: PlanMonitorEditUserTool,
meta: {
},
hidden: true
},
{
2019-07-26 13:32:43 +08:00
path: '/plan/tool',
2019-08-12 14:04:57 +08:00
component: PlanMonitorEditTool,
2019-07-26 13:32:43 +08:00
meta: {
},
hidden: true
},
{
path: '/plan',
redirect: '/plan/home',
2019-08-12 14:04:57 +08:00
component: PlanMonitor,
2019-10-17 14:35:10 +08:00
hidden: true,
2019-07-26 13:32:43 +08:00
meta: {
2019-09-23 17:47:54 +08:00
roles: [admin, user, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'home',
2019-08-12 14:04:57 +08:00
component: PlanMonitorHome,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.planSystem'
2019-07-26 13:32:43 +08:00
},
target: true
},
{
path: 'detail/:lessonId',
2019-08-12 14:04:57 +08:00
component: PlanMonitorDetail,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: 'pay/:lessonId',
2019-08-12 14:04:57 +08:00
component: Pay,
2019-07-26 13:32:43 +08:00
hidden: true
}
]
},
{
path: '/replay',
2019-08-12 14:04:57 +08:00
component: Layout,
2019-10-17 14:35:10 +08:00
hidden: true,
2019-07-26 13:32:43 +08:00
meta: {
2019-09-23 17:47:54 +08:00
roles: [admin, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'manage',
2019-08-12 14:04:57 +08:00
component: Replay,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.replayManage'
2019-07-26 13:32:43 +08:00
}
}
]
},
{
path: '/publish',
2019-08-12 14:04:57 +08:00
component: Layout,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.pulishManage',
2019-09-23 17:47:54 +08:00
roles: [admin, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
{
path: 'map',
2019-08-12 14:04:57 +08:00
component: PublishMap,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.publishMapManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'map/detail',
hidden: true,
component: PublishMapDetail
},
2019-07-26 13:32:43 +08:00
{
path: 'product',
2019-08-12 14:04:57 +08:00
component: ProductStatus,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.productStateManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'lesson',
2019-08-12 14:04:57 +08:00
component: PublishLesson,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.publishLessonManage'
2019-07-26 13:32:43 +08:00
}
},
// {
// path: 'script',
2019-08-12 14:04:57 +08:00
// component: SimulationScript,
2019-07-26 13:32:43 +08:00
// meta: {
// title: '仿真脚本管理',
// }
// },
{
path: 'runPlan/template',
2019-08-12 14:04:57 +08:00
component: RunPlanTemplate,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.runPlanTemplateManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'runPlan/common',
2019-08-12 14:04:57 +08:00
component: RunPlanCommon,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.runPlanCommonManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'runPlan/everyDay',
2019-08-12 14:04:57 +08:00
component: RunPlanEveryDay,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.runPlanEveryDayManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'examRule/manage',
2019-08-12 14:04:57 +08:00
component: PublishExamRule,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.examRuleManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'map/draft/:mode/:mapId',
2019-08-12 14:04:57 +08:00
component: PublishMapDraft,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: 'examRule/draft/:mode/:ruleId/:lessonId',
2019-08-12 14:04:57 +08:00
component: PublishExamRuleDraft,
2019-08-09 15:10:13 +08:00
hidden: true
2019-07-26 13:32:43 +08:00
},
{
path: 'runPlan/common/:mode',
2019-08-12 14:04:57 +08:00
component: RunPlanCommonDraft,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: 'runPlan/view/:mode',
2019-08-12 14:04:57 +08:00
component: RunplanView,
2019-07-26 13:32:43 +08:00
hidden: true
}
]
},
{
path: '/orderauthor',
2019-08-12 14:04:57 +08:00
component: Layout,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.orderAuthorityManage',
2019-09-23 17:47:54 +08:00
roles: [admin, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
2019-08-29 09:31:58 +08:00
{
path: 'author/manage',
component: Author,
meta: {
i18n: 'router.authorityManage'
}
},
2019-07-26 13:32:43 +08:00
{
path: 'commodity/manage',
2019-08-12 14:04:57 +08:00
component: Commodity,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.commodityManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'order/manage',
2019-08-12 14:04:57 +08:00
component: OrderList,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.orderManage'
2019-07-26 13:32:43 +08:00
}
},
{
2019-08-29 09:31:58 +08:00
path: 'transfer/manage',
component: Permission,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-29 09:31:58 +08:00
i18n: 'router.authorityTransferManage'
2019-07-26 13:32:43 +08:00
}
},
{
2019-08-29 09:31:58 +08:00
path: 'rules/manage',
component: UserRules,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-29 09:31:58 +08:00
i18n: 'router.userRulesManage'
2019-07-26 13:32:43 +08:00
}
},
2019-09-02 17:34:34 +08:00
{
path: 'rules/manage/detail/:id',
hidden: true,
component: UserRulesDetail,
meta: {
i18n: 'router.userRulesManage'
}
},
2019-07-26 13:32:43 +08:00
{
path: 'commodity/draft/:mode/:commodityId',
hidden: true,
2019-08-12 14:04:57 +08:00
component: CommodityDraft,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.addCommodity'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'order/draft/:mode/:orderId',
hidden: true,
2019-08-12 14:04:57 +08:00
component: OrderDraft,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.addOrder'
2019-07-26 13:32:43 +08:00
}
},
{
2019-08-29 09:31:58 +08:00
path: 'author/manage/rules',
2019-07-26 13:32:43 +08:00
hidden: true,
2019-08-12 14:04:57 +08:00
component: AuthorDraft,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.addCoursePermissions'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'transfer/detail/:permissionId',
2019-08-12 14:04:57 +08:00
component: PermissionDetail,
2019-07-26 13:32:43 +08:00
hidden: true
},
{
path: 'transfer/package',
2019-08-12 14:04:57 +08:00
component: PermissionDraft,
2019-07-26 13:32:43 +08:00
hidden: true
2019-09-17 13:16:49 +08:00
},
{
path: 'transfer/create',
component: PermissionCreate,
hidden: true
2019-07-26 13:32:43 +08:00
}
]
},
{
path: '/system',
2019-08-12 14:04:57 +08:00
component: Layout,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.systemManage',
2019-09-23 17:47:54 +08:00
roles: [admin, userDesign]
2019-07-26 13:32:43 +08:00
},
children: [
{
2019-10-17 14:35:10 +08:00
path: 'skinCode',
component: SkinCode,
meta: {
i18n: 'router.skinManage'
}
},
{
path: 'skinCode/draft/:mode/:skinCodeId',
hidden: true,
component: SkinCodeDraft
},
{
path: 'ibp/edit',
component: IbpEdit,
meta: {
i18n: 'router.ibpDraw'
}
},
{
2019-07-26 13:32:43 +08:00
path: 'dictionary',
2019-08-12 14:04:57 +08:00
component: Dictionary,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.dataDictionary'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'dictionary/detail',
hidden: true,
2019-08-12 14:04:57 +08:00
component: DictionaryDetail,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.dataDictionaryDetails'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'userManage',
2019-08-12 14:04:57 +08:00
component: UserControl,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.userManage'
2019-07-26 13:32:43 +08:00
}
},
2019-09-03 15:22:50 +08:00
{
path: 'cache',
component: CacheControl,
meta: {
i18n: 'router.cacheManage'
}
},
2019-07-26 13:32:43 +08:00
{
path: 'userTrainingManage',
2019-08-12 14:04:57 +08:00
component: UserTraining,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.userTrainingManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'userExamManage',
2019-08-12 14:04:57 +08:00
component: UserExam,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.userExamManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'userSimulationManage',
2019-08-12 14:04:57 +08:00
component: UserSimulation,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.userSimulationManage'
2019-07-26 13:32:43 +08:00
}
},
{
path: 'existingSimulation',
2019-08-12 14:04:57 +08:00
component: ExistingSimulation,
2019-07-26 13:32:43 +08:00
meta: {
2019-08-09 15:10:13 +08:00
i18n: 'router.existingSimulation'
2019-07-26 13:32:43 +08:00
}
2019-10-17 17:11:15 +08:00
},
{
path: 'systemGenerate',
component: SystemGenerate,
meta: {
i18n: 'router.subsystemGeneration'
}
2019-07-26 13:32:43 +08:00
}
]
2019-10-17 14:35:10 +08:00
},
{
path: '/apply',
component: Layout,
meta: {
i18n: 'router.releaseApplication',
roles: [admin, userDesign]
},
children: [
{
path: 'lesson',
component: LessonApproval,
meta: {
i18n: 'router.courseApplication'
}
},
{
path: 'script',
component: ScriptApproval,
meta: {
i18n: 'router.scriptReleaseApplication'
}
},
{
path: 'runGraph',
2019-10-17 17:11:15 +08:00
component: RunPlanApproval,
2019-10-17 14:35:10 +08:00
meta: {
i18n: 'router.runGraphReleaseApplication'
}
}
]
2019-07-26 13:32:43 +08:00
}
2019-07-04 10:59:40 +08:00
];
2019-07-02 16:29:52 +08:00
const createRouter = () => new Router({
mode: 'history', // require service support
scrollBehavior: () => ({ y: 0 }),
routes: constantRoutes
2019-07-04 10:59:40 +08:00
});
2019-07-02 16:29:52 +08:00
2019-07-04 10:59:40 +08:00
const router = createRouter();
2019-07-02 16:29:52 +08:00
2019-08-09 15:10:13 +08:00
router.beforeEach((to, from, next) => {
const name = to.fullPath;
if (name.includes('/dp/') || name.includes('display/dp')) {
document.title = '琏课堂-大屏系统';
2019-10-17 14:35:10 +08:00
} else if (name.includes('/trainingPlatform/')) {
2019-10-16 15:28:29 +08:00
const project = getSessionStorage('project');
document.title = loginTitle[project || 'default'];
} else if (name.includes('/design/') || name.includes('/scriptDisplay/') || name.includes('/plan/') || name.includes('/publish/') || name.includes('/orderauthor/') || name.includes('/system/') || name.includes('/display/plan/') || name.includes('/apply/') || name.includes('/display/manage/')) {
2019-09-26 16:40:39 +08:00
document.title = '城市轨道交通设计平台';
2019-08-09 15:10:13 +08:00
} else {
document.title = '琏课堂';
}
2019-10-17 14:35:10 +08:00
// else if (name.includes('/plan/') || name.includes('/planEdit/')) {
// document.title = '琏计划';
// }
2019-08-09 15:10:13 +08:00
next();
});
2019-07-04 10:59:40 +08:00
export default router;