router.js 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. import Main from "@/views/Main.vue";
  2. // 不作为Main组件的子页面展示的页面单独写,如下
  3. export const loginRouter = {
  4. path: "/login",
  5. name: "login",
  6. meta: {
  7. title: "机考数据中心 - 登录",
  8. },
  9. component: (resolve) => {
  10. require(["@/views/login.vue"], resolve);
  11. },
  12. };
  13. // 作为Main组件的子页面展示但是不在左侧菜单显示的路由写在otherRouter里
  14. export const otherRouter = {
  15. path: "/",
  16. name: "otherRouter",
  17. redirect: "/home",
  18. component: Main,
  19. children: [
  20. {
  21. path: "home",
  22. title: "主页",
  23. name: "home",
  24. component: (resolve) => {
  25. require(["@/views/home/home.vue"], resolve);
  26. },
  27. },
  28. // { path: 'ownspace', title: '个人中心', name: 'ownspace_index', component: resolve => { require(['@/views/own-space/own-space.vue'], resolve); } },
  29. {
  30. path: "examplan/add",
  31. title: "新建考试任务",
  32. name: "exam_plan_add",
  33. component: (resolve) => {
  34. require(["@/views/exam/exam-plan-add.vue"], resolve);
  35. },
  36. },
  37. {
  38. path: "examplan/edit/:id",
  39. title: "编辑考试任务",
  40. name: "exam_plan_edit",
  41. component: (resolve) => {
  42. require(["@/views/exam/exam-plan-edit.vue"], resolve);
  43. },
  44. },
  45. {
  46. path: "examplan/room",
  47. title: "查看考场数据",
  48. name: "exam_plan_room_view",
  49. component: (resolve) => {
  50. require(["@/views/exam/exam-plan-room-view.vue"], resolve);
  51. },
  52. },
  53. {
  54. path: "examplan/student",
  55. title: "查看考生数据",
  56. name: "exam_plan_student_view",
  57. component: (resolve) => {
  58. require(["@/views/exam/exam-plan-student-view.vue"], resolve);
  59. },
  60. },
  61. ],
  62. };
  63. // 作为Main组件的子页面展示并且在左侧菜单显示的路由写在appRouter里
  64. export const appRouter = [
  65. {
  66. path: "/examplan",
  67. icon: "ivu-icon ivu-icon-ios-desktop",
  68. name: "examplan",
  69. title: "机考",
  70. component: Main,
  71. children: [
  72. {
  73. path: "",
  74. icon: "fa fa-tasks",
  75. title: "考试任务管理",
  76. name: "exam_plan_index",
  77. component: (resolve) => {
  78. require(["@/views/exam/exam-plan.vue"], resolve);
  79. },
  80. },
  81. {
  82. path: "/kw/charts",
  83. icon: "fa fa-download",
  84. title: "考务下载监控",
  85. name: "exam_plan_kw_progress",
  86. component: (resolve) => {
  87. require(["@/views/exam/exam-plan-kw-progress.vue"], resolve);
  88. },
  89. },
  90. {
  91. path: "/paper/uncoiling",
  92. icon: "fa fa-unlock-alt",
  93. title: "开卷管理",
  94. name: "exam_plan_paper_uncoiling",
  95. component: (resolve) => {
  96. require(["@/views/exam/exam-plan-paper-uncoiling.vue"], resolve);
  97. },
  98. },
  99. {
  100. path: "/room/uncoiling",
  101. icon: "fa fa-folder-open",
  102. title: "开卷监控",
  103. name: "exam_plan_room_uncoiling",
  104. component: (resolve) => {
  105. require(["@/views/exam/exam-plan-room-uncoiling.vue"], resolve);
  106. },
  107. },
  108. {
  109. path: "progress",
  110. icon: "fa fa-folder-open",
  111. title: "考试进度查询",
  112. name: "exam_plan_progress",
  113. component: (resolve) => {
  114. require(["@/views/exam/exam-plan-progress.vue"], resolve);
  115. },
  116. },
  117. {
  118. path: "normal",
  119. icon: "fa fa-pie-chart",
  120. title: "通用机考汇总",
  121. name: "exam_plan_kj_hz",
  122. component: (resolve) => {
  123. require(["@/views/exam/exam-plan-kj-hz-normal.vue"], resolve);
  124. },
  125. },
  126. {
  127. path: "solfege",
  128. icon: "fa fa-pie-chart",
  129. title: "视唱机考汇总",
  130. name: "exam_plan_kj_hz_solfege",
  131. component: (resolve) => {
  132. require(["@/views/exam/exam-plan-kj-hz-solfege.vue"], resolve);
  133. },
  134. },
  135. {
  136. path: "/jkd-rz",
  137. icon: "fa fa-pie-chart",
  138. title: "监考端日志管理",
  139. name: "exam_plan_jkd_rz",
  140. component: (resolve) => {
  141. require(["@/views/exam/exam-plan-jkd-rz.vue"], resolve);
  142. },
  143. },
  144. {
  145. path: "/jkd-sj",
  146. icon: "fa fa-pie-chart",
  147. title: "监考端数据管理",
  148. name: "exam_plan_jkd_sj",
  149. component: (resolve) => {
  150. require(["@/views/exam/exam-plan-jkd-sj.vue"], resolve);
  151. },
  152. },
  153. // { path: 'solfege',icon:'fa fa-pie-chart', title: '视唱机考汇总', name: 'exam_plan_kj_hz_solfege', component: resolve => { require(['@/views/exam/exam-plan-kj-hz-solfege.vue'], resolve); } },
  154. {
  155. path: "/kj/charts",
  156. icon: "fa fa-bar-chart",
  157. title: "查询统计",
  158. name: "exam_plan_kw_hz",
  159. component: (resolve) => {
  160. require(["@/views/exam/exam-plan-kw-hz.vue"], resolve);
  161. },
  162. },
  163. {
  164. path: "/kw/task",
  165. icon: "fa fa-bar-chart",
  166. title: "考试同步管理",
  167. name: "exam_kw_task",
  168. component: (resolve) => {
  169. require(["@/views/exam/exam-task-manager.vue"], resolve);
  170. },
  171. },
  172. ],
  173. },
  174. {
  175. path: "/user",
  176. icon: "ivu-icon ivu-icon-md-person",
  177. name: "user",
  178. title: "用户",
  179. component: Main,
  180. children: [
  181. {
  182. path: "manage",
  183. role: "SUPER_ADMIN",
  184. icon: "fa fa-user-circle",
  185. title: "用户管理",
  186. name: "user_manage",
  187. component: (resolve) => {
  188. require(["@/views/exam/exam-user-manager.vue"], resolve);
  189. },
  190. },
  191. {
  192. path: "/personal",
  193. icon: "fa fa-cog",
  194. title: "修改密码",
  195. name: "rest_password",
  196. component: (resolve) => {
  197. require(["@/views/exam/rest-password.vue"], resolve);
  198. },
  199. },
  200. ],
  201. },
  202. {
  203. path: "/config",
  204. icon: "ivu-icon ivu-icon-md-settings",
  205. name: "config",
  206. title: "配置中心",
  207. component: Main,
  208. children: [
  209. {
  210. path: "/auth",
  211. icon: "fa fa-cog",
  212. title: "授权配置",
  213. name: "auth_set",
  214. role: "SUPER_ADMIN",
  215. component: (resolve) => {
  216. require(["@/views/exam/auth-set.vue"], resolve);
  217. },
  218. },
  219. {
  220. path: "/school-manage",
  221. icon: "fa fa-cog",
  222. title: "学校管理",
  223. name: "school_manange",
  224. role: "SUPER_ADMIN",
  225. component: (resolve) => {
  226. require(["@/views/exam/school-manage.vue"], resolve);
  227. },
  228. },
  229. ],
  230. },
  231. ];
  232. // 所有上面定义的路由都要写在下面的routers里
  233. export const routers = [loginRouter, otherRouter, ...appRouter];