routes.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513
  1. import layoutHeaderAside from '@/layout/header-aside'
  2. import layoutCustom from '@/layout/custom-layout'
  3. // 由于懒加载页面太多的话会造成webpack热更新太慢,所以开发环境不使用懒加载,只有生产环境使用懒加载
  4. const _import = require('@/utils/util.import.' + process.env.NODE_ENV)
  5. import { SYSTEM_NAME } from '@/constant'
  6. /**
  7. * 在主框架内显示
  8. */
  9. const frameIn = [
  10. {
  11. path: '/',
  12. redirect: { name: 'dashboard' },
  13. component: layoutHeaderAside,
  14. children: [
  15. // 首页
  16. {
  17. path: 'dashboard',
  18. name: 'dashboard',
  19. meta: {
  20. title: '首页',
  21. auth: true,
  22. hiddenAsideMenu: true
  23. },
  24. component: _import('/system/homepage')
  25. },
  26. {
  27. path: 'temp',
  28. name: 'temp',
  29. meta: {
  30. title: '旧版首页',
  31. auth: true,
  32. hiddenAsideMenu: true
  33. },
  34. component: _import('/system/dashboard')
  35. },
  36. {
  37. path: 'blank',
  38. name: 'blank',
  39. meta: {
  40. title: '首页',
  41. auth: true
  42. },
  43. component: _import('/system/blank')
  44. },
  45. {
  46. path: 'jbdHome',
  47. name: 'jbdHome',
  48. meta: {
  49. title: '数据统计',
  50. auth: true
  51. },
  52. component: _import('/system/jbdHome')
  53. },
  54. // 系统 前端日志
  55. {
  56. path: 'log',
  57. name: 'log',
  58. meta: {
  59. title: '前端日志',
  60. auth: true,
  61. hiddenAsideMenu: true
  62. },
  63. component: _import('/system/log')
  64. },
  65. // {
  66. // path: 'dashboard',
  67. // name: 'dashboard',
  68. // meta: {
  69. // title: '工作中心',
  70. // auth: true
  71. // },
  72. // component: _import('/system/dashboard')
  73. // },
  74. // 刷新页面 必须保留
  75. {
  76. path: 'refresh',
  77. name: 'refresh',
  78. hidden: true,
  79. component: _import('/system/function/refresh')
  80. },
  81. // 页面重定向 必须保留
  82. {
  83. path: 'redirect/:route*',
  84. name: 'redirect',
  85. hidden: true,
  86. component: _import('/system/function/redirect')
  87. },
  88. {
  89. path: '/notice',
  90. name: 'notice',
  91. meta: {
  92. title: '公告管理',
  93. auth: true
  94. },
  95. component: _import('/platform/system/news/list')
  96. },
  97. {
  98. path: '/message',
  99. name: 'message',
  100. meta: {
  101. title: '消息中心',
  102. auth: true,
  103. hiddenAsideMenu: true
  104. },
  105. component: _import('/platform/message/inner/receive')
  106. },
  107. {
  108. path: '/receiveMessage',
  109. name: 'receiveMessage',
  110. meta: {
  111. title: '未读消息',
  112. auth: true,
  113. hiddenAsideMenu: true
  114. },
  115. component: _import('/platform/message/inner/receive')
  116. },
  117. // 办公管理
  118. {
  119. path: 'myFavorites',
  120. name: 'myFavorites',
  121. meta: {
  122. title: '我的收藏',
  123. auth: true,
  124. hiddenAsideMenu: true
  125. },
  126. component: _import('/platform/office/bpmInitiatedProcess/favorites')
  127. },
  128. {
  129. path: 'myCompleted',
  130. name: 'myCompleted',
  131. meta: {
  132. title: '我的办结',
  133. auth: true,
  134. hiddenAsideMenu: true
  135. },
  136. component: _import('/platform/office/bpmInitiatedProcess/myCompleted')
  137. },
  138. {
  139. path: 'myDrafts',
  140. name: 'myDrafts',
  141. meta: {
  142. title: '我的暂存',
  143. auth: true,
  144. hiddenAsideMenu: true
  145. },
  146. component: _import('/platform/office/bpmInitiatedProcess/myDraft')
  147. },
  148. {
  149. path: 'mySysGuide',
  150. name: 'mySysGuide',
  151. meta: {
  152. title: '系统指引',
  153. auth: true,
  154. hiddenAsideMenu: true
  155. },
  156. component: _import('/system/dashboard/templates/systemGuide')
  157. },
  158. {
  159. path: 'myRequest',
  160. name: 'myRequest',
  161. meta: {
  162. title: '我的请求',
  163. auth: true,
  164. hiddenAsideMenu: true
  165. },
  166. component: _import('/platform/office/bpmInitiatedProcess/myRequest')
  167. },
  168. {
  169. path: 'newProcess',
  170. name: 'newProcess',
  171. meta: {
  172. title: '新建流程',
  173. auth: true,
  174. hiddenAsideMenu: true
  175. },
  176. component: _import('/platform/office/bpmInitiatedProcess/newProcess')
  177. },
  178. {
  179. path: 'delegateMatters',
  180. name: 'delegateMatters',
  181. meta: {
  182. title: '转办代理',
  183. auth: true,
  184. hiddenAsideMenu: true
  185. },
  186. component: _import('/platform/office/bpmReceivedProcess/pendingManage/delegateMatters')
  187. },
  188. {
  189. path: 'pendingMatters',
  190. name: 'pendingMatters',
  191. meta: {
  192. title: '待办事宜',
  193. auth: true,
  194. hiddenAsideMenu: true
  195. },
  196. component: _import('/platform/office/bpmReceivedProcess/pendingManage/pending')
  197. },
  198. {
  199. path: 'pendingYuan',
  200. name: 'pendingYuan',
  201. meta: {
  202. title: '原待办',
  203. auth: true
  204. },
  205. component: _import('/platform/office/bpmReceivedProcess/pendingManage/pendingYuan')
  206. },
  207. {
  208. path: 'transferOffice',
  209. name: 'transferOffice',
  210. meta: {
  211. title: '转办事宜',
  212. auth: true
  213. },
  214. component: _import('/platform/office/bpmReceivedProcess/pendingManage/transferOffice')
  215. },
  216. {
  217. path: 'completedMatters',
  218. name: 'completedMatters',
  219. meta: {
  220. title: '办结事宜',
  221. auth: true,
  222. hiddenAsideMenu: true
  223. },
  224. component: _import('/platform/office/bpmReceivedProcess/completed')
  225. },
  226. {
  227. path: 'handledTasks',
  228. name: 'handledTasks',
  229. meta: {
  230. title: '已办事宜',
  231. auth: true,
  232. hiddenAsideMenu: true
  233. },
  234. component: _import('/platform/office/bpmReceivedProcess/handled')
  235. },
  236. {
  237. path: 'pending',
  238. name: 'pending',
  239. meta: {
  240. title: '待办',
  241. auth: true,
  242. hiddenAsideMenu: true
  243. },
  244. component: _import('/platform/office/bpmReceivedProcess/pending')
  245. },
  246. {
  247. path: 'revoke',
  248. name: 'revoke',
  249. meta: {
  250. title: '废除',
  251. auth: true,
  252. hiddenAsideMenu: true
  253. },
  254. component: _import('/platform/office/bpmReceivedProcess/revoke')
  255. },
  256. {
  257. path: 'handled1',
  258. name: 'handled1',
  259. meta: {
  260. title: '已办1',
  261. auth: true,
  262. hiddenAsideMenu: true
  263. },
  264. component: _import('/platform/office/bpmReceivedTask/handled')
  265. },
  266. {
  267. path: 'handled2',
  268. name: 'handled2',
  269. meta: {
  270. title: '已办2',
  271. auth: true,
  272. hiddenAsideMenu: true
  273. },
  274. component: _import('/platform/office/bpmReceivedTask/handled2')
  275. }
  276. ]
  277. }
  278. ]
  279. /**
  280. * 在主框架之外显示
  281. */
  282. const frameOut = [
  283. // 首页
  284. // {
  285. // path: 'jbdHome',
  286. // name: 'jbdHome',
  287. // meta: {
  288. // title: '数据统计',
  289. // auth: true
  290. // },
  291. // component: _import('/system/jbdHome')
  292. // },
  293. // 登录
  294. {
  295. path: '/login',
  296. name: 'login',
  297. meta: {
  298. title: '登录'
  299. },
  300. component: _import('/system/login')
  301. },
  302. {
  303. path: '/fileView',
  304. name: 'fileView',
  305. meta: {
  306. title: '文件预览页'
  307. },
  308. component: _import('/viewFile')
  309. },
  310. {
  311. path: '/register',
  312. name: 'register',
  313. meta: {
  314. title: '注册账号'
  315. },
  316. component: _import('/system/register')
  317. },
  318. {
  319. path: '/tenantRegister',
  320. name: 'tenantRegister',
  321. meta: {
  322. title: '企业注册'
  323. },
  324. component: _import('/saas/tenant/register')
  325. },
  326. {
  327. path: '/forget',
  328. name: 'forget',
  329. meta: {
  330. title: '忘记密码'
  331. },
  332. component: _import('/system/forget')
  333. },
  334. {
  335. path: '/tenantForget',
  336. name: 'tenantForget',
  337. meta: {
  338. title: '忘记密码'
  339. },
  340. component: _import('/system/tenantForget')
  341. },
  342. {
  343. path: '/systemSelect',
  344. name: 'systemSelect',
  345. meta: {
  346. title: '选择子系统'
  347. },
  348. component: _import('/system/system')
  349. },
  350. {
  351. path: '/tenantSelect',
  352. name: 'tenantSelect',
  353. meta: {
  354. title: '选择租户'
  355. },
  356. component: _import('/saas/tenant/tenantSelect')
  357. },
  358. {
  359. path: '/locking',
  360. name: 'locking',
  361. meta: {
  362. title: '锁屏'
  363. },
  364. component: _import('/system/locking')
  365. },
  366. {
  367. path: '/iframe',
  368. name: 'iframe',
  369. meta: {
  370. title: 'iframe'
  371. },
  372. component: _import('/system/iframe')
  373. },
  374. {
  375. path: '/sealCompleted',
  376. name: 'sealCompleted',
  377. meta: {
  378. title: 'sealCompleted'
  379. },
  380. component: _import('/remindPage/sealCompleted')
  381. }
  382. ]
  383. /**
  384. * 响应式
  385. */
  386. const ziliao = [
  387. {
  388. // path: '/ziliao/:id',
  389. path: '/ziliao',
  390. name: 'ziliao',
  391. meta: {
  392. title: SYSTEM_NAME
  393. },
  394. // component: _import('/system/ziliao'),
  395. component: _import('/component/ziliao')
  396. // requireAuth: false
  397. }
  398. ]
  399. /**
  400. * 错误页面
  401. */
  402. const errorPage = [
  403. {
  404. path: '/404',
  405. name: 'error404',
  406. meta: {
  407. title: '404-页面不存在'
  408. },
  409. hidden: true,
  410. component: _import('/system/error/404')
  411. },
  412. {
  413. path: '/401',
  414. name: 'error401',
  415. meta: {
  416. title: '401- 未授权'
  417. },
  418. hidden: true,
  419. component: _import('/system/error/401')
  420. },
  421. {
  422. path: '/403',
  423. name: 'error403',
  424. meta: {
  425. title: '403-权限不足'
  426. },
  427. hidden: true,
  428. component: _import('/system/error/403')
  429. },
  430. {
  431. path: '/nomenu',
  432. name: 'nomenu',
  433. meta: {
  434. title: '没有菜单资源'
  435. },
  436. hidden: true,
  437. component: _import('/system/error/nomenu')
  438. }
  439. ]
  440. // 自定义【例子】
  441. const frameCustom = [
  442. {
  443. path: '/d/:id(\\w+)',
  444. component: _import('/platform/data/dataTemplate/template-list'),
  445. name: 'dataTemplateList',
  446. meta: { title: '数据模版' }
  447. },
  448. {
  449. path: '/business',
  450. name: 'business',
  451. component: layoutHeaderAside,
  452. children: [{
  453. path: 'bpmn/form',
  454. name: 'businessBpmnForm',
  455. meta: {
  456. title: '流程表单'
  457. },
  458. component: _import('/platform/bpmn/form/index')
  459. },
  460. {
  461. path: 'dataTemplate/form',
  462. name: 'businessDataTemplateForm',
  463. meta: {
  464. title: '数据模版表单'
  465. },
  466. component: _import('/platform/data/dataTemplate/form/index')
  467. }
  468. ]
  469. },
  470. {
  471. path: '/platform',
  472. name: 'platform',
  473. component: layoutCustom,
  474. children: [{
  475. path: 'bpmn/form',
  476. name: 'bpmnForm',
  477. meta: {
  478. title: '流程表单'
  479. },
  480. component: _import('/platform/bpmn/form/index')
  481. },
  482. {
  483. path: 'dataTemplate/form',
  484. name: 'dataTemplateForm',
  485. meta: {
  486. title: '数据模版表单'
  487. },
  488. component: _import('/platform/data/dataTemplate/form/index')
  489. }
  490. ]
  491. }
  492. ]
  493. // 导出需要显示菜单的
  494. export const frameInRoutes = frameIn
  495. // 重新组织后导出
  496. export default [
  497. ...frameIn,
  498. ...frameOut,
  499. ...errorPage,
  500. ...frameCustom,
  501. ...ziliao
  502. ]