Browse Source

新增全景监视的状态监视功能,新增报表管理页面

sunzehao 1 month ago
parent
commit
f25a217f4b

+ 4 - 1
.env.development

@@ -29,4 +29,7 @@ VUE_APP_NEW_WISDOM=http://120.46.128.147:8170
 VUE_APP_ALARM=http://120.46.128.147:6015
 # 登录
 VUE_APP_VUE_LOGIN_URL=http://120.46.128.147:48080
-# VUE_APP_VUE_LOGIN_URL=http://192.168.1.102:48080
+# VUE_APP_VUE_LOGIN_URL=http://192.168.1.102:48080
+
+# 报表
+VUE_APP_REPORT=http://11.0.118.58:8070

+ 3 - 1
.env.production

@@ -15,4 +15,6 @@ VUE_APP_NEW_WISDOM=http://10.81.3.155:8170
 # 综合报警
 VUE_APP_ALARM=http://10.81.3.154:6015
 # 登录
-VUE_APP_VUE_LOGIN_URL=http://10.81.3.127:48080
+VUE_APP_VUE_LOGIN_URL=http://10.81.3.127:48080
+# 报表
+VUE_APP_REPORT=http://11.0.118.58:8070

+ 200 - 129
src/router/index.js

@@ -23,7 +23,7 @@ export const asyncRoutes = [
     //全景监视
     {
         path: "/stateMonitor",
-        redirect: "/stateMonitor/lightmatrix",
+        redirect: "/stateMonitor/statusMatrix",
         component: () => import("@/views/stateMonitor"),
         name: "stateMonitor",
         meta: {
@@ -34,8 +34,8 @@ export const asyncRoutes = [
         children: [
             {
                 path: "statusMatrix",
-                component: () => import("@/views/stateMonitor/powerPredictMatrix"),
-                name: "agc",
+                component: () => import("@/views/stateMonitor/Status/Status"),
+                name: "Status",
                 meta: {
                 title: "状态监视",
                 icon: "svg-fengdian",
@@ -597,11 +597,10 @@ export const asyncRoutes = [
         children: [
             {
             path: "statistical",
-            redirect: "stationStatistical/station",
             name: "statistical",
             meta: {
                 title: "统计分析管理",
-                elIcon: "TrendCharts",
+                elIcon: "Collection",
                 permissions: ["jn_dlbb"],
             },
             component: () => import("@/views/sxReport/stationStatistical"),
@@ -618,130 +617,202 @@ export const asyncRoutes = [
                 },
                 ],
             },
-            // {
-            //     path: "reportst",
-            //     meta: {
-            //         title: "统计分析查看",
-            //         elIcon: "Checked",
-            //         permissions: ["jn_zdz"],
-            //     },
-            //     component: () => import("@/views/report/stationReport"),
-            //     children: [
-            //         {
-            //         path: "fdxnyrb",
-            //         name: "fdxnyrb",
-            //         component: () => import("@/views/report/stationReport/fdxnyrb"),
-            //         meta: {
-            //             title: "表低查询",
-            //             icon: "",
-            //             permissions: ["jn_zdz_fdxnyrb"],
-            //         },
-            //         },
-            //         {
-            //         path: "gfxnyrb",
-            //         name: "gfxnyrb",
-            //         component: () => import("@/views/report/stationReport/fdczzdy"),
-            //         meta: {
-            //             title: "公司月度数据",
-            //             icon: "",
-            //             permissions: ["jn_zdz_gfxnyrb"],
-            //         },
-            //         },
-            //     ],
-            // },
-            // {
-            // path: "dayReport",
-            // redirect: "dayReport/dmb",
-            // name: "dayReport",
-            // meta: {
-            //     title: "日报表管理",
-            //     elIcon: "DataAnalysis",
-            //     permissions: ["jn_dlbb"],
-            // },
-            // component: () => import("@/views/report/stationReport"),
-            // children: [
-            //     {
-            //     path: "dmb",
-            //     name: "dmb",
-            //     component: () => import("@/views/report/stationReport/fczybb"),
-            //     meta: {
-            //         title: "生产运营日报外报",
-            //         icon: "",
-            //         permissions: ["jn_dlbb_dmb"],
-            //     },
-            //     },
-            //     ],
-            // },
-            // {
-            //     path: "monthReport",
-            //     redirect: "monthReport/dmb",
-            //     name: "monthReport",
-            //     meta: {
-            //         title: "月报报表管理",
-            //         elIcon: "Platform",
-            //         permissions: ["jn_dlbb"],
-            //     },
-            //     component: () => import("@/views/report/stationReport"),
-            //     children: [
-            //         {
-            //         path: "dmb",
-            //         name: "dmb",
-            //         component: () => import("@/views/report/stationReport/fczybb"),
-            //         meta: {
-            //             title: "MIS月报1",
-            //             icon: "",
-            //             permissions: ["jn_dlbb_dmb"],
-            //         },
-            //         },
-            //     ],
-            // },
-            // {
-            //     path: "companyReport",
-            //     redirect: "companyReport/dmb",
-            //     name: "companyReport",
-            //     meta: {
-            //         title: "集团快报报表管理",
-            //         elIcon: "PieChart",
-            //         permissions: ["jn_dlbb"],
-            //     },
-            //     component: () => import("@/views/report/stationReport"),
-            //     children: [
-            //         {
-            //         path: "dmb",
-            //         name: "dmb",
-            //         component: () => import("@/views/report/stationReport/fczybb"),
-            //         meta: {
-            //             title: "广灵集团快报",
-            //             icon: "",
-            //             permissions: ["jn_dlbb_dmb"],
-            //         },
-            //         },
-            //     ],
-            // },
-            // {
-            //     path: "weekReport",
-            //     redirect: "weekReport/dmb",
-            //     name: "weekReport",
-            //     meta: {
-            //         title: "周报报表管理",
-            //         elIcon: "Odometer",
-            //         permissions: ["jn_dlbb"],
-            //     },
-            //     component: () => import("@/views/report/stationReport"),
-            //     children: [
-            //         {
-            //         path: "dmb",
-            //         name: "dmb",
-            //         component: () => import("@/views/report/stationReport/fczybb"),
-            //         meta: {
-            //             title: "周报",
-            //             icon: "",
-            //             permissions: ["jn_dlbb_dmb"],
-            //         },
-            //         },
-            //     ],
-            // },
-            
+            {
+                path: "analyzeView",
+                name: "analyzeView",
+                meta: {
+                    title: "统计分析查看",
+                    elIcon: "Postcard",
+                    permissions: ["jn_dlbb"],
+                },
+                component: () => import("@/views/sxReport/analyzeView"),
+                children: [
+                    {
+                        path: "lowtablequery",
+                        name: "lowtablequery",
+                        component: () => import("@/views/sxReport/analyzeView/lowtablequery"),
+                        meta: {
+                            title: "表低查询",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "companyMonth",
+                        name: "companyMonth",
+                        component: () => import("@/views/sxReport/analyzeView/companyMonth"),
+                        meta: {
+                            title: "公司月度数据",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "reliabilityAnalysis",
+                        name: "reliabilityAnalysis",
+                        component: () => import("@/views/sxReport/analyzeView/reliabilityAnalysis"),
+                        meta: {
+                            title: "可靠性分析",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "comprehensiveFactory",
+                        name: "comprehensiveFactory",
+                        component: () => import("@/views/sxReport/analyzeView/comprehensiveFactory"),
+                        meta: {
+                            title: "综合厂用电率分析",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "singleMachine",
+                        name: "singleMachine",
+                        component: () => import("@/views/sxReport/analyzeView/singleMachine"),
+                        meta: {
+                            title: "单机故障查询",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "stationFault",
+                        name: "stationFault",
+                        component: () => import("@/views/sxReport/analyzeView/stationFault"),
+                        meta: {
+                            title: "场站故障统计",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                ],
+            },
+            {
+                path: "dayReport",
+                name: "dayReport",
+                meta: {
+                    title: "日报表管理",
+                    elIcon: "Coin",
+                    permissions: ["jn_dlbb"],
+                },
+                component: () => import("@/views/sxReport/dayReport"),
+                children: [
+                    {
+                        path: "foreignReports",
+                        name: "foreignReports",
+                        component: () => import("@/views/sxReport/dayReport/foreignReports"),
+                        meta: {
+                            title: "生产运营日报外报",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "foreignReportsIn",
+                        name: "foreignReportsIn",
+                        component: () => import("@/views/sxReport/dayReport/foreignReportsIn"),
+                        meta: {
+                            title: "生产运营日报内报",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "dailyReportofCentralized",
+                        name: "dailyReportofCentralized",
+                        component: () => import("@/views/sxReport/dayReport/dailyReportofCentralized"),
+                        meta: {
+                            title: "集控中心日报表",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "dataExtraction",
+                        name: "dataExtraction",
+                        component: () => import("@/views/sxReport/dayReport/dataExtraction"),
+                        meta: {
+                            title: "小程序数据提取",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "companyMonthReportO",
+                        name: "companyMonthReportO",
+                        component: () => import("@/views/sxReport/dayReport/companyMonthReportO"),
+                        meta: {
+                            title: "集团月报1",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "companyMonthReportT",
+                        name: "companyMonthReportT",
+                        component: () => import("@/views/sxReport/dayReport/companyMonthReportT"),
+                        meta: {
+                            title: "集团月报2",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "sxxnyMonthReport",
+                        name: "sxxnyMonthReport",
+                        component: () => import("@/views/sxReport/dayReport/sxxnyMonthReport"),
+                        meta: {
+                            title: "山西新能源月报表",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "szhfMonthReport",
+                        name: "szhfMonthReport",
+                        component: () => import("@/views/sxReport/dayReport/szhfMonthReport"),
+                        meta: {
+                            title: "朔州海丰月报表",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    },
+                    {
+                        path: "tbsqMonthReport",
+                        name: "tbsqMonthReport",
+                        component: () => import("@/views/sxReport/dayReport/tbsqMonthReport"),
+                        meta: {
+                            title: "太仆寺旗月报表",
+                            icon: "",
+                            permissions: ["jn_dlbb_dmb"],
+                        }
+                    }
+                ],
+            },
+            {
+                path: "indexAnalysis",
+                name: "indexAnalysis",
+                meta: {
+                    title: "运行指标分析",
+                    elIcon: "DataAnalysis",
+                    permissions: [""],
+                },
+                component: () => import("@/views/sxReport/indexAnalysis"),
+                children: [
+                    {
+                    path: "machineRunning",
+                    name: "machineRunning",
+                    component: () => import("@/views/sxReport/indexAnalysis/machineRunning"),
+                    meta: {
+                        title: "单机运行时间分析",
+                        icon: "",
+                        permissions: ["jn_dlbb_dmb"],
+                    },
+                    },
+                ]
+            },
         ],
     },
 ];

+ 47 - 23
src/views/stateMonitor/Status/Status.vue

@@ -1,17 +1,29 @@
 <template>
-  <HeaderNav @typeFlag="typeFlag" :isAll="true" />
+  <!-- <HeaderNav @typeFlag="typeFlag" :isAll="true" /> -->
   <div class="status">
-    <el-scrollbar>
-      <el-row
-        class="simp_content"
-        style="box-sizing: border-box"
-        v-if="datas.length"
-      >
-        <el-col v-for="(data, index) of datas" :key="index" :span="4.5">
+      <div class="simp_content" v-if="datas.length" >
+        <div class="" v-for="(data, index) of datas" :key="index">
           <StatusPanel :data="data"></StatusPanel>
-        </el-col>
-      </el-row>
-    </el-scrollbar>
+        </div>
+      </div>
+      <div class="statusTable">
+        <el-table
+          :data="statusData"
+          size="mini"
+          stripe
+          ref="stand_table"
+          style="width: 100%"
+        >
+            <el-table-column label="公司/区域/场站" prop="wpName" align="center" />
+            <el-table-column v-for="(it, index) in statusHeader" :key="index"
+            :label="it.label" :prop="it.prop" :align="it.align">
+                <template #header>
+                    <div>{{it.label.split(" ")[0]}}</div>
+                    <div>{{it.label.split(" ")[1]}}</div>
+                </template>
+          </el-table-column>
+        </el-table>
+      </div>
   </div>
 </template>
 
@@ -19,6 +31,7 @@
 import StatusPanel from "@/views/stateMonitor/Status/components/status-panel.vue";
 import HeaderNav from "@/components/headerNav/index.vue";
 import { getStatusDatas } from "@/api/monitor/index.js";
+import dataJson from "./dataJson.json"
 
 export default {
   // 名称
@@ -34,7 +47,8 @@ export default {
       timmer: null, // 遮罩开关
       sourceMap: {}, // 核心数据
       datas: [],
-      // wpId1: "",
+      statusData: [],
+      statusHeader: [],
       wpId: "",
       dwkGzqd: "",
       plGzqd: "",
@@ -53,9 +67,9 @@ export default {
       this.activeTab = activeTab;
       this.tabIndex = activeTab == "all" ? 0 : activeTab == "fc" ? -1 : -2;
       this.enterpriseIndex = enterpriseIndex;
-      this.$nextTick(() => {
-        this.requestData();
-      });
+    //   this.$nextTick(() => {
+    //     this.requestData();
+    //   });
     },
     // 请求服务
     requestData() {
@@ -76,20 +90,25 @@ export default {
   },
   created() {
     let that = this;
-    that.$nextTick(() => {
-      that.requestData();
-    });
+    // that.$nextTick(() => {
+    //   that.requestData();
+    // });
   },
 
   mounted() {
-    this.timmer = setInterval(() => {
-      this.requestData();
-    }, 5000);
+    this.datas = dataJson.data
+    this.$nextTick(() => {
+      this.statusHeader = dataJson.statusHeader
+      this.statusData = dataJson.tableData
+    });
+    // this.timmer = setInterval(() => {
+    //   this.requestData();
+    // }, 5000);
   },
 
   unmounted() {
-    clearInterval(this.timmer);
-    this.timmer = null;
+    // clearInterval(this.timmer);
+    // this.timmer = null;
   },
 };
 </script>
@@ -98,6 +117,7 @@ export default {
 .status {
   height: calc(100% - 32px - 35px);
   overflow: hidden;
+  margin-top: 30px;
   .el-col + .el-col {
     padding-left: 0;
   }
@@ -109,6 +129,10 @@ export default {
     overflow-y: auto;
     overflow-x: hidden;
   }
+  .statusTable{
+    padding: 0 20px;
+    margin-top: 20px;
+  }
 }
 
 </style>

+ 10 - 9
src/views/stateMonitor/Status/components/status-panel.vue

@@ -5,7 +5,7 @@
         <p>{{ data.wpname }}</p>
         <p>
           <!-- <img src="img/images/gridBac.png" /> -->
-          <span>{{ data.jrts }}</span>
+          <span>{{ data.jrts }}</span>
         </p>
       </li>
       <li class="simp_first">
@@ -55,7 +55,7 @@
             <div class="covers" v-if="data.qcjrzt && !data.fggljrzt"></div>
             <div class="grd_fc">
               <p>{{ (data.type == -1 ? "风功" : "光功") + "率:" }}</p>
-              <p>{{ "风功率:" }}</p>
+              <!-- <p>{{ "风功率:" }}</p> -->
               <p class="val_tit">未来15分钟</p>
               <p class="val_name grd_name">{{ data.ycgl.toFixed(2) }}</p>
             </div>
@@ -79,12 +79,13 @@
           <li>
             <div class="covers" v-if="data.qcjrzt && !data.djljrzt"></div>
             <p>电能量表:</p>
-            <p class="val_tit"></p>
+            <p class="val_tit">发电量</p>
             <p class="val_name">
-              {{ data.swdl ? data.swdl.toFixed(2) + "万kWh" : "0万kWh" }}
+              {{ data.swdl.toFixed(2) + "万kWh" }}
             </p>
             <p class="unit_name"></p>
-            <p class="unit_val"></p>
+            <p class="unit_val">
+            </p>
           </li>
         </ul>
       </li>
@@ -222,11 +223,11 @@ li {
         font-family: Arial;
       }
       .yx_val {
-        color: rgba(5, 187, 76, 1);
+        color: rgba(28, 153, 255, 1);
       }
 
       .dj_val {
-        color: rgba(28, 153, 255, 1);
+        color: rgba(5, 187, 76, 1);
       }
 
       .xd_val {
@@ -420,11 +421,11 @@ li {
     }
     div {
       .yx_val {
-        color: rgba(5, 187, 76, 1);
+        color: rgba(28, 153, 255, 1);
       }
 
       .dj_val {
-        color: rgba(28, 153, 255, 1);
+        color: rgba(5, 187, 76, 1);
       }
 
       .xd_val {

+ 423 - 0
src/views/stateMonitor/Status/dataJson.json

@@ -0,0 +1,423 @@
+{
+    "data": [
+        {
+            "wpname": "太旗卧牛山风电场",
+            "jrts": 99,
+            "djts": 0,
+            "yxts": 0,
+            "gzts": 0,
+            "jxts": 0,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 99,
+            "type": -1,
+            "agc002": 0,
+            "agc001": 0,
+            "ycgl": 0,
+            "qxzfs": 0,
+            "qxzfx": 0,
+            "swdl": 0,
+            "qcjrzt": false,
+            "fjjrzt": false,
+            "agcjrzt": false,
+            "fggljrzt": false,
+            "qxzjrzt": false,
+            "djljrzt": false
+        },
+        {
+            "wpname": "右玉高家堡风电场",
+            "jrts": 132,
+            "djts": 38,
+            "yxts": 88,
+            "gzts": 2,
+            "jxts": 0,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 4,
+            "type": -1,
+            "agc002": 23,
+            "agc001": 34,
+            "ycgl": 196.41,
+            "qxzfs": 11.99,
+            "qxzfx": 12,
+            "swdl": 111.72,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "平鲁虎头山风电场",
+            "jrts": 110,
+            "djts": 18,
+            "yxts": 88,
+            "gzts": 0,
+            "jxts": 1,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 3,
+            "type": -1,
+            "agc002": 11,
+            "agc001": 22,
+            "ycgl": 131.8,
+            "qxzfs": 9.7,
+            "qxzfx": 5,
+            "swdl": 114.68,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "广灵劲风风电场",
+            "jrts": 39,
+            "djts": 0,
+            "yxts": 27,
+            "gzts": 0,
+            "jxts": 0,
+            "xdts": 12,
+            "slts": 0,
+            "lxts": 0,
+            "type": -1,
+            "agc002": 12,
+            "agc001": 21,
+            "ycgl": 55.48,
+            "qxzfs": 8.45,
+            "qxzfx": 2,
+            "swdl": 59.73,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "浑源峰岳风电场",
+            "jrts": 80,
+            "djts": 0,
+            "yxts": 76,
+            "gzts": 0,
+            "jxts": 1,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 3,
+            "type": -1,
+            "agc002": 2,
+            "agc001": 3,
+            "ycgl": 53.44,
+            "qxzfs": 7.49,
+            "qxzfx": 3,
+            "swdl": 58.45,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "方山宝塔山风电场",
+            "jrts": 48,
+            "djts": 4,
+            "yxts": 41,
+            "gzts": 0,
+            "jxts": 2,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 1,
+            "type": -1,
+            "agc002": 5,
+            "agc001": 6,
+            "ycgl": 24.59,
+            "qxzfs": 8.62,
+            "qxzfx": 5,
+            "swdl": 45.31,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "阳高采凉山风电场",
+            "jrts": 45,
+            "djts": 22,
+            "yxts": 23,
+            "gzts": 0,
+            "jxts": 0,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 0,
+            "type": -1,
+            "agc002": 6,
+            "agc001": 7,
+            "ycgl": 10.24,
+            "qxzfs": 10.77,
+            "qxzfx": 5,
+            "swdl": 70.37,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        },
+        {
+            "wpname": "熠彩光伏电站",
+            "jrts": 445,
+            "djts": 2,
+            "yxts": 443,
+            "gzts": 0,
+            "jxts": 0,
+            "xdts": 0,
+            "slts": 0,
+            "lxts": 0,
+            "type": -2,
+            "agc002": 8,
+            "agc001": 9,
+            "ycgl": 0,
+            "qxzfs": 0,
+            "qxzfx": 0,
+            "swdl": 11.97,
+            "qcjrzt": true,
+            "fjjrzt": true,
+            "agcjrzt": true,
+            "fggljrzt": true,
+            "qxzjrzt": true,
+            "djljrzt": true
+        }
+    ],
+    "statusHeader": [
+        {
+            "label": "风速 (m/s)",
+            "prop": "fs",
+            "align": "center"
+        },
+        {
+            "label": "实际功率 (MW)",
+            "prop": "sjgl",
+            "align": "center"
+        },
+        {
+            "label": "SCADA发电量 (万kWh)",
+            "prop": "scada",
+            "align": "center"
+        },
+        {
+            "label": "35KV发电量 (万kWh)",
+            "prop": "fdl",
+            "align": "center"
+        },
+        {
+            "label": "上网电量 (万kWh)",
+            "prop": "swdl",
+            "align": "center"
+        },
+        {
+            "label": "维护损失电量 (万kWh)",
+            "prop": "whssdl",
+            "align": "center"
+        },
+        {
+            "label": "故障损失电量 (万kWh)",
+            "prop": "gzssdl",
+            "align": "center"
+        },
+        {
+            "label": "限电损失电量 (万kWh)",
+            "prop": "xdssdl",
+            "align": "center"
+        },
+        {
+            "label": "受累损失电量 (万kWh)",
+            "prop": "slssdl",
+            "align": "center"
+        },
+        {
+            "label": "性能损失电量 (万kWh)",
+            "prop": "xnssdl",
+            "align": "center"
+        },
+        {
+            "label": "风能利用率 (%)",
+            "prop": "fnlyl",
+            "align": "center"
+        },
+        {
+            "label": "保证功率 (MW)",
+            "prop": "bzgl",
+            "align": "center"
+        },
+        {
+            "label": "理论功率 (MW)",
+            "prop": "llgl",
+            "align": "center"
+        },
+        {
+            "label": "理论发电量 (万kWh)",
+            "prop": "llfdl",
+            "align": "center"
+        }
+    ],
+    "tableData": [
+        {
+            "wpName": "山西新能源",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "太旗卧牛山风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "右玉高家堡风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "平鲁虎头山风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "广灵劲风风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "浑源峰岳风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "方山宝塔山风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "阳高采凉山风场",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        },
+        {
+            "wpName": "熠彩光伏电站",
+            "fs": 9.28,
+            "sjgl": 493.49,
+            "scada": 582.36,
+            "fdl": 573.75,
+            "swdl": 565.28,
+            "whssdl": 10.57,
+            "gzssdl": 1.25,
+            "xdssdl": 7.59,
+            "slssdl": 0,
+            "xnssdl": 105.72,
+            "fnlyl": 82.44,
+            "bzgl": 644.44,
+            "llgl": 541.8,
+            "llfdl": 712.64
+        }
+    ]
+}

+ 30 - 0
src/views/sxReport/analyzeView/companyMonth.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$KJCLK2SIT3II85RJVVRZRL3E8JJN1WXV&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/analyzeView/comprehensiveFactory.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$VZCQU9AYVZPOYRQZLRNI9SUUMUZTM6LU$1$I2UXM83KNNCT7VO2VULTTN17NS2U2KSY&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 11 - 0
src/views/sxReport/analyzeView/index.vue

@@ -0,0 +1,11 @@
+<template>
+  <router-view />
+</template>
+
+<script>
+export default {
+  name: "analyzeView",
+};
+</script>
+
+<style></style>

+ 30 - 0
src/views/sxReport/analyzeView/lowtablequery.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT + 
+                "/bi/showreport.do?resid=EBI$12$VZCQU9AYVZPOYRQZLRNI9SUUMUZTM6LU$1$1MNCZ847LDFATJ3MMLRNV3NU7UMICS0Z&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/analyzeView/reliabilityAnalysis.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$9UUFC0MUONU6M4JUCUNZY7WWY6U7CO60$1$TL0BV4O9EMMZ7UYL4KDUOW5CNZLUKC7N&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/analyzeView/singleMachine.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$VZCQU9AYVZPOYRQZLRNI9SUUMUZTM6LU$1$VTLTUU1388OLTBWTI2FUMSUZ57TMBY2K&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/analyzeView/stationFault.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$VZCQU9AYVZPOYRQZLRNI9SUUMUZTM6LU$1$5LLFCU2PMMLCY0EL9KVNUFUFYIL1XLE0&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/companyMonthReportO.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$M4NB9YUE6M10RTL4USLK6TMP1Z4QM0US&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/companyMonthReportT.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$CW0DCKMXWSXASU7WL37COMFUJKW9DC3O&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/dailyReportofCentralized.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$LU4IIUUI15MJZY9UB69MNATMBMUF223S&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/dataExtraction.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$Q1BC10YLAEYSOLF1U4FKKUZV5U1PSFI3&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/foreignReports.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$DNLI0TT44U3KSYQNA5QMLIMLCUNU9SDS&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/foreignReportsIn.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$E7ULXCIWNQTCPC07Q90FUTNN8D7KINQY&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 11 - 0
src/views/sxReport/dayReport/index.vue

@@ -0,0 +1,11 @@
+<template>
+  <router-view />
+</template>
+
+<script>
+export default {
+  name: "dayReport",
+};
+</script>
+
+<style></style>

+ 30 - 0
src/views/sxReport/dayReport/sxxnyMonthReport.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$B1UANYN8ET6Z0NI1ZUIR8UONXR1CDAMU&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/szhfMonthReport.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$1TU0NK9UYN2XSFITFTIJTSOYC7TO3KCS&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 30 - 0
src/views/sxReport/dayReport/tbsqMonthReport.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$0KNZMYUT8FE7UUJKSNJN5USBIQKSSNA6$1$1AL0D09UYNIXIFIACTIOKYNZA7AOLYDY&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>

+ 11 - 0
src/views/sxReport/indexAnalysis/index.vue

@@ -0,0 +1,11 @@
+<template>
+  <router-view />
+</template>
+
+<script>
+export default {
+  name: "indexAnalysis",
+};
+</script>
+
+<style></style>

+ 30 - 0
src/views/sxReport/indexAnalysis/machineRunning.vue

@@ -0,0 +1,30 @@
+<template>
+    <div style="height:100%">
+        <iframe :src="url" width="100%" height="100%" frameborder="0" scrolling="auto"></iframe>
+    </div>
+</template>
+<script>
+    export default {
+        data() {
+            return {
+                url: process.env.VUE_APP_REPORT +
+                 "/bi/showreport.do?resid=EBI$12$VZCQU9AYVZPOYRQZLRNI9SUUMUZTM6LU$1$FBMULWUN3YDPIMLBSY4WA5ROCIB8QTM9&id=admin&pw=admin"
+            }
+        }
+    }
+</script>
+<style lang="less" scope>
+    @titleGray: #9ca5ab;
+    @rowGray: #606769;
+    @darkBack: #536268;
+
+    .knowledge-2 {
+        .el-select {
+            width: 200px;
+        }
+
+        .el-input {
+            width: 200px;
+        }
+    }
+</style>