routes.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358
  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. /**
  6. * 在主框架内显示
  7. */
  8. const frameIn = [
  9. {
  10. path: '/',
  11. redirect: { name: 'dashboard' },
  12. component: layoutHeaderAside,
  13. children: [
  14. // 首页
  15. {
  16. path: 'dashboard',
  17. name: 'dashboard',
  18. meta: {
  19. title: '首页',
  20. auth: true
  21. },
  22. component: _import('/system/dashboard')
  23. },
  24. {
  25. path: 'blank',
  26. name: 'blank',
  27. meta: {
  28. title: '首页',
  29. auth: true
  30. },
  31. component: _import('/system/blank')
  32. },
  33. {
  34. path: 'jbdHome',
  35. name: 'jbdHome',
  36. meta: {
  37. title: '数据统计',
  38. auth: true
  39. },
  40. component: _import('/system/jbdHome')
  41. },
  42. // 系统 前端日志
  43. {
  44. path: 'log',
  45. name: 'log',
  46. meta: {
  47. title: '前端日志',
  48. auth: true
  49. },
  50. component: _import('/system/log')
  51. },
  52. /* {
  53. path: 'dashboard',
  54. name: 'dashboard',
  55. meta: {
  56. title: '工作中心',
  57. auth: true
  58. },
  59. component: _import('/system/dashboard')
  60. }, */
  61. // 刷新页面 必须保留
  62. {
  63. path: 'refresh',
  64. name: 'refresh',
  65. hidden: true,
  66. component: _import('/system/function/refresh')
  67. },
  68. // 页面重定向 必须保留
  69. {
  70. path: 'redirect/:route*',
  71. name: 'redirect',
  72. hidden: true,
  73. component: _import('/system/function/redirect')
  74. }
  75. ]
  76. }
  77. ]
  78. /**
  79. * 在主框架之外显示
  80. */
  81. const frameOut = [
  82. // 首页
  83. /* {
  84. path: 'jbdHome',
  85. name: 'jbdHome',
  86. meta: {
  87. title: '数据统计',
  88. auth: true
  89. },
  90. component: _import('/system/jbdHome')
  91. }, */
  92. // 登录
  93. {
  94. path: '/login',
  95. name: 'login',
  96. meta: {
  97. title: '登录'
  98. },
  99. component: _import('/system/login')
  100. },
  101. {
  102. path: '/fileView',
  103. name: 'fileView',
  104. meta: {
  105. title: '文件预览页',
  106. },
  107. component: _import('/viewFile')
  108. },
  109. //内审不符合项统计的跳转
  110. {
  111. path: '/inconformity',
  112. name: 'inconformity',
  113. meta: {
  114. title: '不符合项统计',
  115. },
  116. component: _import('/warehouse')
  117. },
  118. /* */ {
  119. path: '/register',
  120. name: 'register',
  121. meta: {
  122. title: '注册账号'
  123. },
  124. component: _import('/system/register')
  125. },
  126. {
  127. path: '/tenantRegister',
  128. name: 'tenantRegister',
  129. meta: {
  130. title: '企业注册'
  131. },
  132. component: _import('/saas/tenant/register')
  133. },
  134. {
  135. path: '/forget',
  136. name: 'forget',
  137. meta: {
  138. title: '忘记密码'
  139. },
  140. component: _import('/system/forget')
  141. },
  142. {
  143. path: '/tenantForget',
  144. name: 'tenantForget',
  145. meta: {
  146. title: '忘记密码'
  147. },
  148. component: _import('/system/tenantForget')
  149. },
  150. {
  151. path: '/systemSelect',
  152. name: 'systemSelect',
  153. meta: {
  154. title: '选择子系统'
  155. },
  156. component: _import('/system/system')
  157. },
  158. {
  159. path: '/tenantSelect',
  160. name: 'tenantSelect',
  161. meta: {
  162. title: '选择租户'
  163. },
  164. component: _import('/saas/tenant/tenantSelect')
  165. },
  166. {
  167. path: '/locking',
  168. name: 'locking',
  169. meta: {
  170. title: '锁屏'
  171. },
  172. component: _import('/system/locking')
  173. },
  174. {
  175. path: '/iframe',
  176. name: 'iframe',
  177. meta: {
  178. title: 'iframe'
  179. },
  180. component: _import('/system/iframe')
  181. },
  182. {
  183. path: '/sealCompleted',
  184. name: 'sealCompleted',
  185. meta: {
  186. title: 'sealCompleted'
  187. },
  188. component: _import('/remindPage/sealCompleted')
  189. }
  190. ]
  191. /**
  192. * 响应式
  193. */
  194. const ziliao = [
  195. {
  196. //path: '/ziliao/:id',
  197. path: '/ziliao',
  198. name: 'ziliao',
  199. meta: {
  200. title: '明鉴实验室管理平台'
  201. },
  202. //component: _import('/system/ziliao'),
  203. component: _import('/component/ziliao'),
  204. //requireAuth: false
  205. },
  206. ]
  207. /**
  208. * 错误页面
  209. */
  210. const errorPage = [
  211. {
  212. path: '/404',
  213. name: 'error404',
  214. meta: {
  215. title: '404-页面不存在'
  216. },
  217. hidden: true,
  218. component: _import('/system/error/404')
  219. },
  220. {
  221. path: '/401',
  222. name: 'error401',
  223. meta: {
  224. title: '401- 未授权'
  225. },
  226. hidden: true,
  227. component: _import('/system/error/401')
  228. },
  229. {
  230. path: '/403',
  231. name: 'error403',
  232. meta: {
  233. title: '403-权限不足'
  234. },
  235. hidden: true,
  236. component: _import('/system/error/403')
  237. },
  238. {
  239. path: '/nomenu',
  240. name: 'nomenu',
  241. meta: {
  242. title: '没有菜单资源'
  243. },
  244. hidden: true,
  245. component: _import('/system/error/nomenu')
  246. }
  247. ]
  248. // 自定义【例子】
  249. const frameCustom = [
  250. {
  251. path: '/d/:id(\\w+)',
  252. component: _import('/platform/data/dataTemplate/template-list'),
  253. name: 'dataTemplateList',
  254. meta: { title: '数据模版' }
  255. },
  256. {
  257. path: '/business',
  258. name: 'business',
  259. component: layoutHeaderAside,
  260. children: [{
  261. path: 'bpmn/form',
  262. name: 'businessBpmnForm',
  263. meta: {
  264. title: '流程表单'
  265. },
  266. component: _import('/platform/bpmn/form/index')
  267. },
  268. {
  269. path: 'dataTemplate/form',
  270. name: 'businessDataTemplateForm',
  271. meta: {
  272. title: '数据模版表单'
  273. },
  274. component: _import('/platform/data/dataTemplate/form/index')
  275. }
  276. ]
  277. },
  278. {
  279. path: '/platform',
  280. name: 'platform',
  281. component: layoutCustom,
  282. children: [{
  283. path: 'bpmn/form',
  284. name: 'bpmnForm',
  285. meta: {
  286. title: '流程表单'
  287. },
  288. component: _import('/platform/bpmn/form/index')
  289. },
  290. {
  291. path: 'dataTemplate/form',
  292. name: 'dataTemplateForm',
  293. meta: {
  294. title: '数据模版表单'
  295. },
  296. component: _import('/platform/data/dataTemplate/form/index')
  297. }
  298. ]
  299. },
  300. // 无布局头和侧边栏.
  301. {
  302. path: '/demo',
  303. component: layoutCustom,
  304. children: [{
  305. path: 'crud/list',
  306. name: 'crud-list',
  307. meta: {
  308. title: '列表'
  309. },
  310. component: _import('/demo/crud/list/index')
  311. },
  312. {
  313. path: 'iframe/form',
  314. name: 'iframe-form',
  315. meta: {
  316. title: 'iframe表单'
  317. },
  318. component: _import('/demo/iframe-form/index')
  319. },
  320. {
  321. path: 'url/form',
  322. name: 'url-form',
  323. meta: {
  324. title: 'URL表单'
  325. },
  326. component: _import('/demo/url-form/index')
  327. }
  328. ]
  329. }
  330. ]
  331. // 导出需要显示菜单的
  332. export const frameInRoutes = frameIn
  333. // 重新组织后导出
  334. export default [
  335. ...frameIn,
  336. ...frameOut,
  337. ...errorPage,
  338. ...frameCustom,
  339. ...ziliao
  340. ]