| | |
| | | :collapse-transition="false" |
| | | mode="vertical" |
| | | > |
| | | <sidebar-item v-for="route in routes" :key="route.path" :item="route" :base-path="route.path" /> |
| | | <sidebar-item v-for="route in routerList" :key="route.path" :item="route" :base-path="route.path" /> |
| | | </el-menu> |
| | | </el-scrollbar> |
| | | </div> |
| | |
| | | import Logo from './Logo' |
| | | import SidebarItem from './SidebarItem' |
| | | import variables from '@/styles/variables.scss' |
| | | import { deptAdminRoutes } from '@/router' |
| | | |
| | | export default { |
| | | components: { SidebarItem, Logo }, |
| | | data () { |
| | | return { |
| | | routerList: sessionStorage.getItem('deptAdmin') === '1' ? deptAdminRoutes : this.routes |
| | | } |
| | | }, |
| | | computed: { |
| | | ...mapGetters([ |
| | | 'sidebar', |
| | |
| | | } |
| | | ] |
| | | |
| | | const deptAdminRoutes = [ |
| | | { |
| | | path: '/redirect', |
| | | component: Layout, |
| | | hidden: true, |
| | | children: [ |
| | | { |
| | | path: '/redirect/:path*', |
| | | component: () => import('@/views/redirect/index') |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/login', |
| | | name: 'Login', |
| | | hidden: true, |
| | | component: () => import('@/views/login/index'), |
| | | meta: { title: '登录' } |
| | | }, |
| | | { |
| | | path: '/', |
| | | component: Layout, |
| | | redirect: '/dashboard', |
| | | children: [ |
| | | { |
| | | path: 'dashboard', |
| | | component: () => import('@/views/dashboard/index'), |
| | | name: 'Dashboard', |
| | | meta: { title: '主页', icon: 'home', affix: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/exam', |
| | | component: Layout, |
| | | name: 'ExamPage', |
| | | meta: { |
| | | title: '卷题管理', |
| | | icon: 'exam' |
| | | }, |
| | | children: [ |
| | | { |
| | | path: 'paper/list', |
| | | component: () => import('@/views/exam/paper/list'), |
| | | name: 'ExamPaperPageList', |
| | | meta: { title: '试卷列表', noCache: true } |
| | | }, |
| | | { |
| | | path: 'paper/edit', |
| | | component: () => import('@/views/exam/paper/edit'), |
| | | name: 'ExamPaperEdit', |
| | | meta: { title: '试卷编辑', noCache: true, activeMenu: '/exam/paper/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'question/list', |
| | | component: () => import('@/views/exam/question/list'), |
| | | name: 'ExamQuestionPageList', |
| | | meta: { title: '题目列表', noCache: true } |
| | | }, |
| | | { |
| | | path: 'question/edit/singleChoice', |
| | | component: () => import('@/views/exam/question/edit/single-choice'), |
| | | name: 'singleChoicePage', |
| | | meta: { title: '单选题编辑', noCache: true, activeMenu: '/exam/question/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'simulation/list', |
| | | component: () => import('@/views/exam/simulation/list'), |
| | | name: 'personalSimulationList', |
| | | meta: { title: '模拟列表', noCache: true } |
| | | }, |
| | | { |
| | | path: 'personalSimulation/list', |
| | | component: () => import('@/views/exam/personalSimulation/list'), |
| | | name: 'personalSimulation', |
| | | meta: { title: '个人模拟', noCache: true } |
| | | }, |
| | | { |
| | | path: 'personalRandomTemplate/list', |
| | | component: () => import('@/views/exam/personalRandomTemplate/list'), |
| | | name: 'personalSimulation', |
| | | meta: { title: '随机试卷', noCache: true } |
| | | }, |
| | | { |
| | | path: 'personalRandomTemplate/edit', |
| | | component: () => import('@/views/exam/personalRandomTemplate/edit'), |
| | | name: 'personalSimulationEdit', |
| | | meta: { title: '随机试卷', noCache: true, activeMenu: '/exam/personalRandomTemplate/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'personalSimulation/edit', |
| | | component: () => import('@/views/exam/personalSimulation/edit'), |
| | | name: 'personalSimulationEdit', |
| | | meta: { title: '试卷编辑', noCache: true, activeMenu: '/exam/personalSimulation/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'personalSimulation/list/mathList', |
| | | component: () => import('@/views/exam/mathList/list.vue'), |
| | | name: 'multiplemathList', |
| | | meta: { title: '模拟列表详情', noCache: true, activeMenu: '/exam/mathList/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'question/edit/multipleChoice', |
| | | component: () => import('@/views/exam/question/edit/multiple-choice'), |
| | | name: 'multipleChoicePage', |
| | | meta: { title: '多选题编辑', noCache: true, activeMenu: '/exam/question/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'question/edit/trueFalse', |
| | | component: () => import('@/views/exam/question/edit/true-false'), |
| | | name: 'trueFalsePage', |
| | | meta: { title: '判断题编辑', noCache: true, activeMenu: '/exam/question/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'question/edit/gapFilling', |
| | | component: () => import('@/views/exam/question/edit/gap-filling'), |
| | | name: 'gapFillingPage', |
| | | meta: { title: '填空题编辑', noCache: true, activeMenu: '/exam/question/list' }, |
| | | hidden: true |
| | | }, |
| | | { |
| | | path: 'question/edit/shortAnswer', |
| | | component: () => import('@/views/exam/question/edit/short-answer'), |
| | | name: 'shortAnswerPage', |
| | | meta: { title: '简答题编辑', noCache: true, activeMenu: '/exam/question/list' }, |
| | | hidden: true |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/task', |
| | | component: Layout, |
| | | name: 'TaskPage', |
| | | meta: { |
| | | title: '任务管理', |
| | | icon: 'task' |
| | | }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'list', |
| | | component: () => import('@/views/task/list'), |
| | | name: 'TaskListPage', |
| | | meta: { title: '任务列表', noCache: true } |
| | | }, |
| | | { |
| | | path: 'edit', |
| | | component: () => import('@/views/task/edit'), |
| | | name: 'TaskEditPage', |
| | | meta: { title: '任务创建', noCache: true } |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/answer', |
| | | component: Layout, |
| | | name: 'AnswerPage', |
| | | meta: { |
| | | title: '成绩管理', |
| | | icon: 'answer' |
| | | }, |
| | | alwaysShow: true, |
| | | children: [ |
| | | { |
| | | path: 'list', |
| | | component: () => import('@/views/answer/list'), |
| | | name: 'AnswerPageList', |
| | | meta: { title: '答卷列表', noCache: true } |
| | | }, |
| | | { |
| | | path: 'sheetStatistics', |
| | | component: () => import('@/views/answer/sheetStatistics.vue'), |
| | | name: 'AnswerPageList', |
| | | meta: { title: '答卷统计', noCache: true } |
| | | }, |
| | | { |
| | | path: 'achievementStatistics', |
| | | component: () => import('@/views/answer/achievementStatistics.vue'), |
| | | name: 'AnswerPageList', |
| | | meta: { title: '成绩统计', noCache: true } |
| | | }, |
| | | { |
| | | path: 'achievementStatistics/gradeDetails', |
| | | component: () => import('@/views/exam/gradeDetails/list.vue'), |
| | | name: 'AnswerPageList', |
| | | meta: { title: '成绩统计详情', noCache: true, activeMenu: '/exam/gradeDetails/list' }, |
| | | hidden: true |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | path: '/profile', |
| | | component: Layout, |
| | | hidden: true, |
| | | children: [ |
| | | { |
| | | path: 'index', |
| | | component: () => import('@/views/profile/index'), |
| | | name: 'Profile', |
| | | meta: { title: '个人简介', icon: 'user', noCache: true } |
| | | } |
| | | ] |
| | | }, |
| | | { path: '*', |
| | | hidden: true, |
| | | component: () => import('@/views/error-page/404'), |
| | | meta: { title: '404', noCache: true } |
| | | } |
| | | ] |
| | | |
| | | const router = new Router({ |
| | | routes: constantRoutes |
| | | routes: sessionStorage.getItem('deptAdmin') === '1' ? deptAdminRoutes : constantRoutes |
| | | }) |
| | | |
| | | export { |
| | | constantRoutes, |
| | | router |
| | | router, |
| | | deptAdminRoutes |
| | | } |
| | |
| | | import { constantRoutes } from '@/router' |
| | | import { constantRoutes, deptAdminRouter } from '@/router' |
| | | |
| | | let state = { |
| | | routes: constantRoutes |
| | |
| | | } |
| | | |
| | | const actions = { |
| | | changeRoute() {} |
| | | } |
| | | |
| | | export default { |
| | |
| | | console.log(result) |
| | | _this.seachPageDepartMentList() |
| | | _this.setUserName(_this.loginForm.userName) |
| | | sessionStorage.setItem('deptAdmin', result.response.deptAdmin) |
| | | _this.$router.push({ path: '/' }) |
| | | } else { |
| | | _this.loading = false |