routes.ts 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307
  1. import settings from "@/config/settings";
  2. import { RoutesDataItem } from "@/utils/routes";
  3. import BlankLayout from '@/layouts/BlankLayout.vue';
  4. const IndexLayoutRoutes: Array<RoutesDataItem> = [
  5. {
  6. icon: 'alarmManage',
  7. title: 'index-layout.menu.alarmManage',
  8. path: '/alarmManage',
  9. component: () => import('@/views/alarmManage/index.vue')
  10. },
  11. {
  12. icon: 'siteManage',
  13. title: 'index-layout.menu.siteManage',
  14. path: '/siteManage',
  15. component: () => import('@/views/siteManage/index.vue')
  16. },
  17. {
  18. icon: 'stationManage',
  19. title: 'index-layout.menu.stationManage',
  20. path: '/stationManage',
  21. redirect: '/stationManage/index',
  22. component: BlankLayout,
  23. children: [
  24. {
  25. icon: 'stationManage',
  26. title: 'index-layout.menu.stationManage.EditArticle',
  27. path: 'siteList',
  28. component: () => import('@/views/stationManage/siteList.vue'),
  29. selectLeftMenu: '/stationManage',
  30. hidden: true
  31. },
  32. {
  33. icon: 'stationManage',
  34. title: 'index-layout.menu.stationManage.Articleindex',
  35. path: 'index',
  36. component: () => import('@/views/stationManage/index.vue'),
  37. selectLeftMenu: '/stationManage',
  38. hidden: true
  39. }
  40. ]
  41. },
  42. {
  43. icon: 'deviceManage',
  44. title: 'index-layout.menu.deviceManage',
  45. path: '/deviceManage',
  46. component: BlankLayout,
  47. redirect: '/deviceManage/powerEquip',
  48. children: [
  49. {
  50. title: 'index-layout.menu.deviceManage.powerEquip',
  51. path: 'powerEquip',
  52. component: () => import('@/views/deviceManage/powerEquip/index.vue'),
  53. },
  54. {
  55. title: 'index-layout.menu.deviceManage.videoEquip',
  56. path: 'videoEquip',
  57. component: () => import('@/views/deviceManage/videoEquip/index.vue'),
  58. },
  59. {
  60. title: 'index-layout.menu.deviceManage.communicateEquip',
  61. path: 'communicateEquip',
  62. component: () => import('@/views/deviceManage/communicateEquip/index.vue'),
  63. },
  64. {
  65. title: 'index-layout.menu.deviceManage.channelList',
  66. path: 'channelList',
  67. component: () => import('@/views/deviceManage/channelList/index.vue'),
  68. },
  69. {
  70. title: 'index-layout.menu.deviceManage.attribTemplate',
  71. path: 'attribTemplate',
  72. component: () => import('@/views/deviceManage/attribTemplate/index.vue'),
  73. }
  74. ]
  75. },
  76. {
  77. icon: 'dataManage',
  78. title: 'index-layout.menu.dataManage',
  79. path: '/dataManage',
  80. component: BlankLayout,
  81. redirect: '/dataManage/sameAnalysis',
  82. children: [
  83. {
  84. title: 'index-layout.menu.dataManage.sameAnalysis',
  85. path: 'sameAnalysis',
  86. component: () => import('@/views/dataManage/sameAnalysis/index.vue'),
  87. },
  88. {
  89. title: 'index-layout.menu.dataManage.chainAnalysis',
  90. path: 'chainAnalysis',
  91. component: () => import('@/views/dataManage/chainAnalysis/index.vue'),
  92. },
  93. {
  94. title: 'index-layout.menu.dataManage.handOpera',
  95. path: 'handOpera',
  96. component: () => import('@/views/dataManage/handOpera/index.vue'),
  97. },
  98. {
  99. title: 'index-layout.menu.dataManage.energyReport',
  100. path: 'energyReport',
  101. component: () => import('@/views/dataManage/energyReport/index.vue'),
  102. },
  103. {
  104. title: 'index-layout.menu.dataManage.demandAnalysis',
  105. path: 'demandAnalysis',
  106. component: () => import('@/views/dataManage/demandAnalysis/index.vue'),
  107. },
  108. {
  109. title: 'index-layout.menu.dataManage.consumConfig',
  110. path: 'consumConfig',
  111. component: () =>
  112. import('@/views/dataManage/consumConfig/index.vue'),
  113. }
  114. ]
  115. },
  116. {
  117. title: '电能质量',
  118. icon: 'powerQuality',
  119. path: '/powerQuality',
  120. component: BlankLayout,
  121. redirect: '/powerQuality/harmonicReport',
  122. children: [
  123. {
  124. title: '谐波报表',
  125. path: 'harmonicReport',
  126. component: () => import('@/views/powerQuality/harmonicReport/index.vue'),
  127. },
  128. {
  129. title: '实时监测',
  130. path: 'realTimeMonitoring',
  131. name: 'realTimeMonitoring',
  132. component: () => import('@/views/powerQuality/realTimeMonitoring/index.vue'),
  133. },
  134. {
  135. title: '评估报告',
  136. path: 'asseReport',
  137. name: 'asseReport',
  138. component: () => import('@/views/powerQuality/asseReport/index.vue'),
  139. },
  140. {
  141. title: '三相不平衡分析',
  142. path: 'unbalanceAnalysis',
  143. name: 'unbalanceAnalysis',
  144. component: () => import('@/views/powerQuality/unbalanceAnalysis/index.vue'),
  145. },
  146. ]
  147. },
  148. {
  149. icon: 'monthReport',
  150. title: '月度报告',
  151. path: '/monthReport',
  152. component: () => import('@/views/monthReport/index.vue'),
  153. },
  154. {
  155. icon: 'planOutage',
  156. title: '计划停电',
  157. path: '/planOutage',
  158. component: () => import('@/views/planOutage/index.vue'),
  159. },
  160. {
  161. title: '巡检管理',
  162. icon: 'patrolManage',
  163. path: '/patrolManage',
  164. component: BlankLayout,
  165. redirect: '/patrolManage/patrolPlan',
  166. name: 'patrolManage',
  167. children: [
  168. {
  169. title: '巡检计划',
  170. path: 'patrolPlan',
  171. name: 'patrolPlan',
  172. component: () => import('@/views/patrolManage/patrolPlan/index.vue'),
  173. },
  174. {
  175. title: '巡检记录',
  176. path: 'patrolRecord',
  177. name: 'patrolRecord',
  178. component: () => import('@/views/patrolManage/patrolRecord/index.vue'),
  179. },
  180. {
  181. title: '巡检内容',
  182. path: 'patrolContent',
  183. name: 'patrolContent',
  184. component: () => import('@/views/patrolManage/patrolContent/index.vue'),
  185. },
  186. {
  187. title: '检查条目',
  188. path: 'checkEntries',
  189. name: 'checkEntries',
  190. component: () => import('@/views/patrolManage/checkEntries/index.vue'),
  191. },
  192. ]
  193. },
  194. {
  195. title: '运维管理',
  196. icon: 'operManage',
  197. path: '/operManage',
  198. component: BlankLayout,
  199. redirect: '/operManage/siteAchives',
  200. name: 'operManage',
  201. children: [
  202. {
  203. title: '现场档案',
  204. path: 'siteAchives',
  205. name: 'siteAchives',
  206. component: () => import('@/views/operManage/siteAchives/index.vue'),
  207. },
  208. {
  209. title: '缺陷管理',
  210. path: 'defectManage',
  211. name: 'defectManage',
  212. component: () =>
  213. import('@/views/operManage/defectManage/index.vue'),
  214. },
  215. {
  216. title: '工单管理',
  217. path: 'workManage',
  218. name: 'workManage',
  219. component: () =>
  220. import('@/views/operManage/workManage/index.vue'),
  221. },
  222. {
  223. title: '运维统计',
  224. path: 'operStatistics',
  225. name: 'operStatistics',
  226. component: () => import('@/views/operManage/operStatistics/index.vue'),
  227. },
  228. {
  229. title: '工作量统计',
  230. path: 'workStatistics',
  231. name: 'workStatistics',
  232. component: () => import('@/views/operManage/workStatistics/index.vue'),
  233. },
  234. ]
  235. },
  236. {
  237. title: '系统管理',
  238. icon: 'systemManage',
  239. path: '/systemManage',
  240. component: BlankLayout,
  241. redirect: '/systemManage/userManage',
  242. name: 'systemManage',
  243. children: [
  244. {
  245. title: '用户管理',
  246. path: 'userManage',
  247. name: 'userManage',
  248. component: () => import('@/views/systemManage/userManage/index.vue'),
  249. },
  250. {
  251. title: '权限管理',
  252. path: 'rolePermission',
  253. name: 'rolePermission',
  254. component: () => import('@/views/systemManage/rolePermission/index.vue'),
  255. },
  256. ]
  257. },
  258. {
  259. icon: 'permissions',
  260. title: 'index-layout.menu.roles',
  261. path: '/roles',
  262. redirect: '/roles/all',
  263. component: BlankLayout,
  264. children: [
  265. {
  266. icon: 'detail',
  267. title: 'index-layout.menu.roles.all',
  268. path: 'all',
  269. component: () => import('@/views/roles/all/index.vue'),
  270. },
  271. {
  272. icon: 'detail',
  273. roles: ['user'],
  274. title: 'index-layout.menu.roles.user',
  275. path: 'user',
  276. component: () => import('@/views/roles/user/index.vue'),
  277. },
  278. {
  279. icon: 'detail',
  280. roles: ['test'],
  281. title: 'index-layout.menu.roles.test',
  282. path: 'test',
  283. component: () => import('@/views/roles/test/index.vue'),
  284. },
  285. ],
  286. },
  287. ];
  288. export default IndexLayoutRoutes;