Procházet zdrojové kódy

修复错误的merge

wsy před 4 roky
rodič
revize
382ce3ed25
2 změnil soubory, kde provedl 771 přidání a 561 odebrání
  1. 587 486
      src/router/index.js
  2. 184 75
      src/views/layout/Menu.vue

+ 587 - 486
src/router/index.js

@@ -1,499 +1,600 @@
 import { createRouter, createWebHashHistory } from 'vue-router'
 import Home from '../views/Home/Home.vue'
-
+ 
 const routes = [{
-        path: '/',
-        redirect: '/monitor/home'
-    },
-    {
-        path: '/monitor/home', // 驾驶舱
-        name: 'Home',
-        component: Home,
-    },
-    {
-        path: '/monitor/about',
-        name: 'About',
-        component: () =>
-            import ( /* webpackChunkName: "about" */ '../views/About.vue'),
-    },
-    {
-        path: '/monitor/demo',
-        name: 'Demo',
-        component: () =>
-            import ( /* webpackChunkName: "Demo" */ '../views/Demo.vue'),
-    },
-    {
-        path: '/monitor/status', // 状态监视
-        name: 'Status',
-        component: () =>
-            import ( /* webpackChunkName: "status" */ '../views/Status/Status.vue'),
-    },
-    {
-        path: '/monitor/agc', // AGC 监视
-        name: 'Agc',
-        component: () =>
-            import ( /* webpackChunkName: "agc" */ '../views/Agc/Agc.vue'),
-    },
-    {
-        path: '/monitor/windsite',
-        name: 'WindSite',
-        component: () =>
-            import ( /* webpackChunkName: "windsite" */ '../views/WindSite/WindSite.vue'),
-        children: [{
-                path: 'home/:wpId', // 场站监视
-                component: () =>
-                    import ( /* webpackChunkName: "windsitehome" */ '../views/WindSite/pages/Home/Home.vue'),
-            }, {
-                path: 'draughtfanlist/:wpId', // 风机列表
-                component: () =>
-                    import ( /* webpackChunkName: "windsitedraughtfanlist" */ '../views/WindSite/pages/DraughtFanList.vue'),
-            }, {
-                path: 'matrix/:wpId', // 风场矩阵
-                component: () =>
-                    import ( /* webpackChunkName: "windsitematrix" */ '../views/WindSite/pages/Matrix.vue'),
-            }, {
-                path: 'lightmatrix/:wpId',
-                component: () =>
-                    import ( /* webpackChunkName: "windsitelightmatrix" */ '../views/WindSite/pages/LightMatrix.vue'),
-            }, {
-                path: 'box/:wpId',
-                component: () =>
-                    import ( /* webpackChunkName: "windsitebox" */ '../views/WindSite/pages/Box.vue'),
-            }, {
-                path: 'info/:wpId/:wtId', // 单机状态监视
-                component: () =>
-                    import ( /* webpackChunkName: "info" */ '../views/WindSite/pages/Info/Info.vue'),
-            }, {
-                path: 'tower/:wpId', // 测风塔
-                component: () =>
-                    import ( /* webpackChunkName: "windsitetower" */ '../views/WindSite/pages/Tower.vue'),
-            }, {
-                path: 'inverter-info/:wpId',
-                component: () =>
-                    import ( /* webpackChunkName: "inverter-info" */ '../views/WindSite/pages/Inverter-Info.vue'),
-            }, {
-                path: 'map/:wpId',
-                component: () =>
-                    import ( /* webpackChunkName: "windsitemap" */ '../views/WindSite/pages/Map.vue'),
-            }, {
-                path: 'map1/:wpId',
-                component: () =>
-                    import ( /* webpackChunkName: "windsitemap1" */ '../views/WindSite/pages/Map1.vue'),
-            },
-            {
-                path: 'boosterstation/:wpId', // 升压站
-                component: () =>
-                    import ( /* webpackChunkName: "boosterstation" */ '../views/WindSite/pages/BoosterStation.vue'),
-            },
-            {
-                path: "generalappearance/:wpId", // 总样貌
-                component: () =>
-                    import ( /* webpackChunkName: "generalappearance" */ "../views/WindSite/pages/GeneralAppearance.vue"),
-            },
-        ]
-    },
-    {
-        path: '/monitor/lightmatrix', // 光伏明细矩阵
-        name: 'LightMatrix',
-        component: () =>
-            import ( /* webpackChunkName: "lightmatrix" */ '../views/LightMatrix/LightMatrix.vue'),
-    },
-    {
-        path: '/monitor/lightmatrix1', // 基础矩阵
-        name: 'LightMatrix1',
-        component: () =>
-            import ( /* webpackChunkName: "lightmatrix1" */ '../views/LightMatrix1/LightMatrix1.vue'),
-    },
-    {
-        path: '/monitor/lightmatrix2', // 欠发矩阵
-        name: 'LightMatrix2',
-        component: () =>
-            import ( /* webpackChunkName: "lightmatrix2" */ '../views/LightMatrix2/LightMatrix2.vue'),
-    }, {
-        path: '/monitor/lightmatrix3', // 明细矩阵
-        name: 'LightMatrix3',
-        component: () =>
-            import ( /* webpackChunkName: "lightmatrix3" */ '../views/LightMatrix3/LightMatrix3.vue'),
-    }, {
-        path: '/decision/decision1', //风机绩效榜
-        name: 'decision1',
-        component: () =>
-            import ( /* webpackChunkName: "decision1" */ '../views/Decision/Decision1.vue'),
-    },
-    {
-        path: '/decision/decision1Mx', //风机绩效榜明细
-        name: 'decision1Mx',
-        component: () =>
-            import ( /* webpackChunkName: "decision1Mx" */ '../views/Decision/Decision1Mx.vue'),
-    },
-
-    {
-        path: '/decision/decision2', //五项损失率
-        name: 'decision2',
-        component: () =>
-            import ( /* webpackChunkName: "decision2" */ '../views/Decision/Decision2.vue'),
-    },
-    {
-        path: '/decision/decision2Cndb', //场内对标
-        name: 'decision2Cndb',
-        component: () =>
-            import ( /* webpackChunkName: "decision2Cndb" */ '../views/Decision/Decision2Cndb.vue'),
-    },
-    {
-        path: '/decision/decision2Cjdb', //场际对标
-        name: 'decision2Cjdb',
-        component: () =>
-            import ( /* webpackChunkName: "decision2Cjdb" */ '../views/Decision/Decision2Cjdb.vue'),
-    },
-    {
-        path: '/decision/decision2Xmdb', //项目对标
-        name: 'decision2Xmdb',
-        component: () =>
-            import ( /* webpackChunkName: "decision2Xmdb" */ '../views/Decision/Decision2Xmdb.vue'),
-    },
-    {
-        path: '/decision/decision2Xldb', //线路对标
-        name: 'decision2Xldb',
-        component: () =>
-            import ( /* webpackChunkName: "decision2Xldb" */ '../views/Decision/Decision2Xldb.vue'),
-    },
-    {
-        path: '/decision/decision3', //性能对标
-        name: 'decision3',
-        component: () =>
-            import ( /* webpackChunkName: "decision3" */ '../views/Decision/Decision3.vue'),
-    },
-    {
-        path: '/decision/decision4', //值际对标
-        name: 'decision4',
-        component: () =>
-            import ( /* webpackChunkName: "decision4" */ '../views/Decision/Decision4.vue'),
-    },
-    {
-        path: '/decision/decision4czzl', //操作指令统计
-        name: 'decision4czzl',
-        component: () =>
-            import ( /* webpackChunkName: "decision4czzl" */ '../views/Decision/Decision4Czzl.vue'),
-    },
-    {
-        path: '/health',
-        name: 'health',
-        component: () =>
-            import ('../views/HealthControl/Health.vue'),
-    },
-    {
-        path: '/health/healthDay', //风机  日  信息量化评级管理
-        name: 'healthDay',
-        component: () =>
-            import ('../views/HealthControl/HealthDay.vue'),
-    },
-    {
-        path: '/health/healthMonth', //风机  月  信息量化评级管理
-        name: 'healthMonth',
-        component: () =>
-            import ('../views/HealthControl/HealthMonth.vue'),
-    },
-    {
-        path: '/health/healthYear', //风机  年  信息量化评级管理
-        name: 'healthYear',
-        component: () =>
-            import ('../views/HealthControl/HealthYear.vue'),
-    },
-    {
-        path: '/health/health1',
-        name: 'health1',
-        component: () =>
-            import ('../views/HealthControl/Health1.vue'),
-    },
-    {
-        path: '/health/health2', // 健康管理首页
-        name: 'health2',
-        component: () =>
-            import ('../views/HealthControl/Health2.vue'),
-    },
-    {
-        path: '/health/health3/:wpId', // 场站健康管理
-        name: 'health3',
-        component: () =>
-            import ('../views/HealthControl/Health3.vue'),
-    },
-    {
-        path: '/health/health4',
-        name: 'health4',
-        children: [{
-                path: "/health/health0/:wpId/:wtId",
-                name: "health0",
-                component: () =>
-                    import ("../views/HealthControl/Health0.vue"),
-            }, {
-                path: "/health/health10/:wtId",
-                name: "health10",
-                component: () =>
-                    import ( /* webpackChunkName: "health8" */ "../views/HealthControl/Health10.vue"),
-            }, {
-                path: 'healthLineChart/:wtId', // 风机健康趋势
-                component: () =>
-                    import ( /* webpackChunkName: "healthLineChart" */ '../views/HealthControl/healthLineChart.vue'),
-            },
-            {
-                path: 'healthLineChart2/:wtId', // 健康趋势
-                component: () =>
-                    import ( /* webpackChunkName: "healthLineChart2" */ '../views/HealthControl/healthLineChart2.vue'),
-            }
-        ],
-        component: () =>
-            import ('../views/HealthControl/Health4.vue'),
-    },
-    {
-        path: '/health/health5/',
-        name: 'health5',
-        component: () =>
-            import ('../views/HealthControl/Health5.vue'),
-    },
-    {
-        path: '/health/health6', // 健康总览
-        name: 'health6',
-        component: () =>
-            import ('../views/HealthControl/Health6.vue'),
-    },
-    {
-        path: '/cutAnalyse', // 切入切出分析
-        name: 'cutAnalyse',
-        component: () =>
-            import ('../views/cutAnalyse/index.vue'),
-    },
-    {
-        path: '/cutAnalyse', // 切入切出分析
-        name: 'cutAnalyse',
-        component: () =>
-            import ('../views/cutAnalyse/index.vue'),
-    },
-    {
-        path: '/wtSaturability', // 单机饱和度
-        name: 'wtSaturability',
-        component: () =>
-            import ('../views/wtSaturability/index.vue'),
-    },
-    {
-        path: '/windAnalysis', // 风资源分析
-        name: 'windAnalysis',
-        component: () =>
-            import ('../views/windAnalysis/index.vue'),
-    },
-    {
-        path: '/powerRank', // 发电效率排行
-        name: 'powerRank',
-        component: () =>
-            import ('../views/powerRank/index.vue'),
-    },
-    {
-        path: '/totalPowerRank', // 总发电效率排行
-        name: 'totalPowerRank',
-        component: () =>
-            import ('../views/totalPowerRank/index.vue'),
-    },
-    {
-        path: '/warningRank', // 报警排行
-        name: 'warningRank',
-        component: () =>
-            import ('../views/warningRank/index.vue'),
-    },
-    {
-        path: '/realSearch', // 测点数据查询
-        name: 'realSearch',
-        component: () =>
-            import ('../views/realSearch/index.vue'),
-    },
-    {
-        path: '/singleAnalysis', // 单机月度分析
-        name: 'singleAnalysis',
-        component: () =>
-            import ('../views/singleAnalysis/index.vue'),
-    },
-    // {
-    //   path: '/performanceAnalysis', // 单机性能分析
-    //   name: 'performanceAnalysis',
-    //   component: () => import('../views/performanceAnalysis/index.vue'),
-    //   children: [{
-    //     path: "detail/:wpId",
-    //     name: "performanceAnalysisDetail",
-    //     component: () => import("../views/performanceAnalysis/detail/index.vue"),
-    //   }]
-    // },
-    {
-        path: '/historySearch', // 测点历史数据查询
-        name: 'historySearch',
-        component: () =>
-            import ('../views/historySearch/index.vue'),
-    },
-    {
-        path: '/knowledge', //故障知识列表
-        name: 'knowledge1',
-        component: () =>
-            import ('../views/Knowledge/Knowledge1.vue'),
-    },
-    {
-        path: '/knowledge2', //安全措施知识
-        name: 'knowledge2',
-        component: () =>
-            import ('../views/Knowledge/Knowledge2.vue'),
-    },
-    {
-        path: '/knowledge3', //风险辨识知识
-        name: 'knowledge3',
-        component: () =>
-            import ('../views/Knowledge/Knowledge3.vue'),
-    },
-    {
-        path: '/knowledge4', //作业指导知识
-        name: 'knowledge4',
-        component: () =>
-            import ('../views/Knowledge/Knowledge4.vue'),
-    },
-    {
-        path: '/knowledge5', //特征参数
-        name: 'knowledge5',
-        component: () =>
-            import ('../views/Knowledge/Knowledge5.vue'),
-    },
-    {
-        path: '/knowledge6', //排查检修方案
-        name: 'knowledge6',
-        component: () =>
-            import ('../views/Knowledge/Knowledge6.vue'),
-    },
-    {
-        path: '/knowledge7', //预警知识
-        name: 'knowledge7',
-        component: () =>
-            import ('../views/Knowledge/Knowledge7.vue'),
-    },
-    {
-        path: "/health/health8",
-        name: "health8",
-        component: () =>
-            import ( /* webpackChunkName: "health8" */ "../views/HealthControl/Health8.vue"),
-    },
-    {
-        path: "/monitor/sandtable",
-        name: "sandtable",
-        component: () =>
-            import ( /* webpackChunkName: "sandtable" */ "../views/SandTable/SandTable.vue"),
-    },
-    {
-        path: "/new/dj1",
-        name: "dj1",
-        component: () =>
-            import ( /* webpackChunkName: "dj1" */ "../views/NewPages/dj1.vue"),
-    },
-    {
-        path: "/new/pf1",
-        name: "pf1",
-        component: () =>
-            import ( /* webpackChunkName: "pf1" */ "../views/NewPages/power-forecast-1.vue"),
-    },
-    {
-        path: "/new/fs",
-        name: "fs",
-        component: () =>
-            import ( /* webpackChunkName: "fs" */ "../views/NewPages/forecast-system.vue"),
-    },
-    {
-        path: '/new/ztfx',
-        name: 'ztfx',
-        component: () =>
-            import ( /* webpackChunkName: "ztfx" */ '../views/NewPages/ztfx.vue'),
-    },
-    {
-        path: '/new/intelligentalarmcenter',
-        name: 'intelligentalarmcenter',
-        component: () =>
-            import ( /* webpackChunkName: "intelligentalarmcenter" */ '../views/NewPages/intelligent-alarm-center.vue'),
-    },
-    {
-        path: '/new/personnel',
-        name: 'personnel',
-        component: () =>
-            import ( /* webpackChunkName: "personnel" */ '../views/NewPages/personnel.vue'),
-    },
-    {
-        path: '/new/znzhfx',
-        name: 'znzhfx',
-        component: () =>
-            import ( /* webpackChunkName: "ztfx" */ '../views/NewPages/znzhfx.vue'),
-    },
-    {
-        path: '/new/alarmcenter',
-        name: 'alarmcenter',
-        component: () =>
-            import ( /* webpackChunkName: "personnel" */ '../views/NewPages/alarm-center.vue'),
-    },
-    {
-        path: '/new/knowledgebase',
-        name: 'knowledgebase',
-        component: () =>
-            import ( /* webpackChunkName: "knowledgebase" */ '../views/NewPages/knowledge-base.vue'),
-    },
-    {
-        path: "/new/dj",
-        name: "dj",
-        component: () =>
-            import ( /* webpackChunkName: "dj" */ "../views/NewPages/dj.vue"),
-    },
-    {
-        path: "/new/dj2",
-        name: "dj2",
-        component: () =>
-            import ( /* webpackChunkName: "dj2" */ "../views/NewPages/dj2.vue"),
-    },
-    {
-        path: "/new/dialog",
-        name: "dialog",
-        component: () =>
-            import ( /* webpackChunkName: "dj2" */ "../views/NewPages/dialogs.vue"),
-    }, // 三率管理/复位及时率
-    {
-        path: '/fwjsl',
-        name: 'fwjsl',
-        component: () =>
-            import ('../views/Decision/slgl/fwjsl.vue')
-    },
-    // 三率管理/状态转换率
-    {
-        path: '/ztzhl',
-        name: 'ztzhl',
-        component: () =>
-            import ('../views/Decision/slgl/ztzhl.vue')
-    },
-    // 三率管理/消缺及时率
-    {
-        path: '/xqjsl',
-        name: 'xqjsl',
-        component: () =>
-            import ('../views/Decision/slgl/xqjsl.vue')
-    },
-    // 曲线排行榜
-    {
-        path:'/qxpclfx',
-        name:'qxpclfx',
-        component:()=> import('../views/nxfx/qxpclfx.vue')
-    },
-    // 等级评估(单机等级评估管理-量化评级)
-    {
-        path:'/djpg',
-        name:'djpg',
-        component:()=> import('../views/HealthControl/gradeassessment.vue')
-    },
-          
+  path: '/',
+  redirect: '/monitor/home'
+},
+{
+  path: '/monitor/home', // 驾驶舱
+  name: 'Home',
+  component: Home,
+},
+{
+  path: '/monitor/about',
+  name: 'About',
+  component: () =>
+    import( /* webpackChunkName: "about" */ '../views/About.vue'),
+},
+{
+  path: '/monitor/demo',
+  name: 'Demo',
+  component: () =>
+    import( /* webpackChunkName: "Demo" */ '../views/Demo.vue'),
+},
+{
+  path: '/monitor/status', // 状态监视
+  name: 'Status',
+  component: () =>
+    import( /* webpackChunkName: "status" */ '../views/Status/Status.vue'),
+},
+{
+  path: '/monitor/agc', // AGC 监视
+  name: 'Agc',
+  component: () =>
+    import( /* webpackChunkName: "agc" */ '../views/Agc/Agc.vue'),
+},
+{
+  path: '/monitor/windsite',
+  name: 'WindSite',
+  component: () =>
+    import( /* webpackChunkName: "windsite" */ '../views/WindSite/WindSite.vue'),
+  children: [{
+    path: 'home/:wpId', // 场站监视
+    component: () =>
+      import( /* webpackChunkName: "windsitehome" */ '../views/WindSite/pages/Home/Home.vue'),
+  }, {
+    path: 'draughtfanlist/:wpId', // 风机列表
+    component: () =>
+      import( /* webpackChunkName: "windsitedraughtfanlist" */ '../views/WindSite/pages/DraughtFanList.vue'),
+  }, {
+    path: 'matrix/:wpId', // 风场矩阵
+    component: () =>
+      import( /* webpackChunkName: "windsitematrix" */ '../views/WindSite/pages/Matrix.vue'),
+  }, {
+    path: 'lightmatrix/:wpId',
+    component: () =>
+      import( /* webpackChunkName: "windsitelightmatrix" */ '../views/WindSite/pages/LightMatrix.vue'),
+  }, {
+    path: 'box/:wpId',
+    component: () =>
+      import( /* webpackChunkName: "windsitebox" */ '../views/WindSite/pages/Box.vue'),
+  }, {
+    path: 'info/:wpId/:wtId', // 单机状态监视
+    component: () =>
+      import( /* webpackChunkName: "info" */ '../views/WindSite/pages/Info/Info.vue'),
+  }, {
+    path: 'tower/:wpId', // 测风塔
+    component: () =>
+      import( /* webpackChunkName: "windsitetower" */ '../views/WindSite/pages/Tower.vue'),
+  }, {
+    path: 'inverter-info/:wpId',
+    component: () =>
+      import( /* webpackChunkName: "inverter-info" */ '../views/WindSite/pages/Inverter-Info.vue'),
+  }, {
+    path: 'map/:wpId',
+    component: () =>
+      import( /* webpackChunkName: "windsitemap" */ '../views/WindSite/pages/Map.vue'),
+  }, {
+    path: 'map1/:wpId',
+    component: () =>
+      import( /* webpackChunkName: "windsitemap1" */ '../views/WindSite/pages/Map1.vue'),
+  },
+  {
+    path: 'boosterstation/:wpId', // 升压站
+    component: () =>
+      import( /* webpackChunkName: "boosterstation" */ '../views/WindSite/pages/BoosterStation.vue'),
+  },
+  {
+    path: "generalappearance/:wpId", // 总样貌
+    component: () =>
+      import( /* webpackChunkName: "generalappearance" */ "../views/WindSite/pages/GeneralAppearance.vue"),
+  },
+  ]
+},
+{
+  path: '/monitor/lightmatrix', // 光伏明细矩阵
+  name: 'LightMatrix',
+  component: () =>
+    import( /* webpackChunkName: "lightmatrix" */ '../views/LightMatrix/LightMatrix.vue'),
+},
+{
+  path: '/monitor/lightmatrix1', // 基础矩阵
+  name: 'LightMatrix1',
+  component: () =>
+    import( /* webpackChunkName: "lightmatrix1" */ '../views/LightMatrix1/LightMatrix1.vue'),
+},
+{
+  path: '/monitor/lightmatrix2', // 欠发矩阵
+  name: 'LightMatrix2',
+  component: () =>
+    import( /* webpackChunkName: "lightmatrix2" */ '../views/LightMatrix2/LightMatrix2.vue'),
+}, {
+  path: '/monitor/lightmatrix3', // 明细矩阵
+  name: 'LightMatrix3',
+  component: () =>
+    import( /* webpackChunkName: "lightmatrix3" */ '../views/LightMatrix3/LightMatrix3.vue'),
+}, {
+  path: '/decision/decision1', //风机绩效榜
+  name: 'decision1',
+  component: () =>
+    import( /* webpackChunkName: "decision1" */ '../views/Decision/Decision1.vue'),
+},
+{
+  path: '/decision/decision1Mx', //风机绩效榜明细
+  name: 'decision1Mx',
+  component: () =>
+    import( /* webpackChunkName: "decision1Mx" */ '../views/Decision/Decision1Mx.vue'),
+},
+{
+  path: '/decision/decision2', //五项损失率
+  name: 'decision2',
+  component: () =>
+    import( /* webpackChunkName: "decision2" */ '../views/Decision/Decision2.vue'),
+},
+{
+  path: '/decision/decision2Cndb', //场内对标
+  name: 'decision2Cndb',
+  component: () =>
+    import( /* webpackChunkName: "decision2Cndb" */ '../views/Decision/Decision2Cndb.vue'),
+},
+{
+  path: '/decision/decision2Cjdb', //场际对标
+  name: 'decision2Cjdb',
+  component: () =>
+    import( /* webpackChunkName: "decision2Cjdb" */ '../views/Decision/Decision2Cjdb.vue'),
+},
+{
+  path: '/decision/decision2Xmdb', //项目对标
+  name: 'decision2Xmdb',
+  component: () =>
+    import( /* webpackChunkName: "decision2Xmdb" */ '../views/Decision/Decision2Xmdb.vue'),
+},
+{
+  path: '/decision/decision2Xldb', //线路对标
+  name: 'decision2Xldb',
+  component: () =>
+    import( /* webpackChunkName: "decision2Xldb" */ '../views/Decision/Decision2Xldb.vue'),
+},
+{
+  path: '/decision/decision3', //性能对标
+  name: 'decision3',
+  component: () =>
+    import( /* webpackChunkName: "decision3" */ '../views/Decision/Decision3.vue'),
+},
+{
+  path: '/decision/decision4', //值际对标
+  name: 'decision4',
+  component: () =>
+    import( /* webpackChunkName: "decision4" */ '../views/Decision/Decision4.vue'),
+},
+{
+  path: '/decision/decision4czzl', //操作指令统计
+  name: 'decision4czzl',
+  component: () =>
+    import( /* webpackChunkName: "decision4czzl" */ '../views/Decision/Decision4Czzl.vue'),
+},
+{
+  path: '/health',
+  name: 'health',
+  component: () =>
+    import('../views/HealthControl/Health.vue'),
+},
+{
+  path: '/health/healthDay', //风机  日  信息量化评级管理
+  name: 'healthDay',
+  component: () =>
+    import('../views/HealthControl/HealthDay.vue'),
+},
+{
+  path: '/health/healthMonth', //风机  月  信息量化评级管理
+  name: 'healthMonth',
+  component: () =>
+    import('../views/HealthControl/HealthMonth.vue'),
+},
+{
+  path: '/health/healthYear', //风机  年  信息量化评级管理
+  name: 'healthYear',
+  component: () =>
+    import('../views/HealthControl/HealthYear.vue'),
+},
+{
+  path: '/health/health1',
+  name: 'health1',
+  component: () =>
+    import('../views/HealthControl/Health1.vue'),
+},
+{
+  path: '/health/health2', // 健康管理首页
+  name: 'health2',
+  component: () =>
+    import('../views/HealthControl/Health2.vue'),
+},
+{
+  path: '/health/health3/:wpId', // 场站健康管理
+  name: 'health3',
+  component: () =>
+    import('../views/HealthControl/Health3.vue'),
+},
+{
+  path: '/health/health4',
+  name: 'health4',
+  children: [{
+    path: "/health/health0/:wpId/:wtId",
+    name: "health0",
+    component: () =>
+      import("../views/HealthControl/Health0.vue"),
+  }, {
+    path: "/health/health10/:wtId",
+    name: "health10",
+    component: () =>
+      import( /* webpackChunkName: "health8" */ "../views/HealthControl/Health10.vue"),
+  }, {
+    path: 'healthLineChart/:wtId', // 风机健康趋势
+    component: () =>
+      import( /* webpackChunkName: "healthLineChart" */ '../views/HealthControl/healthLineChart.vue'),
+  },
+  {
+    path: 'healthLineChart2/:wtId', // 健康趋势
+    component: () =>
+      import( /* webpackChunkName: "healthLineChart2" */ '../views/HealthControl/healthLineChart2.vue'),
+  }
+  ],
+  component: () =>
+    import('../views/HealthControl/Health4.vue'),
+},
+{
+  path: '/health/health5/',
+  name: 'health5',
+  component: () =>
+    import('../views/HealthControl/Health5.vue'),
+},
+{
+  path: '/health/health6', // 健康总览
+  name: 'health6',
+  component: () =>
+    import('../views/HealthControl/Health6.vue'),
+},
+{
+  path: '/cutAnalyse', // 切入切出分析
+  name: 'cutAnalyse',
+  component: () =>
+    import('../views/cutAnalyse/index.vue'),
+},
+{
+  path: '/cutAnalyse', // 切入切出分析
+  name: 'cutAnalyse',
+  component: () =>
+    import('../views/cutAnalyse/index.vue'),
+},
+{
+  path: '/wtSaturability', // 单机饱和度
+  name: 'wtSaturability',
+  component: () =>
+    import('../views/wtSaturability/index.vue'),
+},
+{
+  path: '/windAnalysis', // 风资源分析
+  name: 'windAnalysis',
+  component: () =>
+    import('../views/windAnalysis/index.vue'),
+},
+{
+  path: '/powerRank', // 发电效率排行
+  name: 'powerRank',
+  component: () =>
+    import('../views/powerRank/index.vue'),
+},
+{
+  path: '/totalPowerRank', // 总发电效率排行
+  name: 'totalPowerRank',
+  component: () =>
+    import('../views/totalPowerRank/index.vue'),
+},
+{
+  path: '/warningRank', // 报警排行
+  name: 'warningRank',
+  component: () =>
+    import('../views/warningRank/index.vue'),
+},
+{
+  path: '/realSearch', // 测点数据查询
+  name: 'realSearch',
+  component: () =>
+    import('../views/realSearch/index.vue'),
+},
+{
+  path: '/singleAnalysis', // 单机月度分析
+  name: 'singleAnalysis',
+  component: () =>
+    import('../views/singleAnalysis/index.vue'),
+},
+{
+  path: '/performanceAnalysis', // 单机信息总览
+  name: 'performanceAnalysis',
+  component: () => import('../views/performanceAnalysis/index.vue'),
+},
+{
+  path: "/performanceAnalysis/detail/:wpId/:wtId", // 单机信息总览详情
+  name: "performanceAnalysisDetail",
+  component: () => import( /* webpackChunkName: "performanceAnalysisDetail" */ "../views/NewPages/dj1.vue"),
+},
+{
+  path: '/historySearch', // 测点历史数据查询
+  name: 'historySearch',
+  component: () =>
+    import('../views/historySearch/index.vue'),
+},
+{
+  path: '/knowledge', //故障知识列表
+  name: 'knowledge1',
+  component: () =>
+    import('../views/Knowledge/Knowledge1.vue'),
+},
+{
+  path: '/knowledge2', //安全措施知识
+  name: 'knowledge2',
+  component: () =>
+    import('../views/Knowledge/Knowledge2.vue'),
+},
+{
+  path: '/knowledge3', //风险辨识知识
+  name: 'knowledge3',
+  component: () =>
+    import('../views/Knowledge/Knowledge3.vue'),
+},
+{
+  path: '/knowledge4', //作业指导知识
+  name: 'knowledge4',
+  component: () =>
+    import('../views/Knowledge/Knowledge4.vue'),
+},
+{
+  path: '/knowledge5', //特征参数
+  name: 'knowledge5',
+  component: () =>
+    import('../views/Knowledge/Knowledge5.vue'),
+},
+{
+  path: '/knowledge6', //排查检修方案
+  name: 'knowledge6',
+  component: () =>
+    import('../views/Knowledge/Knowledge6.vue'),
+},
+{
+  path: '/knowledge7', //预警知识
+  name: 'knowledge7',
+  component: () =>
+    import('../views/Knowledge/Knowledge7.vue'),
+},
+{
+  path: '/allLifeManage', // 全生命周期管理
+  name: 'allLifeManage',
+  component: () =>
+    import('../views/allLifeManage/index.vue'),
+},
+{
+  path: "/health/health8",
+  name: "health8",
+  component: () =>
+    import( /* webpackChunkName: "health8" */ "../views/HealthControl/Health8.vue"),
+},
+{
+  path: "/monitor/sandtable",
+  name: "sandtable",
+  component: () =>
+    import( /* webpackChunkName: "sandtable" */ "../views/SandTable/SandTable.vue"),
+},
+{
+  path: "/planPower",
+  name: "planPower",
+  component: () =>
+    import( /* webpackChunkName: "planPower" */ "../views/planPower/index.vue"),
+},
+{
+  path: "/new/pf1",
+  name: "pf1",
+  component: () =>
+    import( /* webpackChunkName: "pf1" */ "../views/NewPages/power-forecast-1.vue"),
+},
+{
+  path: "/new/fs",
+  name: "fs",
+  component: () =>
+    import( /* webpackChunkName: "fs" */ "../views/NewPages/forecast-system.vue"),
+},
+{
+  path: '/new/ztfx', // 专题分析
+  name: 'ztfx',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/ztfx.vue'),
+},
+{
+  path: '/new/fnlyl', // 风能利用率
+  name: 'fnlyl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/fnlyl.vue'),
+},
+{
+  path: '/new/whssl', // 维护损失率
+  name: 'whssl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/whssl.vue'),
+},
+{
+  path: '/new/gzssl', // 故障损失率
+  name: 'gzssl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/gzssl.vue'),
+},
+{
+  path: '/new/xdssl', // 限电损失率
+  name: 'xdssl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/xdssl.vue'),
+},
+{
+  path: '/new/xnssl', // 性能损失率
+  name: 'xnssl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/xnssl.vue'),
+},
+{
+  path: '/new/slssl', // 受累损失率
+  name: 'slssl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/slssl.vue'),
+},
+{
+  path: '/new/mtbf', // mtbf
+  name: 'mtbf',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/mtbf.vue'),
+},
+{
+  path: '/new/mttr', // mttr
+  name: 'mttr',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/mttr.vue'),
+},
+{
+  path: '/new/zfwjsl', // 复位及时率
+  name: 'zfwjsl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/fwjsl.vue'),
+},
+{
+  path: '/new/zztzhl', // 状态转换率
+  name: 'zztzhl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/ztzhl.vue'),
+},
+{
+  path: '/new/zxqjsl', // 消缺及时率
+  name: 'zxqjsl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/xqjsl.vue'),
+},
+{
+  path: '/new/zfdl', // 发电量分析
+  name: 'zfdl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/fdl.vue'),
+},
+{
+  path: '/new/zzhcydl', // 综合场用电量
+  name: 'zzhcydl',
+  component: () => import( /* webpackChunkName: "ztfx" */ '../views/specific/zhcydl.vue'),
+},
+{
+  path: '/new/intelligentalarmcenter',
+  name: 'intelligentalarmcenter',
+  component: () =>
+    import( /* webpackChunkName: "intelligentalarmcenter" */ '../views/NewPages/intelligent-alarm-center.vue'),
+},
+{
+  path: '/new/personnel',
+  name: 'personnel',
+  component: () =>
+    import( /* webpackChunkName: "personnel" */ '../views/NewPages/personnel.vue'),
+},
+{
+  path: '/new/znzhfx/:wtId/:year/:month',
+  name: 'znzhfx',
+  component: () =>
+    import( /* webpackChunkName: "ztfx" */ '../views/NewPages/znzhfx.vue'),
+},
+{
+  path: '/new/alarmcenter',
+  name: 'alarmcenter',
+  component: () =>
+    import( /* webpackChunkName: "personnel" */ '../views/NewPages/alarm-center.vue'),
+},
+{
+  path: '/new/knowledgebase',
+  name: 'knowledgebase',
+  component: () =>
+    import( /* webpackChunkName: "knowledgebase" */ '../views/NewPages/knowledge-base.vue'),
+},
+{
+  path: "/new/dj",
+  name: "dj",
+  component: () =>
+    import( /* webpackChunkName: "dj" */ "../views/NewPages/dj.vue"),
+},
+{
+  path: "/new/dj2",
+  name: "dj2",
+  component: () =>
+    import( /* webpackChunkName: "dj2" */ "../views/NewPages/dj2.vue"),
+},
+{
+  path: "/new/dialog",
+  name: "dialog",
+  component: () =>
+    import( /* webpackChunkName: "dj2" */ "../views/NewPages/dialogs.vue"),
+}, // 三率管理/复位及时率
+{
+  path: '/fwjsl',
+  name: 'fwjsl',
+  component: () =>
+    import('../views/Decision/slgl/fwjsl.vue')
+},
+// 三率管理/状态转换率
+{
+  path: '/ztzhl',
+  name: 'ztzhl',
+  component: () =>
+    import('../views/Decision/slgl/ztzhl.vue')
+},
+// 三率管理/消缺及时率
+{
+  path: '/xqjsl',
+  name: 'xqjsl',
+  component: () =>
+    import('../views/Decision/slgl/xqjsl.vue')
+},
+// 曲线排行榜
+{
+    path:'/qxpclfx',
+    name:'qxpclfx',
+    component:()=> import('../views/nxfx/qxpclfx.vue')
+},
+// 等级评估(单机等级评估管理-量化评级)
+{
+    path:'/djpg',
+    name:'djpg',
+    component:()=> import('../views/HealthControl/gradeassessment.vue')
+},
+{
+  path: "/new/powerforecast2",
+  name: "powerforecast2",
+  component: () => import(/* webpackChunkName: "powerforecast2" */ "../views/NewPages/power-forecast-2.vue"),
+},
+{
+  path: "/new/alarmcenter1",
+  name: "alarmcenter1",
+  component: () => import(/* webpackChunkName: "alarmcenter1" */ "../views/NewPages/alarm-center-1.vue"),
+},
+{
+  path: "/new/tjsj",
+  name: "tjsj",
+  component: () =>
+      import ( /* webpackChunkName: "tjsj" */ "../views/warn/tjsj.vue"),
+},
+{
+  path: "/new/xdgl",
+  name: "xdgl",
+  component: () =>
+      import ( /* webpackChunkName: "xdgl" */ "../views/warn/xdgl.vue"),
+},
+{
+  path: "/new/alarmcenter2",
+  name: "alarmcenter2",
+  component: () =>
+      import ( /* webpackChunkName: "alarmcenter2" */ "../views/NewPages/alarm-center-2.vue"),
+},
+{
+  path: "/new/historysearch",
+  name: "historysearch",
+  component: () => import(/* webpackChunkName: "historysearch" */ "../views/NewPages/history-search.vue"),
+},
 ]
 const router = createRouter({
     history: createWebHashHistory(),
     base: '/zhfx/',
     routes
 })
-
+ 
 router.beforeEach((to, from, next) => {
     next()
 })
-
+ 
 export default router

+ 184 - 75
src/views/layout/Menu.vue

@@ -1,7 +1,8 @@
 <template>
   <div class="menu">
     <ul class="menu-list">
-      <li class="menu-item" v-for="(menu, index) of currentMenu" :key="menu" @click="click(index)" :class="{ active: activeIndex == index }" @mouseenter="subMenuShow(menu.children, index)">
+      <li class="menu-item" v-for="(menu, index) of currentMenu" :key="menu" @click="click(index)" :class="{ active: activeIndex == index }"
+        @mouseenter="subMenuShow(menu.children, index)">
         <router-link v-if="!menu.children" :to="menu.path">
           <el-tooltip class="item" effect="dark" :content="menu.text" placement="right" :show-after="500">
             <div class="menu-icon svg-icon" :class="activeIndex == index ? 'svg-icon-green' : 'svg-icon-gray'">
@@ -37,7 +38,7 @@ export default {
     SvgIcon,
   },
   props: {},
-  data() {
+  data () {
     return {
       currRoot: "monitor",
       menuData: [
@@ -80,7 +81,7 @@ export default {
               icon: "svg-agc",
               path: "/monitor/agc",
             },
-           {
+            {
               text: "风场",
               icon: "svg-wind-site",
               path: "/monitor/windsite/home/MHS_FDC",
@@ -99,19 +100,51 @@ export default {
                 {
                   text: "测点数据查询",
                   icon: "svg-wind-site",
-                  path: "/realSearch"
+                  path: "/realSearch",
                 },
                 {
                   text: "测点历史数据查询",
                   icon: "svg-wind-site",
-                  path: "/historySearch"
-                }
-              ]
-            }
+                  path: "/historySearch",
+                },
+              ],
+            },
+            {
+              text: "预警记录",
+              icon: "svg-wind-site",
+              path: "/new",
+              children: [
+                {
+                  text: "预警管理",
+                  icon: "svg-wind-site",
+                  path: "/new/alarmcenter",
+                },
+                {
+                  text: "预警管理1",
+                  icon: "svg-wind-site",
+                  path: "/new/alarmcenter1",
+                },
+                {
+                  text: "预警管理2",
+                  icon: "svg-wind-site",
+                  path: "/new/alarmcenter2",
+                },
+                {
+                  text: "预警管理3",
+                  icon: "svg-wind-site",
+                  path: "/new/tjsj",
+                },
+                {
+                  text: "预警管理4",
+                  icon: "svg-wind-site",
+                  path: "/new/xdgl",
+                },
+              ],
+            },
           ],
         },
         {
-          id: "singleAnalysis",
+          id: "performanceAnalysis",
           text: "统计分析",
           data: [
             {
@@ -153,8 +186,8 @@ export default {
                   text: "单机饱和度",
                   icon: "svg-wind-site",
                   path: "/wtSaturability",
-                }
-              ]
+                },
+              ],
             },
             {
               text: "风光资源分析",
@@ -165,31 +198,108 @@ export default {
                   text: "风资源分析",
                   icon: "svg-wind-site",
                   path: "/windAnalysis",
-                }
-              ]
+                },
+              ],
             },
             {
-              text: "单机分析",
+              text: "专题分析",
               icon: "svg-wind-site",
               path: "/fgzyfx",
               children: [
                 {
-                  text: "单机分析详细",
+                  text: "综合分析",
                   icon: "svg-wind-site",
-                  path: "/new/dj1",
+                  path: "/new/ztfx",
                 },
                 {
-                  text: "电量预测",
+                  text: "风能利用率",
                   icon: "svg-wind-site",
-                  path: "/new/pf1",
+                  path: "/new/fnlyl",
                 },
                 {
-                  text: "气象预测",
+                  text: "维护损失率",
                   icon: "svg-wind-site",
-                  path: "/new/fs",
-                }
+                  path: "/new/whssl",
+                },
+                {
+                  text: "故障损失率",
+                  icon: "svg-wind-site",
+                  path: "/new/gzssl",
+                },
+                {
+                  text: "限电损失率",
+                  icon: "svg-wind-site",
+                  path: "/new/xdssl",
+                },
+                {
+                  text: "性能损失率",
+                  icon: "svg-wind-site",
+                  path: "/new/xnssl",
+                },
+                {
+                  text: "受累损失率",
+                  icon: "svg-wind-site",
+                  path: "/new/slssl",
+                },
+                {
+                  text: "MTBF分析",
+                  icon: "svg-wind-site",
+                  path: "/new/mtbf",
+                },
+                {
+                  text: "MTTR分析",
+                  icon: "svg-wind-site",
+                  path: "/new/mttr",
+                },
+                {
+                  text: "复位及时率",
+                  icon: "svg-wind-site",
+                  path: "/new/zfwjsl",
+                },
+                {
+                  text: "状态转换率",
+                  icon: "svg-wind-site",
+                  path: "/new/zztzhl",
+                },
+                {
+                  text: "消缺及时率",
+                  icon: "svg-wind-site",
+                  path: "/new/zxqjsl",
+                },
+                {
+                  text: "发电量分析",
+                  icon: "svg-wind-site",
+                  path: "/new/zfdl",
+                },
+                {
+                  text: "综合场用电量",
+                  icon: "svg-wind-site",
+                  path: "/new/zzhcydl",
+                },
               ]
-            }
+            },
+            // {
+            //   text: "单机分析",
+            //   icon: "svg-wind-site",
+            //   path: "/fgzyfx",
+            //   children: [
+            //     {
+            //       text: "单机分析详细",
+            //       icon: "svg-wind-site",
+            //       path: "/new/dj1",
+            //     },
+            //     {
+            //       text: "电量预测",
+            //       icon: "svg-wind-site",
+            //       path: "/new/pf1",
+            //     },
+            //     {
+            //       text: "气象预测",
+            //       icon: "svg-wind-site",
+            //       path: "/new/fs",
+            //     }
+            //   ]
+            // }
           ],
         },
         {
@@ -238,7 +348,6 @@ export default {
                 },
               ],
             },
-            
           ],
         },
         {
@@ -275,16 +384,16 @@ export default {
               icon: "svg-matrix",
               path: "/decision/decision2Xldb",
             },
-            // {
-            //   text: "决策支持3",
-            //   icon: "svg-matrix",
-            //   path: "/decision/decision3",
-            // },
-            // {
-            //   text: "决策支持4",
-            //   icon: "svg-matrix",
-            //   path: "/decision/decision4",
-            // },
+            {
+              text: "性能对标",
+              icon: "svg-matrix",
+              path: "/decision/decision3",
+            },
+            {
+              text: "值际对标",
+              icon: "svg-matrix",
+              path: "/decision/decision4",
+            },
             {
               text: "排行榜",
               icon: "svg-matrix",
@@ -304,32 +413,32 @@ export default {
                   text: "报警排行",
                   icon: "svg-wind-site",
                   path: "/warningRank",
-                }
-              ]
+                },
+              ],
             },
             // 三率管理
             {
-              text:'三率管理',
-              icon:'svg-matrix',
-              path:'/slgl',
-              children:[
+              text: "三率管理",
+              icon: "svg-matrix",
+              path: "/slgl",
+              children: [
                 {
-                  text:'复位及时率',
-                  icon:'svg-wind-site',
-                  path:'/fwjsl'
+                  text: "复位及时率",
+                  icon: "svg-wind-site",
+                  path: "/fwjsl",
                 },
                 {
-                  text:'状态转换率',
-                  icon:'svg-wind-site',
-                  path:'/ztzhl'
+                  text: "状态转换率",
+                  icon: "svg-wind-site",
+                  path: "/ztzhl",
                 },
                 {
-                  text:'消缺及时率',
-                  icon:'svg-wind-site',
-                  path:'/xqjsl'
-                }
-              ]
-            }
+                  text: "消缺及时率",
+                  icon: "svg-wind-site",
+                  path: "/xqjsl",
+                },
+              ],
+            },
           ],
         },
         {
@@ -370,7 +479,7 @@ export default {
               text: "作业指导知识",
               icon: "svg-matrix",
               path: "/knowledge4",
-            }
+            },
           ],
         },
         {
@@ -387,11 +496,11 @@ export default {
     };
   },
   methods: {
-    click(index) {
+    click (index) {
       this.activeIndex = index;
       this.subIndex = null;
     },
-    subMenuShow(children, index) {
+    subMenuShow (children, index) {
       if (children) {
         this.isShowSubMenu = true;
         this.parentIndex = index;
@@ -401,18 +510,18 @@ export default {
       }
       this.subMenu = children;
     },
-    subMenuHide() {
+    subMenuHide () {
       this.isShowSubMenu = false;
       this.parentIndex = null;
       this.subMenu = [];
     },
-    subclick(index) {
+    subclick (index) {
       this.activeIndex = this.parentIndex;
       this.subIndex = index;
     },
   },
   computed: {
-    currentMenu() {
+    currentMenu () {
       let data = this.menuData.filter((t) => {
         return t.id == this.currRoot;
       })[0].data;
@@ -422,7 +531,7 @@ export default {
   watch: {
     // 监听路由
     $route: {
-      handler: function(val, oldVal) {
+      handler: function (val, oldVal) {
         this.menuData.some((element, index) => {
           if (val.path.includes(element.id)) {
             this.currRoot = element.id;
@@ -443,38 +552,38 @@ export default {
   },
 };
 </script>
-
+ 
 <style lang="less">
 .menu {
   padding-top: 1.481vh;
-
+ 
   .menu-list {
     margin: 0;
     padding: 0;
     list-style: none;
-
+ 
     .menu-item {
       padding: 1.481vh 0;
       text-align: center;
-
+ 
       .menu-icon {
         display: flex;
         justify-content: center;
       }
-
+ 
       &.active i {
         color: #05bb4c;
         transition: color 1s;
       }
     }
   }
-
+ 
   i {
     font-size: 2.222vh;
     color: rgba(255, 255, 255, 50%);
   }
 }
-
+ 
 .sub-menu {
   position: absolute;
   top: 0;
@@ -485,19 +594,19 @@ export default {
   background: fade(#192a26, 75);
   border-right: 1px solid fade(@green, 50);
   box-shadow: inset 11px 0px 20px 0px fade(#021412, 60);
-
+ 
   .menu-list {
     margin: 0;
     padding: 0;
     list-style: none;
-
+ 
     .menu-item {
       display: flex;
       text-align: center;
       line-height: 1.5;
       padding: 8px 0;
       background: #121d1c;
-
+ 
       a {
         display: flex;
         width: 100%;
@@ -505,7 +614,7 @@ export default {
         padding: 0 1.4815vh;
         font-size: @fontsize-s;
         text-decoration: unset;
-
+ 
         .menu-icon {
           display: flex;
           align-items: center;
@@ -518,10 +627,10 @@ export default {
           }
         }
       }
-
+ 
       &.active {
         background: #323e70;
-
+ 
         .menu-icon {
           display: flex;
           svg use {
@@ -529,21 +638,21 @@ export default {
           }
         }
       }
-
+ 
       .sub-menu-text {
         margin-left: 1.1111vh;
         color: @gray-l;
       }
-
+ 
       & + .menu-item {
         border-top: 1px solid fade(@darkgray, 40);
       }
     }
   }
-
+ 
   i {
     font-size: 2.222vh;
     color: rgba(255, 255, 255, 50%);
   }
 }
-</style>
+</style>