router.config.js 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285
  1. // eslint-disable-next-line
  2. import {
  3. UserLayout,
  4. BasicLayout,
  5. RouteView,
  6. PageView
  7. } from '@/layouts'
  8. export const asyncRouterMap = [{
  9. path: '/',
  10. name: 'index',
  11. component: BasicLayout,
  12. meta: {
  13. title: '运营后台'
  14. },
  15. redirect: '/home',
  16. children: [{
  17. path: '/home',
  18. name: 'home',
  19. redirect: '/home',
  20. component: PageView,
  21. meta: {
  22. title: '首页',
  23. icon: 'home'
  24. },
  25. hideChildrenInMenu: true,
  26. children: [{
  27. path: '/home',
  28. name: 'home',
  29. component: () => import(/* webpackChunkName: "home" */ '@/views/Home'),
  30. meta: {
  31. title: '首页',
  32. icon: 'home',
  33. hiddenHeaderContent: true
  34. }
  35. }
  36. ]
  37. },
  38. {
  39. path: '/changePwd',
  40. name: 'changePwd',
  41. hidden: true,
  42. component: () => import(/* webpackChunkName: "changePwd" */ '@/views/user/ChangePwd'),
  43. meta: {
  44. title: '修改密码',
  45. icon: 'home'
  46. }
  47. },
  48. {
  49. path: '/shop',
  50. redirect: '/shop/order',
  51. component: PageView,
  52. meta: {
  53. title: '商城',
  54. icon: 'shop'
  55. // permission: 'M_tenants_list'
  56. },
  57. children: [
  58. {
  59. path: '/shop/order',
  60. name: 'shopOrder',
  61. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  62. meta: {
  63. title: '订单管理',
  64. icon: 'profile'
  65. // permission: 'M_tenants_list'
  66. }
  67. },
  68. {
  69. path: '/shop/orderDetail',
  70. name: 'shopOrderDetail',
  71. hidden: true,
  72. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  73. meta: {
  74. title: '订单详情',
  75. icon: 'profile'
  76. // permission: 'M_tenants_list'
  77. }
  78. },
  79. {
  80. path: '/shop/goods',
  81. name: 'goodsList',
  82. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  83. meta: {
  84. title: '商品管理',
  85. icon: 'shopping'
  86. // permission: 'M_tenants_list'
  87. }
  88. },
  89. {
  90. path: '/shop/goodsShelves',
  91. name: 'goodsShelves',
  92. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  93. meta: {
  94. title: '商品上架',
  95. icon: 'flag'
  96. // permission: 'M_tenants_list'
  97. }
  98. },
  99. {
  100. path: '/shop/bannerSetting',
  101. name: 'bannerSetting',
  102. component: () => import(/* webpackChunkName: "appSetting" */ '@/views/appSetting/bannerSetting.vue'),
  103. meta: {
  104. title: '营销图设置',
  105. icon: 'file-image'
  106. // permission: 'M_banner'
  107. }
  108. }
  109. ]
  110. },
  111. {
  112. path: '/shopSetting',
  113. redirect: '/shopSetting/bannerSetting',
  114. component: PageView,
  115. meta: {
  116. title: '商城设置',
  117. icon: 'appstore'
  118. // permission: 'M_appSetting'
  119. },
  120. children: [
  121. {
  122. path: '/shopSetting/goodsClass',
  123. name: 'goodsClass',
  124. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  125. meta: {
  126. title: '商品分类管理',
  127. icon: 'folder'
  128. // permission: 'M_tenants_list'
  129. }
  130. },
  131. {
  132. path: '/shopSetting/supplier',
  133. name: 'supplier',
  134. component: () => import(/* webpackChunkName: "tenants" */ '@/views/shop/shopOrder.vue'),
  135. meta: {
  136. title: '供货商管理',
  137. icon: 'solution'
  138. // permission: 'M_tenants_list'
  139. }
  140. }
  141. ]
  142. },
  143. // auth
  144. {
  145. path: '/auth',
  146. redirect: '/auth/userList',
  147. component: PageView,
  148. meta: {
  149. title: '权限管理',
  150. icon: 'lock'
  151. // permission: 'M_auth_0'
  152. },
  153. children: [
  154. {
  155. path: '/menusAuth/menu',
  156. name: 'powerMenu',
  157. component: () => import(/* webpackChunkName: "auth" */ '@/views/power/menu/menu.vue'),
  158. meta: {
  159. title: '菜单管理',
  160. icon: 'profile'
  161. // permission: 'M_menusAuth_menu'
  162. }
  163. },
  164. {
  165. path: '/auth/userList',
  166. name: 'powerUserList',
  167. component: () => import(/* webpackChunkName: "auth" */ '@/views/power/user/userList.vue'),
  168. meta: {
  169. title: '用户管理',
  170. icon: 'user'
  171. // permission: 'M_auth_userList'
  172. }
  173. },
  174. {
  175. path: '/auth/roleList',
  176. name: 'powerRoleList',
  177. component: () => import(/* webpackChunkName: "auth" */ '@/views/power/role/roleList.vue'),
  178. meta: {
  179. title: '角色管理',
  180. icon: 'solution'
  181. // permission: 'M_auth_roleList'
  182. }
  183. }
  184. ]
  185. },
  186. {
  187. path: '/setting',
  188. redirect: '/setting/userList',
  189. component: PageView,
  190. meta: {
  191. title: '系统设置',
  192. icon: 'setting'
  193. // permission: 'M_setting_0'
  194. },
  195. children: [{
  196. path: '/setting/dataDictionary',
  197. name: 'powerDD',
  198. component: () => import(/* webpackChunkName: "setting" */
  199. '@/views/power/dataDictionary/dataDictionary.vue'),
  200. meta: {
  201. title: '数据字典管理',
  202. icon: 'database'
  203. // permission: 'M_sys_dataDictionary'
  204. }
  205. },
  206. // {
  207. // path: '/setting/register',
  208. // name: 'powerRegister',
  209. // component: () => import(/* webpackChunkName: "setting" */ '@/views/power/register/register.vue'),
  210. // meta: {
  211. // title: '参数管理',
  212. // icon: 'key'
  213. // // permission: 'M_sys_register'
  214. // }
  215. // },
  216. // {
  217. // path: '/setting/jobs',
  218. // name: 'powerJobs',
  219. // component: () => import(/* webpackChunkName: "setting" */ '@/views/power/job/jobs.vue'),
  220. // meta: {
  221. // title: '定时器',
  222. // icon: 'alert',
  223. // permission: 'M_sys_job'
  224. // }
  225. // },
  226. {
  227. path: '/setting/OperateJournal',
  228. name: 'powerOperateJournal',
  229. component: () => import(/* webpackChunkName: "setting" */
  230. '@/views/power/OperateJournal/OperateJournal.vue'),
  231. meta: {
  232. title: '操作日志',
  233. icon: 'read'
  234. // permission: 'M_operateJournal'
  235. }
  236. }
  237. ]
  238. }
  239. ]
  240. },
  241. {
  242. path: '*',
  243. redirect: '/404',
  244. hidden: true
  245. }
  246. ]
  247. /**
  248. * 基础路由
  249. * @type { *[] }
  250. */
  251. export const constantRouterMap = [{
  252. path: '/user',
  253. component: UserLayout,
  254. redirect: '/user/login',
  255. hidden: true,
  256. children: [{
  257. path: 'login',
  258. name: 'login',
  259. component: () => import(/* webpackChunkName: "user" */ '@/views/user/Login')
  260. },
  261. {
  262. path: 'register',
  263. name: 'register',
  264. component: () => import(/* webpackChunkName: "user" */ '@/views/user/Register')
  265. },
  266. {
  267. path: 'register-result',
  268. name: 'registerResult',
  269. component: () => import(/* webpackChunkName: "user" */ '@/views/user/RegisterResult')
  270. },
  271. {
  272. path: 'recover',
  273. name: 'recover',
  274. component: undefined
  275. }
  276. ]
  277. },
  278. {
  279. path: '/404',
  280. component: () => import(/* webpackChunkName: "fail" */ '@/views/exception/404')
  281. }
  282. ]