import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) /* Layout */ import Layout from '@/layout' /** * Note: 路由配置项 * * hidden: true // 当设置 true 的时候该路由不会再侧边栏出现 如401,login等页面,或者如一些编辑页面/edit/1 * alwaysShow: true // 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面 * // 只有一个时,会将那个子路由当做根路由显示在侧边栏--如引导页面 * // 若你想不管路由下面的 children 声明的个数都显示你的根路由 * // 你可以设置 alwaysShow: true,这样它就会忽略之前定义的规则,一直显示根路由 * redirect: noRedirect // 当设置 noRedirect 的时候该路由在面包屑导航中不可被点击 * name:'router-name' // 设定路由的名字,一定要填写不然使用时会出现各种问题 * meta : { noCache: true // 如果设置为true,则不会被 缓存(默认 false) title: 'title' // 设置该路由在侧边栏和面包屑中展示的名字 icon: 'svg-name' // 设置该路由的图标,对应路径src/assets/icons/svg breadcrumb: false // 如果设置为false,则不会在breadcrumb面包屑中显示 } */ // 公共路由 export const constantRoutes = [ { path: '*', component: (resolve) => require(['@/views/error/404.vue'], resolve) }, { path: '/redirect', component: Layout, hidden: true, children: [ { path: '/redirect/:path(.*)', component: (resolve) => require(['@/views/redirect'], resolve) } ] }, { path: '/login', component: (resolve) => require(['@/views/login'], resolve), hidden: true }, { path: '/socialLogin', component: (resolve) => require(['@/views/socialLogin'], resolve), hidden: true }, { path: '/azureLogin', component: (resolve) => require(['@/views/azureLogin'], resolve), hidden: true }, { path: '/404', component: (resolve) => require(['@/views/error/404'], resolve), hidden: true }, { path: '/401', component: (resolve) => require(['@/views/error/401'], resolve), hidden: true }, { path: '/BCCdashboard', component: (resolve) => require(['@/views/monitor/elec/index'], resolve), hidden: true }, { path: '/pptyulan', name: 'pptyulan', component: (resolve) => require(['@/views/components/yulan/index'], resolve), hidden: true }, { path: '/elecDashboard', component: (resolve) => require(['@/views/monitor/elec/elecindex'], resolve), hidden: true }, { path: '', component: Layout, redirect: 'index', children: [ { path: 'index', component: (resolve) => require(['@/views/index'], resolve), name: '首页', meta: { title: '首页', icon: 'dashboard', noCache: true, affix: true } } ] }, { path: '/user', component: Layout, hidden: true, redirect: 'noredirect', children: [ { path: 'profile', component: (resolve) => require(['@/views/system/user/profile/index'], resolve), name: 'Profile', meta: { title: '个人中心', icon: 'user' } } ] }, { path: '/system', component: Layout, hidden: true, redirect: 'noredirect', children: [ { path: 'message', component: (resolve) => require(['@/views/system/message/index'], resolve), name: 'Profile', meta: { title: '系统消息', icon: '' } } ] }, { path: '/process', component: Layout, hidden: true, redirect: 'noredirect', children: [ { path: 'pfd', component: (resolve) => require(['@/views/process/pfd/index'], resolve), name: 'Profile', meta: { title: 'pfd', icon: '' } } ] }, { path: '/dict', component: Layout, hidden: true, children: [ { path: 'type/data/:dictId(\\d+)', component: (resolve) => require(['@/views/system/dict/data'], resolve), name: 'Data', meta: { title: '字典数据', icon: '' } } ] }, { path: '/ehs', component: Layout, hidden: true, alwaysShow: true, children: [ { path: 'rcaudit', component: (resolve) => require(['@/views/ehs/rcaudit/index'], resolve), name: 'Rcaudit', meta: { title: 'RC审计助手', keepAlive: true, scrollTop: 0, } } ] }, { path: '/job', component: Layout, hidden: true, children: [ { path: 'log', component: (resolve) => require(['@/views/monitor/job/log'], resolve), name: 'JobLog', meta: { title: '调度日志' } } ] }, { path: '/gen', component: Layout, hidden: true, children: [ { path: 'edit/:tableId(\\d+)', component: (resolve) => require(['@/views/tool/gen/editTable'], resolve), name: 'GenEdit', meta: { title: '修改生成配置' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'rcfile/:id(\\d+)', component: (resolve) => require(['@/views/ehs/rcfile'], resolve), name: 'rcfile', meta: { title: '附件' } } ] }, { path: '/plant/meeting', component: Layout, hidden: true, children: [ { path: 'detail/:id(\\d+)', component: (resolve) => require(['@/views/plant/dailyMeeting/detail'], resolve), name: 'dailyMeetingDetail', meta: { title: '调度会议详情'} }, { path: 'dailyMeetingConfig', component: (resolve) => require(['@/views/plant/dailyMeetingConfig'], resolve), name: 'dailyMeetingConfig', meta: { title: '调度会议配置' } }, { path: 'dailyMeetingEmail', component: (resolve) => require(['@/views/plant/dailyMeetingEmail'], resolve), name: 'dailyMeetingEmail', meta: { title: '邮件配置' } } ] }, { path: '/plant', component: Layout, hidden: true, children: [ { path: 'confInfoList', component: (resolve) => require(['@/views/plant/confInfo/list'], resolve), name: 'confInfoList', meta: { title: '会议预约记录'} }, ] }, { path: '/production', component: Layout, hidden: true, children: [ { path: 'quality/report/:sampleDate', component: (resolve) => require(['@/views/production/quality/report'], resolve), name: 'report', meta: { title: '生成报告' } }, { path: 'quality/history', component: (resolve) => require(['@/views/production/quality/history'], resolve), name: 'history', meta: { title: '历史报告查看' } }, { path: 'matrix', component: (resolve) => require(['@/views/production/matrix'], resolve), name: 'matrix', meta: { title: 'PPE矩阵管理' } }, { path: '/training/records', component: (resolve) => require(['@/views/training/records'], resolve), name: 'records', meta: { title: '装置级培训记录' } }, { path: '/trainingbcc/records', component: (resolve) => require(['@/views/training/trainingbcc/record'], resolve), name: 'bccRecords', meta: { title: '装置培训记录' } }, { path: '/trainingrecords/companyRecords', component: (resolve) => require(['@/views/training/trainingrecords/companyRecrods.vue'], resolve), name: 'companyRecords', meta: { title: '公司级培训记录' } } ] }, { path: '/training/spec', component: Layout, hidden: true, children: [ { path: 'successorPlan/:staffId(\\d+)', component: (resolve) => require(['@/views/training/spec/successor/successorPlan'], resolve), name: 'SuccessorPlan', meta: { title: '培训计划清单' } }, { path: 'monthdata/:staffId(\\d+)', component: (resolve) => require(['@/views/training/spec/successor/monthdata'], resolve), name: 'monthdata', meta: { title: '月度数据' } }, { path: 'seasondata/:staffId(\\d+)', component: (resolve) => require(['@/views/training/spec/successor/seasondata'], resolve), name: 'seasondata', meta: { title: '季度数据' } } ] }, { path: '/training/spec', component: Layout, hidden: true, children: [ { path: 'planItem/:yearId(\\d+)', component: (resolve) => require(['@/views/training/spec/plan/index'], resolve), name: 'PlanItem', meta: { title: '培训计划明细' } } ] }, { path: '/training/newstaff', component: Layout, hidden: true, children: [ { path: 'planList/:newId(\\d+)', component: (resolve) => require(['@/views/training/newstaff/planList'], resolve), name: 'planList', meta: { title: '新员工培训计划' } }, ] }, { path: '/training/bccnew', component: Layout, hidden: true, children: [ { path: 'trainingPlan/:newId(\\d+)', component: (resolve) => require(['@/views/training/bccnew/tsnew/trainingPlan.vue'], resolve), name: 'trainingPlan', meta: { title: '导师带徒培训计划' } },{ path: 'trainingPlan_s/:newId(\\d+)', component: (resolve) => require(['@/views/training/bccnew/tsnew/trainingPlan_student.vue'], resolve), name: 'trainingPlans', meta: { title: '导师带徒培训计划' } },{ path: 'firstPlan_t/:newId(\\d+)', component: (resolve) => require(['@/views/training/bccnew/firstplan/index_t.vue'], resolve), name: 'firstPlanT', meta: { title: '导师带徒装置级培训计划' } }, ] }, { path: '/production', component: Layout, hidden: true, children: [ { path: 'accident', component: (resolve) => require(['@/views/production/accident/index'], resolve), name: 'Accident', meta: { title: '隐患排查' } } ] }, { path: '/document', component: Layout, hidden: true, children: [ { path: 'publicdocmenu', component: (resolve) => require(['@/views/document/publicdocmenu/index'], resolve), name: 'PublicDocMenu', meta: { title: '公共文档目录管理' } } ] }, { path: '/system', component: Layout, hidden: true, children: [ { path: 'alarmprincipal/:tableId(\\d+)', component: (resolve) => require(['@/views/system/principal/index'], resolve), name: 'AlarmPrincipal', meta: { title: '预警管理负责人配置' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'rcauditmenu', component: (resolve) => require(['@/views/ehs/rcauditmenu/index'], resolve), name: 'RcauditMenu', meta: { title: 'RC审计助手目录管理' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'environapproval', component: (resolve) => require(['@/views/ehs/environapproval/index'], resolve), name: 'Environapproval', meta: { title: '环保批文清单' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'fireapproval', component: (resolve) => require(['@/views/ehs/fireapproval/index'], resolve), name: 'Fireapproval', meta: { title: '消防批文清单' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'safetyapproval', component: (resolve) => require(['@/views/ehs/safetyapproval/index'], resolve), name: 'Safetyapproval', meta: { title: '安全批文清单' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'msds', component: (resolve) => require(['@/views/ehs/msds/index'], resolve), name: 'Msds', meta: { title: 'MSDS管理' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'fireextinguisher', component: (resolve) => require(['@/views/ehs/fireextinguisher/index'], resolve), name: 'Fireextinguisher', meta: { title: '灭火器' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'eyewasher', component: (resolve) => require(['@/views/ehs/eyewasher/index'], resolve), name: 'Eyewasher', meta: { title: '洗眼器' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'firehose', component: (resolve) => require(['@/views/ehs/firehose/index'], resolve), name: 'Firehose', meta: { title: '消防水带箱' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'firehydrant', component: (resolve) => require(['@/views/ehs/firehydrant/index'], resolve), name: 'Firehydrant', meta: { title: '消防栓' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'highpresfire', component: (resolve) => require(['@/views/ehs/highpresfire/index'], resolve), name: 'Highpresfire', meta: { title: '高压消防炮' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'autosprinkler', component: (resolve) => require(['@/views/ehs/autosprinkler/index'], resolve), name: 'Autosprinkler', meta: { title: '自动喷淋系统' } } ] }, { path: '/ehs', component: Layout, hidden: true, children: [ { path: 'firestandpipe', component: (resolve) => require(['@/views/ehs/firestandpipe/index'], resolve), name: 'Firestandpipe', meta: { title: '消防竖管' } } ] }, { path: '/document', component: Layout, hidden: true, children: [ { path: 'plantproglist', component: (resolve) => require(['@/views/document/plantproglist/index'], resolve), name: 'Plantproglist', meta: { title: '装置程序清单' } } ] }, { path: '/plant', component: Layout, hidden: true, children: [ { path: 'confInfo', component: (resolve) => require(['@/views/plant/confInfo/index'], resolve), name: 'ConfInfo', meta: { title: '会议预约信息' } } ] }, { path: '/affair', component: Layout, hidden: true, children: [ { path: 'ppe', component: (resolve) => require(['@/views/affair/ppe/index'], resolve), name: 'Ppe', meta: { title: 'PPE发放登记' } } ] }, { path: '/training', component: Layout, hidden: true, children: [ { path: 'workcertificate', component: (resolve) => require(['@/views/training/workcertificate/index'], resolve), name: 'Workcertificate', meta: { title: '作业证书一览表' } } ] }, { path: '/training', component: Layout, hidden: true, children: [ { path: 'worklicense', component: (resolve) => require(['@/views/training/worklicense/index'], resolve), name: 'Worklicense', meta: { title: '上岗证一览表' } } ] }, { path: '/training', component: Layout, hidden: true, children: [ { path: 'deviceList/:id', component: (resolve) => require(['@/views/training/trainingbcc/deviceList'], resolve), name: 'deviceList', meta: { title: '装置培训详情' } } ] }, { path: '/training/elearn', component: Layout, hidden: true, children: [ { path: 'exam/prepare/:examId', component: () => import('@/views/training/elearn/paper/preview'), name: 'PreExam', meta: { title: '准备考试', noCache: true }, hidden: true },{ path: 'paper/:examId', component: () => import('@/views/training/elearn/paper/list'), name: 'paper', meta: { title: '在线考试', noCache: true }, hidden: true },{ path: 'exam/start/:paperId', component: () => import('@/views/training/elearn/paper/exam'), name: 'StartExam', meta: { title: '开始考试', noCache: true }, hidden: true }, { path: 'exam/result/:paperId', component: () => import('@/views/training/elearn/paper/result'), name: 'ShowExam', meta: { title: '考试结果', noCache: true }, hidden: true }, { path: 'userBook/training', component: () => import('@/views/training/elearn/userBook/train'), name: 'BookTraining', meta: { title: '错题训练', noCache: true }, hidden: true }, { path: 'repo/training/:repoId', component: () => import('@/views/training/elearn/userQu/train'), name: 'RepoTraining', meta: { title: '题库训练', noCache: true }, hidden: true }, { path: 'userQu/users/:examId', component: () => import('@/views/training/elearn/userExam/userList'), name: 'ListExamUser', meta: { title: '考试人员', noCache: true }, hidden: true }, ] }, { path: '/reliability', component: Layout, hidden: true, children: [ { path: 'safetyvavle', component: (resolve) => require(['@/views/reliability/safetyvavle/index'], resolve), name: 'Safetyvavle', meta: { title: '安全阀清单' } } ] }, { path: '/reliability', component: Layout, hidden: true, children: [ { path: 'pipe', component: (resolve) => require(['@/views/cui/pipe/index'], resolve), name: 'Pipe', meta: { title: '管线清单' } } ] }, { path: '/list', component: Layout, hidden: true, children: [ { path: 'list', component: (resolve) => require(['@/views/reliability/list/index'], resolve), name: 'List', meta: { title: '故障管理跟踪' } } ] }, { path: '/safetyapproval', component: Layout, hidden: true, children: [ { path: 'edit/:tableId(\\d+)', component: (resolve) => require(['@/views/ehs/safetyapprcont/index'], resolve), name: 'Safetyapprcont', meta: { title: '主要内容' } } ] }, { path: '/environapproval', component: Layout, hidden: true, children: [ { path: 'edit/:tableId(\\d+)', component: (resolve) => require(['@/views/ehs/environapprcont/index'], resolve), name: 'Environapprcont', meta: { title: '主要内容' } } ] }, { path: '/hismeeting', component: Layout, hidden: true, children: [ { path: 'edit/:tableId(\\d+)', component: (resolve) => require(['@/views/plant/weekmeeting/index'], resolve), name: 'hismeeting', meta: { title: '主要内容' } } ] }, { path: '/notice', component: Layout, hidden: true, children: [ { path: 'details', component: (resolve) => require(['@/views/system/notice/index.vue'], resolve), name: 'details', meta: { title: '通知公告' } } ] }, { path: '/model', component: Layout, hidden: true, children: [ { path: 'pfd', component: (resolve) => require(['@/views/monitor/pfd/index.vue'], resolve), name: 'pfd', meta: { title: 'pfd流程' } }, { path: '/pfd/jlq', component: (resolve) => require(['@/views/monitor/pfd/JLQPage.vue'], resolve), name: 'jlq', meta: { title: '急冷区' } }, { path: '/pfd/c2c3', component: (resolve) => require(['@/views/monitor/pfd/C2C3Page.vue'], resolve), name: 'c2c3', meta: { title: 'C2C3' } } ] }, //生产运行子页面 { path: '/materialChild1', component: (resolve) => require(['@/views/monitor/materialChild/materialChild1.vue'], resolve), name: 'materialChild1', hidden: true, meta: { title: '工艺流程图' } }, { path: '/materialChild2', component: (resolve) => require(['@/views/monitor/materialChild/materialChild2.vue'], resolve), name: 'materialChild2', hidden: true, meta: { title: '工艺流程图' } }, // 2023-02 首页重构 { path: '/BCCdashboardNew', component: (resolve) => require(['@/views/monitor/bccHome'], resolve), hidden: true }, ] export default new Router({ base: '/cpms/', mode: 'hash', // 去掉url中的# scrollBehavior: () => ({ y: 0 }), routes: constantRoutes })