base.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. import Layout from "~src/layout/index.vue";
  2. //路由菜单系统内置页面配置, noMenuBar: true 不显示在菜单栏记录里
  3. export default [
  4. {
  5. path: '/',
  6. redirect: '/home/index',
  7. },
  8. {
  9. path: '/login',
  10. name: 'login',
  11. meta: {title: '登录'},
  12. component: () => import('~src/views/login/index.vue')
  13. },
  14. {
  15. path: '/home',
  16. name: 'home',
  17. redirect: '/home/index',
  18. meta: {title: '门户'},
  19. component: Layout,
  20. children: [
  21. //首页统计
  22. {
  23. path: '/home/index',
  24. name: 'home-index',
  25. meta: {title: '普通权限'},
  26. component: () => import('~src/views/home/index/index.vue')
  27. },
  28. {
  29. path: '/home/admin',
  30. name: 'home-admin',
  31. meta: {title: '领导权限'},
  32. component: () => import('~src/views/home/index/admin.vue')
  33. },
  34. //审批管理
  35. {
  36. path: '/home/task',
  37. name: 'home-task',
  38. meta: {title: '审批管理'},
  39. component: () => import('~src/views/home/task/task.vue')
  40. },
  41. {
  42. path: '/home/task-details',
  43. name: 'home-task-details',
  44. meta: {title: '任务详情'}, //, noMenuBar: true
  45. component: () => import('~src/views/home/task/task-details.vue')
  46. },
  47. //待定
  48. {
  49. path: '/home/budget',
  50. name: 'home-budget',
  51. meta: {title: '公司经营预算'},
  52. component: () => import('~src/views/home/budget.vue')
  53. },
  54. {
  55. path: '/home/budget-form',
  56. name: 'home-budget-form',
  57. meta: {title: '公司经营预算信息'},
  58. component: () => import('~src/views/home/budget-form.vue')
  59. },
  60. {
  61. path: '/home/budget-chart',
  62. name: 'home-budget-chart',
  63. meta: {title: '公司经营预算报表'},
  64. component: () => import('~src/views/home/budget-chart.vue')
  65. }
  66. ],
  67. },
  68. {
  69. path: '/project',
  70. name: 'project',
  71. redirect: '/project/index',
  72. meta: {title: '项目管理'},
  73. component: Layout,
  74. children: [
  75. //项目列表
  76. {
  77. path: '/project/index',
  78. name: 'project-index',
  79. meta: {title: '项目列表'},
  80. component: () => import('~src/views/project/list/index.vue')
  81. },
  82. {
  83. path: '/project/list-info',
  84. name: 'project-list-info',
  85. meta: {title: '项目信息'},
  86. component: () => import('~src/views/project/list/list-info.vue')
  87. },
  88. //成本测算
  89. {
  90. path: '/project/cost',
  91. name: 'project-cost',
  92. meta: {title: '成本测算'},
  93. component: () => import('~src/views/project/cost/index.vue')
  94. },
  95. {
  96. path: '/project/cost/form',
  97. name: 'project-cost-form',
  98. meta: {title: '成本测算', text: '新增编辑'},
  99. component: () => import('~src/views/project/cost/form.vue')
  100. },
  101. {
  102. path: '/project/cost-data',
  103. name: 'project-cost-data',
  104. meta: {title: '成本测算预览'},
  105. component: () => import('~src/views/project/cost/data.vue')
  106. },
  107. //项目合同
  108. {
  109. path: '/project/contract',
  110. name: 'project-contract',
  111. meta: {title: '项目合同'},
  112. component: () => import('~src/views/project/contract/index.vue')
  113. },
  114. {
  115. path: '/project/contract/form',
  116. name: 'project-contract-form',
  117. meta: {title: '项目合同信息'},
  118. component: () => import('~src/views/project/contract/form.vue')
  119. },
  120. {
  121. path: '/project/contract/update',
  122. name: 'project-contract-update',
  123. meta: {title: '合同回款更新'},
  124. component: () => import('~src/views/project/contract/update.vue')
  125. },
  126. ],
  127. },
  128. {
  129. path: '/program',
  130. name: 'program',
  131. redirect: '/program/annual',
  132. meta: {title: '预算计划管理'},
  133. component: Layout,
  134. children: [
  135. //年度经营预算
  136. {
  137. path: '/program/annual',
  138. name: 'program-annual',
  139. meta: {title: '年度经营预算'},
  140. component: () => import('~src/views/program/annual/index.vue')
  141. },
  142. {
  143. path: '/program/annual-form',
  144. name: 'program-annual-form',
  145. meta: {title: '年度经营预算信息'},
  146. component: () => import('~src/views/program/annual/form.vue')
  147. },
  148. {
  149. path: '/program/annual-view',
  150. name: 'program-annual-view',
  151. meta: {title: '预览年度经营预算'},
  152. component: () => import('~src/views/program/annual/view.vue')
  153. },
  154. //项目计划预算
  155. {
  156. path: '/program/project',
  157. name: 'program-project',
  158. meta: {title: '项目计划预算'},
  159. component: () => import('~src/views/program/project/index.vue')
  160. },
  161. {
  162. path: '/program/project-form',
  163. name: 'program-project-form',
  164. meta: {title: '项目计划预算信息'},
  165. component: () => import('~src/views/program/project/form.vue')
  166. },
  167. //部门月度计划预算
  168. {
  169. path: '/program/section',
  170. name: 'program-section',
  171. meta: {title: '部门月度计划预算'},
  172. component: () => import('~src/views/program/section/index.vue')
  173. },
  174. {
  175. path: '/program/section-form',
  176. name: 'program-section-form',
  177. meta: {title: '部门月度计划预算信息'},
  178. component: () => import('~src/views/program/section/form.vue')
  179. },
  180. ],
  181. },
  182. {
  183. path: '/logs',
  184. name: 'logs',
  185. redirect: '/logs/index',
  186. meta: {title: '日志管理'},
  187. component: Layout,
  188. children: [
  189. {
  190. path: '/logs/index',
  191. name: 'logs-index',
  192. meta: {title: '历史日志'},
  193. component: () => import('~src/views/logs/index.vue')
  194. },
  195. ],
  196. },
  197. {
  198. path: '/user',
  199. name: 'user',
  200. redirect: '/user/index',
  201. meta: {title: '个人中心'},
  202. component: Layout,
  203. children: [
  204. {
  205. path: '/user/index',
  206. name: 'user-index',
  207. meta: {title: '个人资料'},
  208. component: () => import('~src/views/user/index.vue')
  209. },
  210. {
  211. path: '/user/config',
  212. name: 'user-config',
  213. meta: {title: '主题设置'},
  214. component: () => import('~src/views/user/config.vue')
  215. },
  216. ],
  217. },
  218. {
  219. path: '/static',
  220. name: 'static',
  221. redirect: '/static/static',
  222. meta: {title: '综合查询统计'},
  223. component: Layout,
  224. children: [
  225. {
  226. path: '/static/actual',
  227. name: 'static-actual',
  228. meta: {title: '预算与实际统计'},
  229. component: () => import('~src/views/static/actual.vue')
  230. },
  231. {
  232. path: '/static/static',
  233. name: 'static-project',
  234. meta: {title: '项目统计'},
  235. component: () => import('~src/views/static/project.vue')
  236. },
  237. {
  238. path: '/static/plan',
  239. name: 'static-plan',
  240. meta: {title: '任务统计'},
  241. component: () => import('~src/views/static/plan.vue')
  242. },
  243. {
  244. path: '/system/parameter',
  245. name: 'system-parameter',
  246. meta: {title: '参数配置'},
  247. component: () => import('~src/views/system/parameter.vue')
  248. },
  249. {
  250. path: '/system/organization',
  251. name: 'system-organization',
  252. meta: {title: '组织架构管理'},
  253. component: () => import('~src/views/system/organization.vue')
  254. },
  255. ],
  256. },
  257. {
  258. path: '/system',
  259. name: 'system',
  260. redirect: '/system/user',
  261. meta: {title: '系统设置'},
  262. component: Layout,
  263. children: [
  264. {
  265. path: '/system/user',
  266. name: 'system-user',
  267. meta: {title: '账户管理'},
  268. component: () => import('~src/views/system/user.vue')
  269. },
  270. {
  271. path: '/system/menu',
  272. name: 'system-menu',
  273. meta: {title: '菜单管理'},
  274. component: () => import('~src/views/system/menu.vue')
  275. },
  276. {
  277. path: '/system/parameter',
  278. name: 'system-parameter',
  279. meta: {title: '参数配置'},
  280. component: () => import('~src/views/system/parameter.vue')
  281. },
  282. {
  283. path: '/system/organization',
  284. name: 'system-organization',
  285. meta: {title: '组织架构管理'},
  286. component: () => import('~src/views/system/organization.vue')
  287. },
  288. ],
  289. },
  290. {
  291. path: '/people',
  292. name: 'people',
  293. redirect: '/people/company-rule',
  294. meta: {title: '人资管理'},
  295. component: Layout,
  296. children: [
  297. {
  298. path: '/people/company-rule',
  299. name: 'people-company-rule',
  300. meta: {title: '公司制度'},
  301. component: () => import('~src/views/people/company-rule.vue')
  302. },
  303. {
  304. path: '/people/archive',
  305. name: 'people-archive',
  306. meta: {title: '员工档案'},
  307. component: () => import('~src/views/people/archive/index.vue')
  308. },
  309. {
  310. path: '/people/archive-info',
  311. name: 'people-archive-info',
  312. meta: {title: '员工档案信息'},
  313. component: () => import('~src/views/people/archive/info.vue')
  314. },
  315. {
  316. path: '/people/contract',
  317. name: 'people-contract',
  318. meta: {title: '员工合同'},
  319. component: () => import('~src/views/people/contract.vue')
  320. },
  321. {
  322. path: '/people/salary',
  323. name: 'people-salary',
  324. meta: {title: '薪酬管理'},
  325. component: () => import('~src/views/people/salary.vue')
  326. },
  327. {
  328. path: '/people/entry',
  329. name: 'people-entry',
  330. meta: {title: '入职管理'},
  331. component: () => import('~src/views/people/entry.vue')
  332. },
  333. {
  334. path: '/people/dimission',
  335. name: 'people-dimission',
  336. meta: {title: '离职管理'},
  337. component: () => import('~src/views/people/dimission.vue')
  338. },
  339. ],
  340. },
  341. // {
  342. // path: '/risk',
  343. // name: 'risk',
  344. // redirect: '/risk/warning',
  345. // meta: {title: '风险预警'},
  346. // component: Layout,
  347. // children: [
  348. // {
  349. // path: '/risk/warning',
  350. // name: 'risk-warning',
  351. // meta: {title: '风险预警'},
  352. // component: () => import('~src/views/risk/warning.vue')
  353. // },
  354. // ],
  355. // },
  356. {
  357. path: '/403',
  358. name: '403',
  359. meta: {title: '403'},
  360. component: () => import('~src/views/error/403.vue')
  361. },
  362. {
  363. path: '/404',
  364. name: '404',
  365. meta: {title: '404'},
  366. component: () => import('~src/views/error/404.vue')
  367. },
  368. {
  369. path: '/500',
  370. name: '500',
  371. meta: {title: '500'},
  372. component: () => import('~src/views/error/500.vue')
  373. },
  374. {
  375. path: '/:path(.*)*',
  376. redirect: '/404'
  377. }
  378. ]