router.config.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446
  1. // eslint-disable-next-line
  2. import {
  3. UserLayout,
  4. BasicLayout,
  5. RouteView,
  6. BlankLayout,
  7. PageView
  8. } from '@/layouts'
  9. export const asyncRouterMap = [{
  10. path: '/',
  11. name: 'index',
  12. component: BasicLayout,
  13. meta: {
  14. title: '首页'
  15. },
  16. redirect: '/home',
  17. children: [{
  18. path: '/home',
  19. name: 'home',
  20. redirect: '/home',
  21. component: PageView,
  22. meta: {
  23. title: '首页',
  24. icon: 'home'
  25. },
  26. hideChildrenInMenu: true,
  27. children: [{
  28. path: '/home',
  29. name: 'home',
  30. component: () => import(/* webpackChunkName: "home" */ '@/views/Home'),
  31. meta: {
  32. title: '首页',
  33. icon: 'home',
  34. hide: true
  35. }
  36. }
  37. ]
  38. },
  39. {
  40. path: '/changePwd',
  41. name: 'changePwd',
  42. component: () => import(/* webpackChunkName: "home" */ '@/views/user/ChangePwd'),
  43. meta: {
  44. title: '修改密码',
  45. icon: 'home'
  46. },
  47. hidden: true
  48. },
  49. // 销售管理
  50. {
  51. path: '/sales',
  52. redirect: '/sales/salesList',
  53. component: PageView,
  54. meta: {
  55. title: '销售管理',
  56. icon: 'lock',
  57. permission: 'M_auth_0'
  58. },
  59. children: [{
  60. path: 'salesList',
  61. name: 'salesList',
  62. hideChildrenInMenu: true,
  63. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/salesList.vue'),
  64. meta: {
  65. title: '销售单查询',
  66. icon: 'user'
  67. // permission: 'M_sales_List'
  68. },
  69. children: [
  70. {
  71. path: '/sales/newSales',
  72. name: 'newSales',
  73. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/newSales.vue'),
  74. meta: {
  75. title: '新建销售单',
  76. icon: 'solution'
  77. // permission: 'M_sales_newSales'
  78. }
  79. },
  80. {
  81. path: '/sales/editSales',
  82. name: 'editSales',
  83. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/newSales.vue'),
  84. meta: {
  85. title: '修改销售单',
  86. icon: 'solution'
  87. // permission: 'M_sales_editSales'
  88. }
  89. }
  90. ]
  91. },
  92. {
  93. path: 'stockOutList',
  94. name: 'stockOutList',
  95. hideChildrenInMenu: true,
  96. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/stockOutList.vue'),
  97. meta: {
  98. title: '出库',
  99. icon: 'solution'
  100. // permission: 'M_stockOut_list'
  101. },
  102. children: [
  103. {
  104. path: '/stockOutDetail',
  105. name: 'stockOutDetail',
  106. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/stockOutDetail.vue'),
  107. meta: {
  108. title: '出库明细',
  109. icon: 'solution'
  110. // permission: 'M_stockOut_detail'
  111. }
  112. }
  113. ]
  114. },
  115. {
  116. path: 'dispatchList',
  117. name: 'dispatchList',
  118. hideChildrenInMenu: true,
  119. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/dispatchList.vue'),
  120. meta: {
  121. title: '急件冲减',
  122. icon: 'solution'
  123. // permission: 'M_dispatch_list'
  124. },
  125. children: [
  126. {
  127. path: '/dispatchDetail',
  128. name: 'dispatchDetail',
  129. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/dispatchDetail.vue'),
  130. meta: {
  131. title: '急件明细',
  132. icon: 'solution'
  133. // permission: 'M_sdispatch_detail'
  134. }
  135. }
  136. ]
  137. },
  138. {
  139. path: 'returnedList',
  140. name: 'returnedList',
  141. hideChildrenInMenu: true,
  142. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/returnedList.vue'),
  143. meta: {
  144. title: '销售退货',
  145. icon: 'solution'
  146. // permission: 'M_returned_list'
  147. },
  148. children: [
  149. {
  150. path: '/sales/newReturned',
  151. name: 'newReturned',
  152. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/newReturned.vue'),
  153. meta: {
  154. title: '新建退货单',
  155. icon: 'solution'
  156. // permission: 'M_newReturned'
  157. }
  158. },
  159. {
  160. path: '/sales/newReturned',
  161. name: 'editReturned',
  162. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/newReturned.vue'),
  163. meta: {
  164. title: '修改退货单',
  165. icon: 'solution'
  166. // permission: 'M_editReturned'
  167. }
  168. },
  169. {
  170. path: '/returnedDetail',
  171. name: 'returnedDetail',
  172. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/returnedDetail.vue'),
  173. meta: {
  174. title: '退货单详情',
  175. icon: 'solution'
  176. // permission: 'M_sdispatch_detail'
  177. }
  178. }
  179. ]
  180. },
  181. {
  182. path: 'customerList',
  183. name: 'customerList',
  184. component: () => import(/* webpackChunkName: "sales" */ '@/views/sales/customerList.vue'),
  185. meta: {
  186. title: '客户管理',
  187. icon: 'solution'
  188. // permission: 'M_customer_list'
  189. }
  190. }
  191. ]
  192. },
  193. // 库存管理
  194. {
  195. path: '/inventoryManagement',
  196. redirect: '/inventoryManagement/inventoryQuery',
  197. component: PageView,
  198. meta: {
  199. title: '库存管理s',
  200. icon: 'shop'
  201. // permission: 'M_shop'
  202. },
  203. children: [
  204. {
  205. path: '/inventoryManagement/inventoryQuery',
  206. redirect: '/inventoryManagement/inventoryQuery/list',
  207. name: 'inventoryQuery',
  208. component: RouteView,
  209. meta: {
  210. title: '库存查询',
  211. icon: 'shopping'
  212. // permission: 'M_goodsManage_list'
  213. },
  214. hideChildrenInMenu: true,
  215. children: [
  216. {
  217. path: '/inventoryManagement/inventoryQuery/list',
  218. name: 'inventoryQueryList',
  219. component: () => import(/* webpackChunkName: "shop" */ '@/views/inventoryManagement/inventoryQuery/list.vue'),
  220. meta: {
  221. title: '库存列表',
  222. icon: 'shopping',
  223. hidden: true
  224. // permission: 'M_goodsManage_list'
  225. }
  226. },
  227. {
  228. path: '/inventoryManagement/inventoryQuery/warehouseDetail',
  229. name: 'inventoryQueryWarehouseDetail',
  230. component: () => import(/* webpackChunkName: "shop" */ '@/views/inventoryManagement/inventoryQuery/warehouseDetail.vue'),
  231. meta: {
  232. title: '出入库明细',
  233. icon: 'shopping',
  234. hidden: true
  235. // permission: 'B_goodsManage_edit'
  236. }
  237. }
  238. ]
  239. }
  240. // {
  241. // path: '/shop/goodsShelves',
  242. // name: 'goodsShelves',
  243. // component: () => import(/* webpackChunkName: "shop" */ '@/views/shop/goodsShelves.vue'),
  244. // meta: {
  245. // title: '商品排序',
  246. // icon: 'flag',
  247. // // permission: 'M_goodsShelves_0'
  248. // }
  249. // }
  250. ]
  251. },
  252. {
  253. path: '/inventory',
  254. redirect: '/inventory/list',
  255. component: PageView,
  256. meta: {
  257. title: '库存管理',
  258. icon: 'lock'
  259. // permission: 'M_inventory_0'
  260. },
  261. children: [
  262. {
  263. path: 'list',
  264. name: 'inventoryList',
  265. hideChildrenInMenu: true,
  266. component: () => import(/* webpackChunkName: "inventory" */ '@/views/inventory/inventoryList.vue'),
  267. meta: {
  268. title: '库存查询',
  269. icon: 'user'
  270. // permission: 'M_inventoryList'
  271. },
  272. children: [
  273. {
  274. path: '/outPutDetail',
  275. name: 'outPutDetail',
  276. component: () => import(/* webpackChunkName: "inventory" */ '@/views/inventory/outPutDetail.vue'),
  277. meta: {
  278. title: '出入库明细',
  279. icon: 'solution'
  280. // permission: 'M_outPutDetail'
  281. }
  282. }
  283. ]
  284. },
  285. {
  286. path: 'warehouseList',
  287. name: 'warehouseList',
  288. hideChildrenInMenu: true,
  289. component: () => import(/* webpackChunkName: "inventory" */ '@/views/inventory/warehouseList.vue'),
  290. meta: {
  291. title: '仓库管理',
  292. icon: 'user'
  293. // permission: 'M_warehouseList'
  294. }
  295. },
  296. {
  297. path: 'warning',
  298. name: 'inventoryWarning',
  299. hideChildrenInMenu: true,
  300. component: () => import(/* webpackChunkName: "inventory" */ '@/views/inventory/inventoryWarning.vue'),
  301. meta: {
  302. title: '库存预警',
  303. icon: 'user'
  304. // permission: 'M_inventoryWarning'
  305. }
  306. },
  307. {
  308. path: 'satelliteStorage',
  309. name: 'satelliteStorage',
  310. hideChildrenInMenu: true,
  311. component: () => import(/* webpackChunkName: "inventory" */ '@/views/inventory/satelliteStorage.vue'),
  312. meta: {
  313. title: '卫星仓库存',
  314. icon: 'user'
  315. // permission: 'M_satelliteStorage'
  316. }
  317. }
  318. ]
  319. },
  320. // 采购管理
  321. // 散件管理
  322. // 产品管理
  323. // 基础资料
  324. // 财务管理
  325. // auth
  326. {
  327. path: '/auth',
  328. redirect: '/auth/userList',
  329. component: PageView,
  330. meta: {
  331. title: '权限管理',
  332. icon: 'lock',
  333. permission: 'M_auth_0'
  334. },
  335. children: [{
  336. path: '/auth/userList',
  337. name: 'powerUserList',
  338. component: () => import(/* webpackChunkName: "auth" */ '@/views/power/user/userList.vue'),
  339. meta: {
  340. title: '用户管理',
  341. icon: 'user',
  342. permission: 'M_auth_userList'
  343. }
  344. },
  345. {
  346. path: '/auth/roleList',
  347. name: 'powerRoleList',
  348. component: () => import(/* webpackChunkName: "auth" */ '@/views/power/role/roleList.vue'),
  349. meta: {
  350. title: '角色管理',
  351. icon: 'solution',
  352. permission: 'M_auth_roleList'
  353. }
  354. }
  355. ]
  356. },
  357. {
  358. path: '/setting',
  359. redirect: '/setting/userList',
  360. component: PageView,
  361. meta: {
  362. title: '系统设置',
  363. icon: 'setting',
  364. permission: 'M_setting_0'
  365. },
  366. children: [{
  367. path: '/setting/dataDictionary',
  368. name: 'powerDD',
  369. component: () => import(/* webpackChunkName: "setting" */
  370. '@/views/power/dataDictionary/dataDictionary.vue'),
  371. meta: {
  372. title: '数据字典管理',
  373. icon: 'database',
  374. permission: 'M_sys_dataDictionary'
  375. }
  376. },
  377. {
  378. path: '/setting/register',
  379. name: 'powerRegister',
  380. component: () => import(/* webpackChunkName: "setting" */ '@/views/power/register/register.vue'),
  381. meta: {
  382. title: '参数管理',
  383. icon: 'key',
  384. permission: 'M_sys_register'
  385. }
  386. },
  387. {
  388. path: '/setting/OperateJournal',
  389. name: 'powerOperateJournal',
  390. component: () => import(/* webpackChunkName: "setting" */
  391. '@/views/power/OperateJournal/OperateJournal.vue'),
  392. meta: {
  393. title: '操作日志',
  394. icon: 'read',
  395. permission: 'M_operateJournal'
  396. }
  397. }
  398. ]
  399. }
  400. ]
  401. },
  402. {
  403. path: '*',
  404. redirect: '/404',
  405. hidden: true
  406. }
  407. ]
  408. /**
  409. * 基础路由
  410. * @type { *[] }
  411. */
  412. export const constantRouterMap = [{
  413. path: '/user',
  414. component: UserLayout,
  415. redirect: '/user/login',
  416. hidden: true,
  417. children: [{
  418. path: 'login',
  419. name: 'login',
  420. component: () => import(/* webpackChunkName: "user" */ '@/views/user/Login')
  421. },
  422. {
  423. path: 'register',
  424. name: 'register',
  425. component: () => import(/* webpackChunkName: "user" */ '@/views/user/Register')
  426. },
  427. {
  428. path: 'register-result',
  429. name: 'registerResult',
  430. component: () => import(/* webpackChunkName: "user" */ '@/views/user/RegisterResult')
  431. },
  432. {
  433. path: 'recover',
  434. name: 'recover',
  435. component: undefined
  436. }
  437. ]
  438. },
  439. {
  440. path: '/404',
  441. component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/404')
  442. }
  443. ]