1
0

index.js 38 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294
  1. import { createRouter, createWebHashHistory } from "vue-router";
  2. export const constantRoutes = [
  3. {
  4. path: "/login",
  5. name: "Login",
  6. component: () =>
  7. import(/* webpackChunkName: "Login" */ "../views/layout/login-page.vue"),
  8. },
  9. ];
  10. export const asyncRoutes = [
  11. { path: "/", redirect: "/home" },
  12. {
  13. path: "/home", // 驾驶舱
  14. name: "home",
  15. component: () => import("@/views/Home"),
  16. meta: {
  17. title: "首页",
  18. icon: "",
  19. permissions: ["jn_sy"],
  20. },
  21. },
  22. // {
  23. // path: "/monitor/status", // 状态监视
  24. // name: "Status",
  25. // component: () =>
  26. // import(
  27. // /* webpackChunkName: "status" */ "@/views/stateMonitor/Status/Status.vue"
  28. // ),
  29. // },
  30. // {
  31. // path: "/monitor/agc", // AGC 监视
  32. // name: "Agc",
  33. // component: () =>
  34. // import(/* webpackChunkName: "agc" */ "@/views/stateMonitor/Agc/Agc.vue"),
  35. // },
  36. //全景监视
  37. {
  38. path: "/stateMonitor",
  39. redirect: "/stateMonitor/lightmatrix",
  40. component: () => import("@/views/stateMonitor"),
  41. name: "stateMonitor",
  42. meta: {
  43. title: "全景监视",
  44. icon: "",
  45. permissions: ["jn_stateMonitor"],
  46. },
  47. children: [
  48. {
  49. path: "lightmatrix", // 基础矩阵
  50. name: "LightMatrix",
  51. component: () => import("@/views/stateMonitor/LightMatrix"),
  52. meta: {
  53. title: "基础矩阵",
  54. icon: "svg-matrix",
  55. permissions: ["jn_jcjz"],
  56. },
  57. },
  58. {
  59. path: "detailmatrix", // 明细矩阵
  60. name: "DetailMatrix",
  61. component: () => import("@/views/stateMonitor/DetailMatrix"),
  62. meta: {
  63. title: "明细矩阵",
  64. icon: "svg-mx-matrix",
  65. permissions: ["jn_mxjz"],
  66. },
  67. },
  68. {
  69. path: "syzmatrix", // 升压站矩阵
  70. name: "SYZMatrix",
  71. component: () => import("@/views/stateMonitor/focus/syzDetails.vue"),
  72. meta: {
  73. title: "升压站矩阵",
  74. icon: "svg-syz",
  75. permissions: ["jn_syzjz"],
  76. },
  77. },
  78. {
  79. path: "powerPredictMatrix", // 功率预测矩阵
  80. name: "PowerPredictMatrix",
  81. component: () => import("@/views/stateMonitor/powerPredictMatrix"),
  82. meta: {
  83. title: "功率预测",
  84. icon: "svg-power-predict",
  85. permissions: ["jn_glyc"],
  86. },
  87. },
  88. {
  89. path: "zhzb", // 综合指标统计
  90. name: "zhzb",
  91. component: () =>
  92. import(
  93. /* webpackChunkName: "status" */ "@/views/stateMonitor/zhzb/zhzb.vue"
  94. ),
  95. meta: {
  96. title: "综合指标",
  97. icon: "svg-自定制报表管理",
  98. permissions: ["jn_zhzb"],
  99. },
  100. },
  101. {
  102. path: "factoryMonitor",
  103. redirect: "factoryMonitor/windPowerPlant",
  104. component: () => import("@/views/stateMonitor/factoryMonitor"),
  105. name: "factoryMonitor",
  106. meta: {
  107. title: "厂站监视",
  108. icon: "svg-single-station-surveillance",
  109. permissions: ["jn_czjs"],
  110. },
  111. children: [
  112. {
  113. path: "windPowerPlant",
  114. redirect: { name: "windhome" },
  115. component: () =>
  116. import("@/views/stateMonitor/factoryMonitor/windPowerPlant"),
  117. name: "windPowerPlant",
  118. meta: {
  119. title: "风电场站",
  120. icon: "",
  121. permissions: ["jn_fdcz"],
  122. },
  123. children: [
  124. {
  125. path: "windhome",
  126. component: () =>
  127. import(
  128. "@/views/stateMonitor/factoryMonitor/windPowerPlant/windhome"
  129. ),
  130. name: "windhome",
  131. meta: {
  132. title: "场站监视",
  133. icon: "svg-station-surveillance",
  134. permissions: ["jn_fdcz_czjs"],
  135. },
  136. },
  137. {
  138. path: "DataTarget",
  139. component: () =>
  140. import(
  141. "@/views/stateMonitor/factoryMonitor/windPowerPlant/DataTarget"
  142. ),
  143. name: "DataTarget",
  144. meta: {
  145. title: "数据指标",
  146. icon: "svg-s指标列表",
  147. permissions: ["jn_fdcz_sjzb"],
  148. },
  149. },
  150. {
  151. path: "matrixMonitor",
  152. component: () =>
  153. import(
  154. "@/views/stateMonitor/factoryMonitor/windPowerPlant/matrixMonitor"
  155. ),
  156. name: "matrixMonitor",
  157. meta: {
  158. title: "矩阵监视",
  159. icon: "svg-matrix",
  160. permissions: ["jn_fdcz_jzjs"],
  161. },
  162. },
  163. {
  164. path: "draughtFan",
  165. component: () =>
  166. import(
  167. "@/views/stateMonitor/factoryMonitor/windPowerPlant/draughtFan"
  168. ),
  169. name: "draughtFan",
  170. meta: {
  171. title: "风机设备",
  172. icon: "svg-wind-site",
  173. permissions: ["jn_fdcz_fjsb"],
  174. },
  175. },
  176. {
  177. path: "boosterStation",
  178. component: () =>
  179. import(
  180. "@/views/stateMonitor/factoryMonitor/windPowerPlant/boosterStation"
  181. ),
  182. name: "boosterStation",
  183. meta: {
  184. title: "升压站",
  185. icon: "svg-s升压站",
  186. permissions: ["jn_fdcz_syz"],
  187. },
  188. },
  189. {
  190. path: "windPower",
  191. component: () =>
  192. import(
  193. "@/views/stateMonitor/factoryMonitor/windPowerPlant/windPower"
  194. ),
  195. name: "windPower",
  196. meta: {
  197. title: "测风塔",
  198. permissions: ["jn_fdcz_cft"],
  199. icon: "svg-s测风塔",
  200. },
  201. },
  202. {
  203. path: "geomorphologicMap",
  204. component: () =>
  205. import(
  206. "@/views/stateMonitor/factoryMonitor/windPowerPlant/geomorphologicMap"
  207. ),
  208. name: "geomorphologicMap",
  209. meta: {
  210. title: "地貌图",
  211. permissions: ["jn_fdcz_dmt"],
  212. icon: "svg-s地图",
  213. },
  214. },
  215. ],
  216. },
  217. {
  218. path: "photovoltaic",
  219. redirect: { name: "lighthome" },
  220. component: () =>
  221. import("@/views/stateMonitor/factoryMonitor/photovoltaic"),
  222. name: "photovoltaic",
  223. meta: {
  224. title: "光伏场站",
  225. icon: "",
  226. permissions: ["jn_gfcz"],
  227. },
  228. children: [
  229. {
  230. path: "lighthome",
  231. component: () =>
  232. import(
  233. "@/views/stateMonitor/factoryMonitor/photovoltaic/lighthome"
  234. ),
  235. name: "lighthome",
  236. meta: {
  237. title: "场站监视",
  238. icon: "svg-station-surveillance",
  239. permissions: ["jn_gfcz_czjs"],
  240. },
  241. },
  242. {
  243. path: "lightDataTarget",
  244. component: () =>
  245. import(
  246. "@/views/stateMonitor/factoryMonitor/photovoltaic/lightDataTarget"
  247. ),
  248. name: "lightDataTarget",
  249. meta: {
  250. title: "数据指标",
  251. permissions: ["jn_gfcz_sjzb"],
  252. icon: "svg-s指标列表",
  253. },
  254. },
  255. {
  256. path: "lightMatrixMonitor",
  257. component: () =>
  258. import(
  259. "@/views/stateMonitor/factoryMonitor/photovoltaic/lightMatrixMonitor"
  260. ),
  261. name: "lightMatrixMonitor",
  262. meta: {
  263. title: "矩阵监视",
  264. permissions: ["jn_gfcz_jzjs"],
  265. icon: "svg-matrix",
  266. },
  267. },
  268. {
  269. path: "lightMatrix",
  270. component: () =>
  271. import(
  272. "@/views/stateMonitor/factoryMonitor/photovoltaic/lightMatrix"
  273. ),
  274. name: "lightMatrix",
  275. meta: {
  276. title: "分类矩阵",
  277. permissions: ["jn_gfcz_fljz"],
  278. icon: "svg-fljz",
  279. },
  280. },
  281. {
  282. path: "photovoltaicFacility",
  283. component: () =>
  284. import(
  285. "@/views/stateMonitor/factoryMonitor/photovoltaic/photovoltaicFacility"
  286. ),
  287. name: "photovoltaicFacility",
  288. meta: {
  289. title: "光伏设备",
  290. permissions: ["jn_gfcz_gfsb"],
  291. icon: "svg-photovoltaic",
  292. },
  293. },
  294. {
  295. path: "lightBoosterStation",
  296. component: () =>
  297. import(
  298. "@/views/stateMonitor/factoryMonitor/photovoltaic/lightBoosterStation"
  299. ),
  300. name: "lightBoosterStation",
  301. meta: {
  302. title: "升压站",
  303. permissions: ["jn_gfcz_syz"],
  304. icon: "svg-s升压站",
  305. },
  306. },
  307. {
  308. path: "lightGeomorphologicMap",
  309. component: () =>
  310. import(
  311. "@/views/stateMonitor/factoryMonitor/photovoltaic/lightGeomorphologicMap"
  312. ),
  313. name: "lightGeomorphologicMap",
  314. meta: {
  315. title: "地貌图",
  316. permissions: ["jn_gfcz_dmt"],
  317. icon: "svg-s地图",
  318. },
  319. },
  320. ],
  321. },
  322. ],
  323. },
  324. {
  325. path: "alarmCenter", // 报警列表
  326. name: "alarmCenter",
  327. component: () => import("@/views/stateMonitor/alarmCenter/commonAlarm"),
  328. meta: {
  329. title: "报警列表",
  330. icon: "svg-alarm-center",
  331. permissions: ["jn_alarm"],
  332. },
  333. },
  334. /*{
  335. path: "agcmatrix", // AGC矩阵
  336. name: "AGCMatrix",
  337. component: () => import("@/views/stateMonitor/focus/agcDetails"),
  338. meta: {
  339. title: "AGC矩阵",
  340. icon: "svg-mx-matrix",
  341. permissions: ["jn_mxjz"],
  342. },
  343. }*/
  344. ],
  345. },
  346. // 经济运行
  347. {
  348. path: "/economicsOperation",
  349. redirect:
  350. "/economicsOperation/benchmarkingManagement/performanceRankingList",
  351. component: () =>
  352. import("@/views/economicsOperation/benchmarkingManagement"),
  353. name: "economicsOperation",
  354. meta: {
  355. title: "经济运行",
  356. icon: "",
  357. permissions: ["jn_economicsOperation"],
  358. },
  359. children: [
  360. // {
  361. // path: "homePage",
  362. // component: () => import("@/views/economicsOperation/homePage"),
  363. // name: "homePage",
  364. // meta: {
  365. // title: "首页",
  366. // icon: "icon-Simple-matrix",
  367. // },
  368. // },
  369. //对标管理
  370. {
  371. path: "benchmarkingManagement",
  372. redirect: "benchmarkingManagement/performanceRankingList",
  373. component: () =>
  374. import("@/views/economicsOperation/benchmarkingManagement"),
  375. name: "benchmarkingManagement",
  376. meta: {
  377. title: "对标管理",
  378. icon: "svg-dbgl",
  379. permissions: ["jn_dbgl"],
  380. },
  381. children: [
  382. {
  383. path: "performanceRankingList",
  384. component: () =>
  385. import(
  386. "@/views/economicsOperation/benchmarkingManagement/performanceRankingList/index.vue"
  387. ),
  388. name: "performanceRankingList",
  389. meta: {
  390. title: "风机绩效榜",
  391. icon: "",
  392. permissions: ["jn_dbgl_jxb"],
  393. },
  394. },
  395. {
  396. path: "decision1Mx", //风机绩效榜明细
  397. name: "decision1Mx",
  398. component: () =>
  399. import(
  400. "@/views/economicsOperation/benchmarkingManagement/performanceRankingList/decision1Mx.vue"
  401. ),
  402. meta: {
  403. title: "风机绩效榜明细",
  404. icon: "",
  405. permissions: ["jn_dbgl_jxb"],
  406. },
  407. },
  408. {
  409. path: "loseRate",
  410. component: () =>
  411. import(
  412. "@/views/economicsOperation/benchmarkingManagement/loseRate/index.vue"
  413. ),
  414. name: "loseRate",
  415. meta: {
  416. title: "五项损失率",
  417. icon: "",
  418. permissions: ["jn_dbgl_wxssl"],
  419. },
  420. },
  421. // {
  422. // path: "companyBenchmarking",
  423. // component: () =>
  424. // import(
  425. // "@/views/economicsOperation/benchmarkingManagement/companyBenchmarking"
  426. // ),
  427. // name: "companyBenchmarking",
  428. // meta: {
  429. // title: "公司对标",
  430. // icon: "",
  431. // permissions: ["jn_dbgl_gsdb"],
  432. // },
  433. // },
  434. {
  435. path: "siteBenchmarking",
  436. component: () =>
  437. import(
  438. "@/views/economicsOperation/benchmarkingManagement/siteBenchmarking"
  439. ),
  440. name: "siteBenchmarking",
  441. meta: {
  442. title: "场内对标",
  443. icon: "",
  444. permissions: ["jn_dbgl_cndb"],
  445. },
  446. },
  447. {
  448. path: "intervalBenchmarking",
  449. component: () =>
  450. import(
  451. "@/views/economicsOperation/benchmarkingManagement/intervalBenchmarking"
  452. ),
  453. name: "intervalBenchmarking",
  454. meta: {
  455. title: "场际对标",
  456. icon: "",
  457. permissions: ["jn_dbgl_cjdb"],
  458. },
  459. },
  460. // {
  461. // path: "valueBenchmarking",
  462. // component: () =>
  463. // import(
  464. // "@/views/economicsOperation/benchmarkingManagement/valueBenchmarking"
  465. // ),
  466. // name: "valueBenchmarking",
  467. // meta: {
  468. // title: "值际对标",
  469. // icon: "",
  470. // },
  471. // },
  472. {
  473. path: "projectBenchmarking",
  474. component: () =>
  475. import(
  476. "@/views/economicsOperation/benchmarkingManagement/projectBenchmarking"
  477. ),
  478. name: "projectBenchmarking",
  479. meta: {
  480. title: "项目对标",
  481. icon: "",
  482. permissions: ["jn_dbgl_xmdb"],
  483. },
  484. },
  485. {
  486. path: "wiringBenchmarking",
  487. component: () =>
  488. import(
  489. "@/views/economicsOperation/benchmarkingManagement/wiringBenchmarking"
  490. ),
  491. name: "wiringBenchmarking",
  492. meta: {
  493. title: "线路对标",
  494. icon: "",
  495. permissions: ["jn_dbgl_xldb"],
  496. },
  497. },
  498. // {
  499. // path: "singleMachineBenchmarking",
  500. // component: () =>
  501. // import(
  502. // "@/views/economicsOperation/benchmarkingManagement/singleMachineBenchmarking"
  503. // ),
  504. // name: "singleMachineBenchmarking",
  505. // meta: {
  506. // title: "单机对标",
  507. // icon: "",
  508. // },
  509. // },
  510. ],
  511. },
  512. //三率分析
  513. {
  514. path: "efficiency",
  515. redirect: "efficiency/restorationEfficiency",
  516. component: () => import("@/views/economicsOperation/efficiency"),
  517. name: "efficiency",
  518. meta: {
  519. title: "三率",
  520. icon: "svg-slgl",
  521. permissions: ["jn_slgl"],
  522. },
  523. children: [
  524. {
  525. path: "restorationEfficiency",
  526. component: () =>
  527. import(
  528. "@/views/economicsOperation/efficiency/restorationEfficiency"
  529. ),
  530. name: "restorationEfficiency",
  531. meta: {
  532. title: "复位及时率",
  533. icon: "",
  534. permissions: ["jn_slgl_fwjsl"],
  535. },
  536. },
  537. {
  538. path: "consumeEfficiency",
  539. component: () =>
  540. import("@/views/economicsOperation/efficiency/consumeEfficiency"),
  541. name: "consumeEfficiency",
  542. meta: {
  543. title: "消缺及时率",
  544. icon: "",
  545. permissions: ["jn_slgl_xqjsl"],
  546. },
  547. },
  548. {
  549. path: "stateEfficiency",
  550. component: () =>
  551. import("@/views/economicsOperation/efficiency/stateEfficiency"),
  552. name: "stateEfficiency",
  553. meta: {
  554. title: "状态转换率",
  555. icon: "",
  556. permissions: ["jn_slgl_ztzhl"],
  557. },
  558. },
  559. ],
  560. },
  561. //性能分析
  562. {
  563. path: "analyse",
  564. redirect: "analyse/standAloneAnalyse",
  565. component: () => import("@/views/economicsOperation/analyse"),
  566. name: "analyse",
  567. meta: {
  568. title: "性能分析",
  569. icon: "svg-dimension-new",
  570. permissions: ["jn_xnfx"],
  571. },
  572. children: [
  573. {
  574. path: "standAloneAnalyse",
  575. component: () =>
  576. import("@/views/economicsOperation/analyse/standAloneAnalyse"),
  577. name: "standAloneAnalyse",
  578. meta: {
  579. title: "单机性能分析",
  580. icon: "",
  581. permissions: ["jn_xnfx_djxnfx"],
  582. },
  583. },
  584. {
  585. path: "monthlyAnalysis",
  586. component: () =>
  587. import("@/views/economicsOperation/analyse/monthlyAnalysis"),
  588. name: "monthlyAnalysis",
  589. meta: {
  590. title: "单机月度分析",
  591. icon: "",
  592. permissions: ["jn_xnfx_djydfx"],
  593. },
  594. },
  595. ],
  596. },
  597. //性能评估
  598. {
  599. path: "performanceEvalute",
  600. component: () =>
  601. import("@/views/economicsOperation/performanceEvalute"),
  602. name: "performanceEvalute",
  603. meta: {
  604. title: "性能评估",
  605. icon: "svg-fjfx",
  606. permissions: ["jn_xndjpg"],
  607. },
  608. children: [
  609. {
  610. path: "performanceAssess",
  611. component: () =>
  612. import(
  613. "@/views/economicsOperation/performanceEvalute/performanceAssess"
  614. ),
  615. name: "performanceAssess",
  616. meta: {
  617. title: "风电性能等级评估",
  618. icon: "",
  619. permissions: ["jn_glqx_glqxnh"],
  620. },
  621. },
  622. {
  623. path: "performanceEvaluation",
  624. component: () =>
  625. import(
  626. "@/views/economicsOperation/performanceEvalute/performanceEvaluation"
  627. ),
  628. name: "performanceEvaluation",
  629. meta: {
  630. title: "光伏性能评价",
  631. icon: "",
  632. permissions: ["jn_glqx_qrqcfx"],
  633. },
  634. },
  635. ],
  636. },
  637. //功率曲线
  638. {
  639. path: "powerCurve",
  640. redirect: "powerCurve/powerLinefitting",
  641. component: () => import("@/views/economicsOperation/powerCurve"),
  642. name: "powerCurve",
  643. meta: {
  644. title: "功率曲线",
  645. icon: "svg-power-curve",
  646. permissions: ["jn_glqx"],
  647. },
  648. children: [
  649. {
  650. path: "powerLinefitting",
  651. component: () =>
  652. import("@/views/economicsOperation/powerCurve/powerLinefitting"),
  653. name: "powerLinefitting",
  654. meta: {
  655. title: "功率曲线查询",
  656. icon: "",
  657. permissions: ["jn_glqx_glqxnh"],
  658. },
  659. },
  660. {
  661. path: "cutInAndOutAnalysis",
  662. component: () =>
  663. import(
  664. "@/views/economicsOperation/powerCurve/cutInAndOutAnalysis"
  665. ),
  666. name: "cutInAndOutAnalysis",
  667. meta: {
  668. title: "切入切出分析",
  669. icon: "",
  670. permissions: ["jn_glqx_qrqcfx"],
  671. },
  672. },
  673. ],
  674. },
  675. //专题分析
  676. {
  677. path: "thematicAnalysis",
  678. redirect: "thematicAnalysis/comprehensiveAnalysis",
  679. component: () => import("@/views/economicsOperation/thematicAnalysis"),
  680. name: "thematicAnalysis",
  681. meta: {
  682. title: "专题分析",
  683. icon: "svg-ztfx",
  684. permissions: ["jn_ztfx"],
  685. },
  686. children: [
  687. {
  688. path: "comprehensiveAnalysis",
  689. component: () =>
  690. import(
  691. "@/views/economicsOperation/thematicAnalysis/comprehensiveAnalysis"
  692. ),
  693. name: "comprehensiveAnalysis",
  694. meta: {
  695. title: "综合分析",
  696. icon: "",
  697. permissions: ["jn_ztfx_zhfx"],
  698. },
  699. },
  700. {
  701. path: "windEnergy",
  702. component: () =>
  703. import("@/views/economicsOperation/thematicAnalysis/windEnergy"),
  704. name: "windEnergy",
  705. meta: {
  706. title: "风能利用率",
  707. icon: "",
  708. permissions: ["jn_ztfx_fnlyl"],
  709. },
  710. },
  711. {
  712. path: "failure",
  713. component: () =>
  714. import("@/views/economicsOperation/thematicAnalysis/failure"),
  715. name: "failure",
  716. meta: {
  717. title: "五项损失率",
  718. icon: "",
  719. permissions: ["jn_ztfx_wxssl"],
  720. },
  721. },
  722. {
  723. path: "reset",
  724. component: () =>
  725. import("@/views/economicsOperation/thematicAnalysis/reset"),
  726. name: "reset",
  727. meta: {
  728. title: "三率分析",
  729. icon: "",
  730. permissions: ["jn_ztfx_fwjsl"],
  731. },
  732. },
  733. {
  734. path: "MTBF",
  735. component: () =>
  736. import("@/views/economicsOperation/thematicAnalysis/MTBF"),
  737. name: "MTBF",
  738. meta: {
  739. title: "可靠性分析",
  740. icon: "",
  741. permissions: ["jn_ztfx_kkxfx"],
  742. },
  743. },
  744. {
  745. path: "generation",
  746. component: () =>
  747. import("@/views/economicsOperation/thematicAnalysis/generation"),
  748. name: "generation",
  749. meta: {
  750. title: "发电量分析",
  751. icon: "",
  752. permissions: ["jn_ztfx_dlfx"],
  753. },
  754. },
  755. ],
  756. },
  757. //功率预测分析
  758. {
  759. path: "monthElectricAnalyse",
  760. component: () =>
  761. import("@/views/economicsOperation/monthElectricAnalyse/index.vue"),
  762. name: "monthElectricAnalyse",
  763. meta: {
  764. title: "功率预测分析",
  765. icon: "svg-yfdl",
  766. permissions: ["jn_glycfx"],
  767. },
  768. },
  769. //综合管控KPI
  770. {
  771. path: "comprehensiveControl",
  772. redirect: "comprehensiveControl/running",
  773. component: () =>
  774. import("@/views/economicsOperation/comprehensiveControl"),
  775. name: "comprehensiveControl",
  776. meta: {
  777. title: "综合管控KPI",
  778. icon: "svg-zhgk",
  779. permissions: ["jn_zhgk"],
  780. },
  781. children: [
  782. {
  783. path: "running",
  784. component: () =>
  785. import(
  786. "@/views/economicsOperation/comprehensiveControl/runningKPI/index.vue"
  787. ),
  788. name: "running",
  789. meta: {
  790. title: "运行KPI",
  791. icon: "",
  792. permissions: ["jn_zhgk_yx"],
  793. },
  794. },
  795. {
  796. path: "maintenance",
  797. component: () =>
  798. import(
  799. "@/views/economicsOperation/comprehensiveControl/maintenanceKPI/index.vue"
  800. ),
  801. name: "maintenance",
  802. meta: {
  803. title: "检修KPI",
  804. icon: "",
  805. permissions: ["jn_zhgk_jx"],
  806. },
  807. },
  808. {
  809. path: "stationControl",
  810. component: () =>
  811. import(
  812. "@/views/economicsOperation/comprehensiveControl/stationControlKPI/index.vue"
  813. ),
  814. name: "stationControl",
  815. meta: {
  816. title: "场站管控KPI",
  817. icon: "",
  818. permissions: ["jn_zhgk_czgk"],
  819. },
  820. },
  821. ],
  822. },
  823. // {
  824. // path: "reportForms",
  825. // redirect: "reportForms/newEnergyDaily",
  826. // component: () => import("@/views/economicsOperation/reportForms"),
  827. // name: "reportForms",
  828. // meta: {
  829. // title: "报表",
  830. // icon: "icon-dimension",
  831. // },
  832. // children: [
  833. // {
  834. // path: "newEnergyDaily",
  835. // component: () =>
  836. // import("@/views/economicsOperation/reportForms/newEnergyDaily"),
  837. // name: "newEnergyDaily",
  838. // meta: {
  839. // title: "新能源日报",
  840. // icon: "",
  841. // },
  842. // },
  843. // {
  844. // path: "newEnergyMonthly",
  845. // component: () =>
  846. // import("@/views/economicsOperation/reportForms/newEnergyMonthly"),
  847. // name: "newEnergyMonthly",
  848. // meta: {
  849. // title: "新能源月报",
  850. // icon: "",
  851. // },
  852. // },
  853. // {
  854. // path: "specifcGravity",
  855. // component: () =>
  856. // import("@/views/economicsOperation/reportForms/specifcGravity"),
  857. // name: "specifcGravity",
  858. // meta: {
  859. // title: "各风场生产月报",
  860. // icon: "",
  861. // },
  862. // },
  863. // {
  864. // path: "windMonthly",
  865. // component: () =>
  866. // import("@/views/economicsOperation/reportForms/windMonthly"),
  867. // name: "windMonthly",
  868. // meta: {
  869. // title: "新能源月报",
  870. // icon: "",
  871. // },
  872. // },
  873. // ],
  874. // },
  875. ],
  876. },
  877. //智慧检修
  878. {
  879. path: "/health",
  880. redirect: "/health/healthManagement/first",
  881. component: () => import("@/views/HealthControl"),
  882. name: "health",
  883. meta: {
  884. title: "智慧检修",
  885. icon: "",
  886. permissions: ["jn_health"],
  887. },
  888. children: [
  889. {
  890. path: "healthManagement",
  891. // redirect: "healthManagement/first",
  892. component: () => import("@/views/HealthControl/healthManagement"),
  893. name: "healthManagement",
  894. meta: {
  895. title: "健康管理",
  896. icon: "svg-健康管理",
  897. permissions: ["jn_jkgl"],
  898. },
  899. children: [
  900. {
  901. path: "first",
  902. component: () =>
  903. import("@/views/HealthControl/healthManagement/first/index.vue"),
  904. name: "first",
  905. meta: {
  906. title: "健康推荐",
  907. icon: "",
  908. permissions: ["jn_jkgl_jktj"],
  909. },
  910. },
  911. {
  912. path: "homepage",
  913. component: () =>
  914. import(
  915. "@/views/HealthControl/healthManagement/homepage/index.vue"
  916. ),
  917. name: "homepage",
  918. meta: {
  919. title: "健康首页",
  920. icon: "",
  921. permissions: ["jn_jkgl_jksy"],
  922. },
  923. },
  924. {
  925. path: "overview",
  926. component: () =>
  927. import(
  928. "@/views/HealthControl/healthManagement/overview/index.vue"
  929. ),
  930. name: "overview",
  931. meta: {
  932. title: "健康总览",
  933. icon: "",
  934. permissions: ["jn_jkgl_jkzl"],
  935. },
  936. },
  937. {
  938. path: "healthMatrix",
  939. component: () =>
  940. import(
  941. "@/views/HealthControl/healthManagement/healthMatrix/index.vue"
  942. ),
  943. name: "healthMatrix",
  944. meta: {
  945. title: "健康矩阵",
  946. icon: "",
  947. permissions: ["jn_jkgl_jkjz"],
  948. },
  949. },
  950. {
  951. path: "healthList",
  952. component: () =>
  953. import(
  954. "@/views/HealthControl/healthManagement/healthList/index.vue"
  955. ),
  956. name: "healthList",
  957. meta: {
  958. title: "健康列表",
  959. icon: "",
  960. permissions: ["jn_jkgl_jklb"],
  961. },
  962. },
  963. {
  964. path: "badStateAnalyse/:wpId/:wtId",
  965. component: () =>
  966. import(
  967. "@/views/HealthControl/healthManagement/badStateAnalyse/index.vue"
  968. ),
  969. name: "badStateAnalyse",
  970. meta: {
  971. title: "劣化状态分析",
  972. icon: "",
  973. permissions: ["jn_jkgl_lhztfx"],
  974. },
  975. },
  976. ],
  977. },
  978. {
  979. path: "energyEfficAnalyse",
  980. redirect: "energyEfficAnalyse/healthPowerCurve",
  981. component: () => import("@/views/HealthControl/energyEfficAnalyse"),
  982. name: "energyEfficAnalyse",
  983. meta: {
  984. title: "能效分析",
  985. icon: "svg-能效分析",
  986. permissions: ["jn_nxfx"],
  987. },
  988. children: [
  989. {
  990. path: "healthPowerCurve",
  991. component: () =>
  992. import(
  993. "@/views/HealthControl/energyEfficAnalyse/healthPowerCurve"
  994. ),
  995. name: "healthPowerCurve",
  996. meta: {
  997. title: "功率曲线拟合",
  998. icon: "",
  999. permissions: ["jn_nxfx_glqxnh"],
  1000. },
  1001. },
  1002. {
  1003. path: "powerAnalyse",
  1004. component: () =>
  1005. import("@/views/HealthControl/energyEfficAnalyse/powerAnalyse"),
  1006. name: "powerAnalyse",
  1007. meta: {
  1008. title: "功率曲线分析",
  1009. icon: "",
  1010. permissions: ["jn_nxfx_glqxnh"],
  1011. },
  1012. },
  1013. {
  1014. path: "powerHotAnalyse",
  1015. component: () =>
  1016. import(
  1017. "@/views/HealthControl/energyEfficAnalyse/powerHotAnalyse"
  1018. ),
  1019. name: "powerHotAnalyse",
  1020. meta: {
  1021. title: "功率光照曲线分析",
  1022. icon: "",
  1023. permissions: ["jn_nxfx_glqxnh"],
  1024. },
  1025. },
  1026. {
  1027. path: "qxpclfx",
  1028. component: () =>
  1029. import(
  1030. "@/views/HealthControl/energyEfficAnalyse/qxpclfx/index.vue"
  1031. ),
  1032. name: "qxpclfx",
  1033. meta: {
  1034. title: "曲线偏差率分析",
  1035. icon: "",
  1036. permissions: ["jn_nxfx_qxpcl"],
  1037. },
  1038. },
  1039. {
  1040. path: "wtSaturability",
  1041. component: () =>
  1042. import(
  1043. "@/views/HealthControl/energyEfficAnalyse/wtSaturability/index.vue"
  1044. ),
  1045. name: "wtSaturability",
  1046. meta: {
  1047. title: "单机饱和度",
  1048. icon: "",
  1049. permissions: ["jn_nxfx_djbhd"],
  1050. },
  1051. },
  1052. {
  1053. path: "temperatureAnalysis",
  1054. component: () =>
  1055. import(
  1056. "@/views/HealthControl/energyEfficAnalyse/temperatureAnalysis/index.vue"
  1057. ),
  1058. name: "temperatureAnalysis",
  1059. meta: {
  1060. title: "部件温度分析",
  1061. icon: "",
  1062. permissions: ["jn_nxfx_bjwd"],
  1063. },
  1064. },
  1065. {
  1066. path: "evaluationAnalysis",
  1067. component: () =>
  1068. import(
  1069. "@/views/HealthControl/energyEfficAnalyse/evaluationAnalysis/index.vue"
  1070. ),
  1071. name: "evaluationAnalysis",
  1072. meta: {
  1073. title: "预警评判分析",
  1074. icon: "",
  1075. permissions: ["jn_nxfx_yjpp"],
  1076. },
  1077. },
  1078. {
  1079. path: "malfunctionAnalysis",
  1080. component: () =>
  1081. import(
  1082. "@/views/HealthControl/energyEfficAnalyse/malfunctionAnalysis/index.vue"
  1083. ),
  1084. name: "malfunctionAnalysis",
  1085. meta: {
  1086. title: "故障评判分析",
  1087. icon: "",
  1088. permissions: ["jn_nxfx_gzpp"],
  1089. },
  1090. },
  1091. {
  1092. path: "powerAnalysis",
  1093. component: () =>
  1094. import(
  1095. "@/views/HealthControl/energyEfficAnalyse/powerAnalysis/index.vue"
  1096. ),
  1097. name: "powerAnalysis",
  1098. meta: {
  1099. title: "部件功率分析",
  1100. icon: "",
  1101. permissions: ["jn_nxfx_gzpp"],
  1102. },
  1103. },
  1104. ],
  1105. },
  1106. {
  1107. path: "healthDetail",
  1108. redirect: "healthDetail/wpHealth",
  1109. component: () => import("@/views/HealthControl/healthDetail"),
  1110. name: "healthDetail",
  1111. hidden: true,
  1112. meta: {
  1113. title: "健康详情",
  1114. icon: "",
  1115. permissions: ["jn_jkgl"],
  1116. },
  1117. children: [
  1118. {
  1119. path: "wpHealth/:wpId/:wpName?", // 场站健康管理
  1120. name: "health3",
  1121. component: () =>
  1122. import("@/views/HealthControl/healthDetail/wpHealth"),
  1123. meta: {
  1124. title: "场站健康管理",
  1125. icon: "",
  1126. permissions: ["jn_jkgl"],
  1127. },
  1128. },
  1129. {
  1130. path: "wtHealth/:wpId/:wtId", //设备健康详情
  1131. name: "health0",
  1132. component: () =>
  1133. import("@/views/HealthControl/healthDetail/wtHealth"),
  1134. meta: {
  1135. title: "设备健康详情",
  1136. icon: "",
  1137. permissions: ["jn_jkgl"],
  1138. },
  1139. },
  1140. {
  1141. path: "healthTrend/:wpId/:wtId", //设备健康详情
  1142. name: "healthTrend",
  1143. component: () =>
  1144. import("@/views/HealthControl/healthDetail/healthTrend"),
  1145. meta: {
  1146. title: "健康趋势",
  1147. icon: "",
  1148. permissions: ["jn_jkgl"],
  1149. },
  1150. },
  1151. {
  1152. path: "badState/:wpId/:wtId", //设备健康详情
  1153. name: "",
  1154. component: () =>
  1155. import("@/views/HealthControl/healthManagement/badStateAnalyse"),
  1156. meta: {
  1157. title: "劣化状态分析曲线",
  1158. icon: "",
  1159. permissions: ["jn_jkgl"],
  1160. },
  1161. },
  1162. ],
  1163. },
  1164. ],
  1165. },
  1166. // 智能报表
  1167. {
  1168. path: "/others",
  1169. redirect: "/others/report/gjyrbb",
  1170. name: "others",
  1171. meta: {
  1172. title: "智能报表",
  1173. icon: "",
  1174. permissions: ["jn_zhbb"],
  1175. },
  1176. // component: () => import("@/views/report/index copy.vue"),
  1177. component: () => import("@/views/report"),
  1178. children: [
  1179. {
  1180. path: "report",
  1181. redirect: "report/gjyrbb",
  1182. name: "report",
  1183. meta: {
  1184. title: "自定制报表管理",
  1185. icon: "svg-自定制报表管理",
  1186. permissions: ["jn_zdz"],
  1187. },
  1188. component: () => import("@/views/report/stationReport"),
  1189. children: [
  1190. {
  1191. path: "scrb",
  1192. name: "scrb",
  1193. component: () => import("@/views/report/stationReport/scrb"),
  1194. meta: {
  1195. title: "晋能清洁能源生产日报",
  1196. icon: "",
  1197. permissions: ["jn_zdz_scrb"],
  1198. },
  1199. },
  1200. {
  1201. path: "fdxnyrb",
  1202. name: "fdxnyrb",
  1203. component: () => import("@/views/report/stationReport/fdxnyrb"),
  1204. meta: {
  1205. title: "晋能清洁能源风电日报",
  1206. icon: "",
  1207. permissions: ["jn_zdz_fdxnyrb"],
  1208. },
  1209. },
  1210. {
  1211. path: "gfxnyrb",
  1212. name: "gfxnyrb",
  1213. component: () => import("@/views/report/stationReport/gfxnyrb"),
  1214. meta: {
  1215. title: "晋能清洁能源光伏日报",
  1216. icon: "",
  1217. permissions: ["jn_zdz_gfxnyrb"],
  1218. },
  1219. },
  1220. {
  1221. path: "gjyrbb",
  1222. name: "gjyrbb",
  1223. component: () => import("@/views/report/stationReport/rbb"),
  1224. meta: {
  1225. title: "日报表",
  1226. icon: "",
  1227. permissions: ["jn_zdz_rbb"],
  1228. },
  1229. },
  1230. {
  1231. path: "fdczzdy",
  1232. name: "fdczzdy",
  1233. component: () => import("@/views/report/stationReport/fdczzdy"),
  1234. meta: {
  1235. title: "风电场站自定义",
  1236. icon: "",
  1237. permissions: ["jn_zdz_fdcz"],
  1238. },
  1239. },
  1240. {
  1241. path: "fdxmzdy",
  1242. name: "fdxmzdy",
  1243. component: () => import("@/views/report/stationReport/fdxmzdy"),
  1244. meta: {
  1245. title: "风电项目自定义",
  1246. icon: "",
  1247. permissions: ["jn_zdz_fdxm"],
  1248. },
  1249. },
  1250. ],
  1251. },
  1252. {
  1253. path: "electricReport",
  1254. redirect: "electricReport/dmb",
  1255. name: "electricReport",
  1256. meta: {
  1257. title: "电量报表",
  1258. icon: "svg-dlbb",
  1259. permissions: ["jn_dlbb"],
  1260. },
  1261. component: () => import("@/views/electricReport/dmb"),
  1262. children: [
  1263. {
  1264. path: "dmb",
  1265. name: "dmb",
  1266. component: () => import("@/views/electricReport/dmb"),
  1267. meta: {
  1268. title: "底码表",
  1269. icon: "",
  1270. permissions: ["jn_dlbb_dmb"],
  1271. },
  1272. },
  1273. ],
  1274. },
  1275. ],
  1276. },
  1277. ];
  1278. const router = createRouter({
  1279. history: createWebHashHistory(),
  1280. base: "/nem/",
  1281. routes: [...constantRoutes, ...asyncRoutes],
  1282. });
  1283. // router.beforeEach((to, from, next) => {
  1284. // next();
  1285. // });
  1286. export default router;