Browse Source

Merge branch 'wsy' of ssh://61.161.152.110:29418/electronic-map into tjj2

darker 3 years ago
parent
commit
793f8cfb69

+ 329 - 317
src/components/chart/line/marker-line-chart.vue

@@ -1,317 +1,329 @@
-<template>
-  <div class="chart" :id="id"></div>
-</template>
-
-<script>
-import util from "@/helper/util.js";
-import partten from "@/helper/partten.js";
-import * as echarts from "echarts";
-
-export default {
-  name: "double-line-chart",
-  componentName: "double-line-chart",
-  props: {
-    width: {
-      type: String,
-      default: "100%",
-    },
-    height: {
-      type: String,
-      default: "13.889vh",
-    },
-    // 传入数据
-    list: {
-      type: Array,
-      default: () => [
-        {
-          title: "绿线",
-          value: [
-            {
-              text: "",
-              value: 0,
-            },
-            {
-              text: "0:00",
-              value: 20,
-            },
-            {
-              text: "10:00",
-              value: 1,
-            },
-            {
-              text: "11:00",
-              value: 40,
-            },
-            {
-              text: "12:00",
-              value: 10,
-            },
-            {
-              text: "13:00",
-              value: 15,
-            },
-            {
-              text: "14:00",
-              value: 30,
-            },
-            {
-              text: "15:00",
-              value: 40,
-            },
-            {
-              text: "",
-              value: 10,
-            },
-          ],
-        },
-        {
-          title: "黄线",
-          value: [
-            {
-              text: "",
-              value: 0,
-            },
-            {
-              text: "0:00",
-              value: 40,
-            },
-            {
-              text: "10:00",
-              value: 20,
-            },
-            {
-              text: "11:00",
-              value: 20,
-            },
-            {
-              text: "12:00",
-              value: 10,
-            },
-            {
-              text: "13:00",
-              value: 40,
-            },
-            {
-              text: "14:00",
-              value: 50,
-            },
-            {
-              text: "15:00",
-              value: 40,
-            },
-            {
-              text: "",
-              value: 10,
-            },
-          ],
-        },
-      ],
-    },
-    // 单位
-    unit: {
-      type: String,
-      default: "MW",
-    },
-    showLegend: {
-      type: Boolean,
-      default: false,
-    },
-  },
-  data() {
-    return {
-      id: "",
-      chart: null,
-      color: ["#05bb4c", "#f8de5b", "#4b55ae", "#fa8c16"],
-    };
-  },
-  computed: {
-    colorValue() {
-      return partten.getColor(this.color);
-    },
-    datas() {
-      return this.list.map((t) => {
-        return t.value;
-      });
-    },
-    legend() {
-      return this.list.map((t) => {
-        return t.title;
-      });
-    },
-    xdata() {
-      return this.list[0].value.map((t) => {
-        return t.text;
-      });
-    },
-    series() {
-      let that = this;
-      let result = [];
-
-      this.list.forEach((value, index) => {
-        result.push({
-          name: value.title,
-          type: "line",
-          smooth: true,
-          showSymbol: false,
-          zlevel: index,
-          lineStyle: {
-            normal: {
-              color: this.color[index],
-              width: 1,
-            },
-          },
-          markPoint: {},
-          // index == 0
-          //   ? {
-          //       data: [
-          //         {
-          //           type: "average",
-          //           name: "保证功率",
-          //           symbolSize: 0,
-          //           label: {
-          //             offset: [0, -40],
-          //             formatter: function(param) {
-          //               return `{title|${param.name}}` + "\n" + `{value| ${param.value}${that.unit}}`;
-          //             },
-          //             backgroundColor: partten.getColor("green") + 33,
-          //             borderColor: partten.getColor("green"),
-          //             borderWidth: 0.5,
-          //             borderRadius: 2,
-          //             padding: 8,
-          //             rich: {
-          //               title: {
-          //                 color: partten.getColor("green"),
-          //                 fontSize: 12,
-          //               },
-          //               value: {
-          //                 color: "#fff",
-          //                 fontSize: 16,
-          //                 padding: [12, 0, 0, -4],
-          //               },
-          //             },
-          //           },
-          //         },
-          //       ],
-          //     }
-          //   : {},
-          yAxisIndex: value.yAxisIndex,
-          data: value.value.map((t) => {
-            return t.value;
-          }),
-        });
-      });
-
-      return result;
-    },
-    yAxis() {
-      let result = [];
-      result.push({
-        type: "value",
-        name: this.unit,
-        axisLabel: {
-          formatter: "{value}",
-          fontSize: util.vh(14),
-        },
-        boundaryGap: false,
-        //分格线
-        splitLine: {
-          show: true,
-          lineStyle: {
-            color: partten.getColor("gray"),
-            type: "dashed",
-          },
-        },
-      });
-      return result;
-    },
-  },
-  methods: {
-    resize() {},
-    initChart() {
-      const chart = echarts.init(this.$el);
-
-      let option = {
-        color: this.color,
-        tooltip: {
-          trigger: "axis",
-          backgroundColor: "rgba(0,0,0,0.4)",
-          borderColor: partten.getColor("gray"),
-          textStyle: {
-            color: "#fff",
-            fontSize: util.vh(16),
-          },
-        },
-        legend: {
-          show: this.showLegend,
-          data: this.legend,
-          right: 56,
-          icon: "circle",
-          itemWidth: 6,
-          inactiveColor: partten.getColor("gray"),
-          textStyle: {
-            color: partten.getColor("grayl"),
-            fontSize: 12,
-          },
-        },
-        grid: {
-          top: 16,
-          left: 32,
-          right: 8,
-          bottom: 24,
-        },
-        xAxis: [
-          {
-            type: "category",
-            boundaryGap: false,
-            axisLabel: {
-              formatter: "{value}",
-              textStyle: {
-                color: partten.getColor("gray"),
-                fontSize: util.vh(14),
-              },
-            },
-            data: this.xdata,
-          },
-        ],
-        yAxis: this.yAxis,
-        series: this.series,
-      };
-
-      chart.clear();
-      chart.setOption(option);
-
-      this.resize = function() {
-        chart.resize();
-      };
-
-      window.addEventListener("resize", this.resize);
-    },
-  },
-  created() {
-    this.id = "pie-chart-" + util.newGUID();
-  },
-  mounted() {
-    this.$nextTick(() => {
-      this.$el.style.width = this.width;
-      this.$el.style.height = this.height;
-      this.initChart();
-    });
-  },
-  updated() {
-    this.$nextTick(() => {
-      this.initChart();
-    });
-  },
-  unmounted() {
-    window.removeEventListener("resize", this.resize);
-  },
-};
-</script>
-
-<style lang="less">
-.chart {
-  width: 100%;
-  height: 100%;
-  display: inline-block;
-}
-</style>
+<template>
+  <div class="chart" :id="id"></div>
+</template>
+
+<script>
+import util from "@/helper/util.js";
+import partten from "@/helper/partten.js";
+import * as echarts from "echarts";
+
+export default {
+  name: "double-line-chart",
+  componentName: "double-line-chart",
+  props: {
+    isChartClick:{
+      type: Boolean,
+      default: false,
+    },
+    width: {
+      type: String,
+      default: "100%",
+    },
+    height: {
+      type: String,
+      default: "13.889vh",
+    },
+    // 传入数据
+    list: {
+      type: Array,
+      default: () => [
+        {
+          title: "绿线",
+          value: [
+            {
+              text: "",
+              value: 0,
+            },
+            {
+              text: "0:00",
+              value: 20,
+            },
+            {
+              text: "10:00",
+              value: 1,
+            },
+            {
+              text: "11:00",
+              value: 40,
+            },
+            {
+              text: "12:00",
+              value: 10,
+            },
+            {
+              text: "13:00",
+              value: 15,
+            },
+            {
+              text: "14:00",
+              value: 30,
+            },
+            {
+              text: "15:00",
+              value: 40,
+            },
+            {
+              text: "",
+              value: 10,
+            },
+          ],
+        },
+        {
+          title: "黄线",
+          value: [
+            {
+              text: "",
+              value: 0,
+            },
+            {
+              text: "0:00",
+              value: 40,
+            },
+            {
+              text: "10:00",
+              value: 20,
+            },
+            {
+              text: "11:00",
+              value: 20,
+            },
+            {
+              text: "12:00",
+              value: 10,
+            },
+            {
+              text: "13:00",
+              value: 40,
+            },
+            {
+              text: "14:00",
+              value: 50,
+            },
+            {
+              text: "15:00",
+              value: 40,
+            },
+            {
+              text: "",
+              value: 10,
+            },
+          ],
+        },
+      ],
+    },
+    // 单位
+    unit: {
+      type: String,
+      default: "MW",
+    },
+    showLegend: {
+      type: Boolean,
+      default: false,
+    },
+  },
+  data() {
+    return {
+      id: "",
+      chart: null,
+      color: ["#05bb4c", "#f8de5b", "#4b55ae", "#fa8c16"],
+    };
+  },
+  computed: {
+    colorValue() {
+      return partten.getColor(this.color);
+    },
+    datas() {
+      return this.list.map((t) => {
+        return t.value;
+      });
+    },
+    legend() {
+      return this.list.map((t) => {
+        return t.title;
+      });
+    },
+    xdata() {
+      return this.list[0].value.map((t) => {
+        return t.text;
+      });
+    },
+    series() {
+      let that = this;
+      let result = [];
+
+      this.list.forEach((value, index) => {
+        result.push({
+          name: value.title,
+          type: "line",
+          smooth: true,
+          showSymbol: false,
+          zlevel: index,
+          lineStyle: {
+            normal: {
+              color: this.color[index],
+              width: 1,
+            },
+          },
+          markPoint: {},
+          // index == 0
+          //   ? {
+          //       data: [
+          //         {
+          //           type: "average",
+          //           name: "保证功率",
+          //           symbolSize: 0,
+          //           label: {
+          //             offset: [0, -40],
+          //             formatter: function(param) {
+          //               return `{title|${param.name}}` + "\n" + `{value| ${param.value}${that.unit}}`;
+          //             },
+          //             backgroundColor: partten.getColor("green") + 33,
+          //             borderColor: partten.getColor("green"),
+          //             borderWidth: 0.5,
+          //             borderRadius: 2,
+          //             padding: 8,
+          //             rich: {
+          //               title: {
+          //                 color: partten.getColor("green"),
+          //                 fontSize: 12,
+          //               },
+          //               value: {
+          //                 color: "#fff",
+          //                 fontSize: 16,
+          //                 padding: [12, 0, 0, -4],
+          //               },
+          //             },
+          //           },
+          //         },
+          //       ],
+          //     }
+          //   : {},
+          yAxisIndex: value.yAxisIndex,
+          data: value.value.map((t) => {
+            return t.value;
+          }),
+        });
+      });
+
+      return result;
+    },
+    yAxis() {
+      let result = [];
+      result.push({
+        type: "value",
+        name: this.unit,
+        axisLabel: {
+          formatter: "{value}",
+          fontSize: util.vh(14),
+        },
+        boundaryGap: false,
+        //分格线
+        splitLine: {
+          show: true,
+          lineStyle: {
+            color: partten.getColor("gray"),
+            type: "dashed",
+          },
+        },
+      });
+      return result;
+    },
+  },
+  methods: {
+    resize() {},
+    initChart() {
+      let that = this;
+      const chart = echarts.init(this.$el);
+
+      let option = {
+        color: this.color,
+        tooltip: {
+          trigger: "axis",
+          backgroundColor: "rgba(0,0,0,0.4)",
+          borderColor: partten.getColor("gray"),
+          textStyle: {
+            color: "#fff",
+            fontSize: util.vh(16),
+          },
+        },
+        legend: {
+          show: this.showLegend,
+          data: this.legend,
+          right: 56,
+          icon: "circle",
+          itemWidth: 6,
+          inactiveColor: partten.getColor("gray"),
+          textStyle: {
+            color: partten.getColor("grayl"),
+            fontSize: 12,
+          },
+        },
+        grid: {
+          top: 16,
+          left: 32,
+          right: 8,
+          bottom: 24,
+        },
+        xAxis: [
+          {
+            type: "category",
+            boundaryGap: false,
+            axisLabel: {
+              formatter: "{value}",
+              textStyle: {
+                color: partten.getColor("gray"),
+                fontSize: util.vh(14),
+              },
+            },
+            data: this.xdata,
+          },
+        ],
+        yAxis: this.yAxis,
+        series: this.series,
+      };
+      chart.clear();
+      chart.setOption(option);
+      if(this.isChartClick){
+        chart.getZr().off("click");
+        chart.getZr().on("click", (params) => {
+          that.chartClick();
+        });
+      }
+      this.resize = function() {
+        chart.resize();
+      };
+
+      window.addEventListener("resize", this.resize);
+    },
+    chartClick(){
+      this.$emit("chartClick");
+    }
+  },
+  created() {
+    this.id = "pie-chart-" + util.newGUID();
+  },
+  mounted() {
+    this.$nextTick(() => {
+      this.$el.style.width = this.width;
+      this.$el.style.height = this.height;
+      this.initChart();
+    });
+  },
+  updated() {
+    this.$nextTick(() => {
+      this.initChart();
+    });
+  },
+  unmounted() {
+    window.removeEventListener("resize", this.resize);
+  },
+};
+</script>
+
+<style lang="less">
+.chart {
+  width: 100%;
+  height: 100%;
+  display: inline-block;
+}
+</style>

+ 7 - 1
src/components/coms/table/table2.vue

@@ -7,6 +7,7 @@
     style="width: 100%"
     @cell-click="onClick"
     @header-click="onHeaderClick"
+    ref="table"
   >
     <el-table-column
       v-for="(col, cindex) of data.column"
@@ -177,7 +178,12 @@ export default {
   mounted() {
     // 渲染后
   },
-  beforeUpdate() {},
+  beforeUpdate() {
+    this.$nextTick(() => { //在数据加载完,重新渲染表格
+      // 数据刷新是闪烁,加上这个就不闪了 
+      this.$refs['table'].doLayout();
+    })
+  },
   updated() {},
 };
 </script>

+ 314 - 305
src/views/Agc/components/agc-panel.vue

@@ -1,305 +1,314 @@
-<template>
-  <ComPanel v-if="data && data.jcxx" :title="data.jcxx.name || '---'" :icon="data.jcxx.icon" :subTitle="data.jcxx.ddmc || '---'" :color="data.jcxx.color">
-    <table class="panel-table">
-      <tbody>
-        <tr>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">有功设定限制</span>
-              <span class="data-item-count">{{ data.jcxx.AGC002 }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">出线功率</span>
-              <span class="data-item-count">{{ data.jcxx.AGC001 }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-        </tr>
-        <tr>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">AGC可调上限</span>
-              <span class="data-item-count">{{ data.jcxx.AGC003 }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">理论功率</span>
-              <span class="data-item-count">{{ data.jcxx.ZZSGL }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-        </tr>
-        <tr>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">AGC可调下限</span>
-              <span class="data-item-count">{{ data.jcxx.AGC004 }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-          <td colspan="2">
-            <div class="data-item">
-              <span class="data-item-name">预测功率</span>
-              <span class="data-item-count">{{ data.jcxx.ycgl || 0 }}</span>
-              <span class="data-item-unit">MW</span>
-            </div>
-          </td>
-        </tr>
-        <tr>
-          <td>
-            <div class="data-item">
-              <span class="data-item-name">AGC投入</span>
-              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC006 === 1 ? 'red' : 'green')"></i>
-            </div>
-          </td>
-          <td>
-            <div class="data-item">
-              <span class="data-item-name">AGC远方</span>
-              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC005 === 1 ? 'red' : 'green')"></i>
-            </div>
-          </td>
-          <td>
-            <div class="data-item">
-              <span class="data-item-name">有功增闭锁</span>
-              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC008 === 1 ? 'red' : 'green')"></i>
-            </div>
-          </td>
-          <td>
-            <div class="data-item">
-              <span class="data-item-name">有功减闭锁</span>
-              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC007 === 1 ? 'red' : 'green')"></i>
-            </div>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-    <!-- 查看默认实例去除末尾参数 :list 即可 -->
-    <DoubleLineChart v-if="chartType === 'double'" height="13.889vh" :list="data.tb || chartData"></DoubleLineChart>
-    <MultipleLineChart v-if="chartType === 'multiple'" height="13.889vh" :list="data.tb || chartData" :hoverType="'axis'"></MultipleLineChart>
-  </ComPanel>
-</template>
-
-<script>
-import ComPanel from "@com/coms/panel/panel2.vue";
-import DoubleLineChart from "@com/chart/line/marker-line-chart.vue";
-import MultipleLineChart from "@com/chart/line/multiple-line-chart.vue";
-export default {
-  // 名称
-  name: "AgcPanel",
-  // 使用组件
-  components: {
-    ComPanel,
-    DoubleLineChart,
-    MultipleLineChart,
-  },
-  // 传入参数
-  props: {
-    data: Object,
-    chartType: {
-      type: String,
-      default: "double",
-    },
-    chartData: {
-      type: Array,
-      default: [
-        {
-          title: "",
-          smooth: true,
-          value: [],
-        },
-      ],
-    },
-  },
-  // 自定义事件
-  emits: {},
-  // 数据
-  data() {
-    return {
-      list: [
-        {
-          title: "平均风速",
-          yAxisIndex: 1, // 使用单位
-          value: [
-            {
-              text: "1日",
-              value: 0,
-            },
-            {
-              text: "2日",
-              value: 1,
-            },
-            {
-              text: "3日",
-              value: 0,
-            },
-            {
-              text: "4日",
-              value: 1,
-            },
-            {
-              text: "5日",
-              value: 0,
-            },
-            {
-              text: "6日",
-              value: 1,
-            },
-            {
-              text: "7日",
-              value: 0,
-            },
-          ],
-        },
-        {
-          title: "应发功率",
-          yAxisIndex: 0,
-          value: [
-            {
-              text: "1日",
-              value: 4,
-            },
-            {
-              text: "2日",
-              value: 2,
-            },
-            {
-              text: "3日",
-              value: 4,
-            },
-            {
-              text: "4日",
-              value: 2,
-            },
-            {
-              text: "5日",
-              value: 4,
-            },
-            {
-              text: "6日",
-              value: 2,
-            },
-            {
-              text: "7日",
-              value: 4,
-            },
-          ],
-        },
-        {
-          title: "实际功率",
-          yAxisIndex: 0,
-          value: [
-            {
-              text: "1日",
-              value: 1,
-            },
-            {
-              text: "2日",
-              value: 3,
-            },
-            {
-              text: "3日",
-              value: 1,
-            },
-            {
-              text: "4日",
-              value: 3,
-            },
-            {
-              text: "5日",
-              value: 1,
-            },
-            {
-              text: "6日",
-              value: 3,
-            },
-            {
-              text: "7日",
-              value: 1,
-            },
-          ],
-        },
-      ],
-    };
-  },
-  // 函数
-  methods: {},
-  // 生命周期钩子
-  beforeCreate() {
-    // 创建前
-  },
-  created() {
-    // 创建后
-  },
-  beforeMount() {
-    // 渲染前
-  },
-  mounted() {
-    // 渲染后
-    this.list = this.data || [
-      {
-        title: "",
-        yAxisIndex: 1, // 使用单位
-        value: [],
-      },
-    ];
-  },
-  beforeUpdate() {
-    // 数据更新前
-  },
-  updated() {
-    // 数据更新后
-  },
-  watch: {
-    daya(res) {
-      this.list = res;
-    },
-  },
-};
-</script>
-
-<style lang="less">
-.panel-table {
-  width: 100%;
-
-  .data-item {
-    background-color: fade(@gray, 20);
-    padding: 0.278vh;
-    padding-left: 0.7407vh;
-    font-size: 1.204vh;
-    display: flex;
-    flex-direction: row;
-
-    .data-item-name {
-      color: @gray;
-    }
-
-    .data-item-count {
-      color: @green;
-      margin-left: auto;
-      margin-right: 0.556vh;
-    }
-
-    .data-item-unit {
-      color: @gray;
-    }
-
-    .data-item-icon {
-      margin-left: auto;
-      font-size: @fontsize-s;
-    }
-  }
-}
-
-.green {
-  color: @green;
-}
-
-.red {
-  color: @red;
-}
-</style>
+<template>
+  <ComPanel v-if="data && data.jcxx" :title="data.jcxx.name || '---'" :icon="data.jcxx.icon" :subTitle="data.jcxx.ddmc || '---'" :color="data.jcxx.color">
+    <table class="panel-table">
+      <tbody>
+        <tr>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">有功设定限制</span>
+              <span class="data-item-count">{{ data.jcxx.AGC002 }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">出线功率</span>
+              <span class="data-item-count">{{ data.jcxx.AGC001 }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+        </tr>
+        <tr>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">AGC可调上限</span>
+              <span class="data-item-count">{{ data.jcxx.AGC003 }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">理论功率</span>
+              <span class="data-item-count">{{ data.jcxx.ZZSGL }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+        </tr>
+        <tr>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">AGC可调下限</span>
+              <span class="data-item-count">{{ data.jcxx.AGC004 }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+          <td colspan="2">
+            <div class="data-item">
+              <span class="data-item-name">预测功率</span>
+              <span class="data-item-count">{{ data.jcxx.ycgl || 0 }}</span>
+              <span class="data-item-unit">MW</span>
+            </div>
+          </td>
+        </tr>
+        <tr>
+          <td>
+            <div class="data-item">
+              <span class="data-item-name">AGC投入</span>
+              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC006 === 1 ? 'red' : 'green')"></i>
+            </div>
+          </td>
+          <td>
+            <div class="data-item">
+              <span class="data-item-name">AGC远方</span>
+              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC005 === 1 ? 'red' : 'green')"></i>
+            </div>
+          </td>
+          <td>
+            <div class="data-item">
+              <span class="data-item-name">有功增闭锁</span>
+              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC008 === 1 ? 'red' : 'green')"></i>
+            </div>
+          </td>
+          <td>
+            <div class="data-item">
+              <span class="data-item-name">有功减闭锁</span>
+              <i :class="'data-item-icon fa fa-chrome ' + (data.jcxx.AGC007 === 1 ? 'red' : 'green')"></i>
+            </div>
+          </td>
+        </tr>
+      </tbody>
+    </table>
+    <!-- 查看默认实例去除末尾参数 :list 即可 -->
+    <DoubleLineChart v-if="chartType === 'double'" height="13.889vh" :list="data.tb || chartData" @chartClick="chartClick($event)" :isChartClick="true"></DoubleLineChart>
+    <!-- <MultipleLineChart v-if="chartType === 'multiple'" height="13.889vh" :list="data.tb || chartData" :hoverType="'axis'"></MultipleLineChart> -->
+  	<el-dialog v-model="dialogVisible" width="70%" top="10vh" custom-class="modal"
+			:close-on-click-modal="true">
+      <DoubleLineChart height="70vh" :list="data.tb || chartData" ></DoubleLineChart>
+		</el-dialog>
+  </ComPanel>
+</template>
+
+<script>
+import ComPanel from "@com/coms/panel/panel2.vue";
+import DoubleLineChart from "@com/chart/line/marker-line-chart.vue";
+import MultipleLineChart from "@com/chart/line/multiple-line-chart.vue";
+export default {
+  // 名称
+  name: "AgcPanel",
+  // 使用组件
+  components: {
+    ComPanel,
+    DoubleLineChart,
+    MultipleLineChart,
+  },
+  // 传入参数
+  props: {
+    data: Object,
+    chartType: {
+      type: String,
+      default: "double",
+    },
+    chartData: {
+      type: Array,
+      default: [
+        {
+          title: "",
+          smooth: true,
+          value: [],
+        },
+      ],
+    },
+  },
+  // 自定义事件
+  emits: {},
+  // 数据
+  data() {
+    return {
+      dialogVisible:false,
+      list: [
+        {
+          title: "平均风速",
+          yAxisIndex: 1, // 使用单位
+          value: [
+            {
+              text: "1日",
+              value: 0,
+            },
+            {
+              text: "2日",
+              value: 1,
+            },
+            {
+              text: "3日",
+              value: 0,
+            },
+            {
+              text: "4日",
+              value: 1,
+            },
+            {
+              text: "5日",
+              value: 0,
+            },
+            {
+              text: "6日",
+              value: 1,
+            },
+            {
+              text: "7日",
+              value: 0,
+            },
+          ],
+        },
+        {
+          title: "应发功率",
+          yAxisIndex: 0,
+          value: [
+            {
+              text: "1日",
+              value: 4,
+            },
+            {
+              text: "2日",
+              value: 2,
+            },
+            {
+              text: "3日",
+              value: 4,
+            },
+            {
+              text: "4日",
+              value: 2,
+            },
+            {
+              text: "5日",
+              value: 4,
+            },
+            {
+              text: "6日",
+              value: 2,
+            },
+            {
+              text: "7日",
+              value: 4,
+            },
+          ],
+        },
+        {
+          title: "实际功率",
+          yAxisIndex: 0,
+          value: [
+            {
+              text: "1日",
+              value: 1,
+            },
+            {
+              text: "2日",
+              value: 3,
+            },
+            {
+              text: "3日",
+              value: 1,
+            },
+            {
+              text: "4日",
+              value: 3,
+            },
+            {
+              text: "5日",
+              value: 1,
+            },
+            {
+              text: "6日",
+              value: 3,
+            },
+            {
+              text: "7日",
+              value: 1,
+            },
+          ],
+        },
+      ],
+    };
+  },
+  // 函数
+  methods: {
+    chartClick(){
+      this.dialogVisible = true;
+    }
+  },
+  // 生命周期钩子
+  beforeCreate() {
+    // 创建前
+  },
+  created() {
+    // 创建后
+  },
+  beforeMount() {
+    // 渲染前
+  },
+  mounted() {
+    // 渲染后
+    this.list = this.data || [
+      {
+        title: "",
+        yAxisIndex: 1, // 使用单位
+        value: [],
+      },
+    ];
+  },
+  beforeUpdate() {
+    // 数据更新前
+  },
+  updated() {
+    // 数据更新后
+  },
+  watch: {
+    daya(res) {
+      this.list = res;
+    },
+  },
+};
+</script>
+
+<style lang="less">
+.panel-table {
+  width: 100%;
+
+  .data-item {
+    background-color: fade(@gray, 20);
+    padding: 0.278vh;
+    padding-left: 0.7407vh;
+    font-size: 1.204vh;
+    display: flex;
+    flex-direction: row;
+
+    .data-item-name {
+      color: @gray;
+    }
+
+    .data-item-count {
+      color: @green;
+      margin-left: auto;
+      margin-right: 0.556vh;
+    }
+
+    .data-item-unit {
+      color: @gray;
+    }
+
+    .data-item-icon {
+      margin-left: auto;
+      font-size: @fontsize-s;
+    }
+  }
+}
+
+.green {
+  color: @green;
+}
+
+.red {
+  color: @red;
+}
+</style>

+ 3 - 0
src/views/Decision/Decision3.vue

@@ -48,6 +48,7 @@
 				<button class="btn" v-show="detailShow==2" @click="back">返回</button>
 			</div>
 		</div>
+		<toolbar-panel title="性能对标" :showLine="false"></toolbar-panel>
 		<!-- 列表 -->
 		<div v-show="detailShow==1">
 			<div class="mg-b-16">
@@ -671,6 +672,7 @@
 						}
 					}
 				],
+				dbData:[]
 			};
 		},
 		created() {
@@ -803,6 +805,7 @@
 				var data = that.dbData;
 				that.windNum = data[0].name;
 				that.windNum2 = data[1].name;
+				console.log(data[0],data[1]);
 				that.tabs = [{
 					name: "发电量",
 					windData1: data[0].fdl,

+ 4 - 0
src/views/SandTable/SandTable.vue

@@ -751,6 +751,10 @@ export default {
               name: ele.relatePartsText,
             });
           }
+		  
+		  // 这句warnChartData.pop();在项目演示结束后删除,因为条数过多,显示导致侧边栏和图表图层重合而加的
+		  warnChartData.pop();
+		 
           that.warnChartData = warnChartData;
         },
       });

+ 16 - 39
src/views/WindSite/WindSite.vue

@@ -26,6 +26,7 @@
 
 <script>
 	import SvgIcon from "@com/coms/icon/svg-icon.vue";
+	import $ from "jquery";
 	export default {
 		// 名称
 		name: "WindSite",
@@ -43,58 +44,30 @@
 						path: "/monitor/windsite/home",
 					},
 					{
-						icon: "svg-s指标列表",
-						path: "/monitor/windsite/draughtfanlist",
+						icon: "svg-s总貌",
+						path: "/monitor/windsite/generalappearance",
 					},
-					// {
-					//   icon: "svg-agc",
-					//   path: "/monitor/windsite/matrix",
-					// },
-					// {
-					//   icon: "svg-agc",
-					//   path: "/monitor/windsite/lightmatrix",
-					// },
-					// {
-					//   icon: "svg-intranet-involvement",
-					//   path: "/monitor/windsite/box",
-					// },
-					// {
-					//   icon: "svg-matrix",
-					//   path: "/monitor/windsite/info",
-					// },
 					{
-						icon: "svg-s测风塔",
-						path: "/monitor/windsite/tower",
+						icon: "svg-s升压站",
+						path: "/monitor/windsite/boosterstation",
 					},
-					// {
-					//   icon: "svg-easy-compass",
-					//   path: "/monitor/windsite/Inverter-Info",
-					// },
-					// {
-					//   icon: "svg-easy-compass",
-					//   path: "/monitor/windsite/map",
-					// },
-					// {
-					//   icon: "svg-easy-compass",
-					//   path: "/monitor/windsite/map1",
-					// },
 					{
 						icon: "svg-matrix",
 						path: "/monitor/windsite/matrix",
 					},
 					{
-						icon: "svg-s总貌",
-						path: "/monitor/windsite/generalappearance",
-					},
-					{
-						icon: "svg-s升压站",
-						path: "/monitor/windsite/boosterstation",
+						icon: "svg-s测风塔",
+						path: "/monitor/windsite/tower",
 					},
 					{
 						icon: "svg-s地图",
 						path: "/monitor/windsite/map",
 					},
 					{
+						icon: "svg-s指标列表",
+						path: "/monitor/windsite/draughtfanlist",
+					},
+					{
 						icon: "svg-wind-site",
 						path: this.windsitePath,
 					},
@@ -106,9 +79,10 @@
 			jumpUrl() {
 				var p = this.$route.path.split('/');
 				var pData = p[p.length - 1].split('_');
+				var fdjData = pData[0].substr(0,1);
 				var wpId = p[p.length - 1];
 				if (wpId.indexOf("FDC") !== -1) {
-					this.windsitePath = `/monitor/windsite/info/${wpId}/${pData[0] + '01_01'}`
+					this.windsitePath = `/monitor/windsite/info/${wpId}/${fdjData[0] + 'G01_01'}`
 				} else {
 					this.windsitePath = `../../windsite/inverter-info/${wpId}/${pData[0] + '01_01'}`
 				}
@@ -117,6 +91,9 @@
 				if (index == 7) { //风场
 					this.jumpUrl();
 					this.menu(index);
+					$('.page-common-body-menu-box a').eq(7).hide();
+				}else{
+					$('.page-common-body-menu-box a').eq(7).show();
 				}
 				this.activeIndex = index;
 			},

+ 1 - 1
src/views/WindSite/components/generalappearance/mhs.vue

@@ -4,7 +4,7 @@
       <el-col :span="24">
         <previewPicture v-if="datas">
           <template v-slot:svg>
-           <svg class="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="图层_1" x="0px" y="0px" width="1395.332px" height="526.828px" viewBox="0 0 1395.332 526.828" enable-background="new 0 0 1395.332 526.828" xml:space="preserve">
+           <svg class="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="图层_1" x="0px" y="0px" width="1410.332px" height="526.828px" viewBox="0 0 1410.332 526.828" enable-background="new 0 0 1395.332 526.828" xml:space="preserve">
            <g id="s_x5F_fan">
            	<g>
            		<g>

+ 173 - 0
src/views/WindSite/components/generalappearance/qs.vue

@@ -5,6 +5,179 @@
         <previewPicture v-if="datas">
           <template v-slot:svg>
             <svg class="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" id="图层_1" x="0px" y="0px" width="1830px" height="804px" viewBox="0 0 1830 804" enable-background="new 0 0 1830 804" xml:space="preserve">
+				<g xmlns="http://www.w3.org/2000/svg">
+					<g id="s_x5F_fan">
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1735.157,34.217l-1.009,21.059c0,0,0.805,0.318,1.509,0.318c0.73,0.002,1.574-0.307,1.574-0.307      l-0.836-21.067L1735.157,34.217L1735.157,34.217z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<path fill="#AD4092" d="M1734.939,33.447l1.609,0.621c0,0,4.275-8.898,4.593-13.726        C1737.98,24.165,1734.939,33.447,1734.939,33.447"/>
+										<path fill="#AD4092" d="M1736.467,34.071l-1.327,1.103c0,0,5.682,8.068,9.749,10.701        C1743.091,41.251,1736.467,34.071,1736.467,34.071"/>
+										<path fill="#AD4092" d="M1735.063,35.225l0.02-1.73c0,0-9.833-0.873-14.46,0.532        C1725.309,35.641,1735.063,35.225,1735.063,35.225"/>
+									</g>
+									<g>
+										<path fill="#E1E1E0" d="M1736.472,33.863l4.67-13.699c0,0-0.051,0.838-0.085,1.119c-0.029,0.233-0.121,0.698-0.171,0.929        c-0.041,0.192-0.179,0.757-0.179,0.757s-0.249,0.982-0.345,1.302c-0.327,1.075-1.055,3.193-1.456,4.239        c-0.341,0.889-1.069,2.644-1.453,3.51c-0.21,0.474-0.856,1.88-0.856,1.88"/>
+										<path fill="#E1E1E0" d="M1735.358,35.205l9.687,10.75c0,0-0.711-0.448-0.939-0.612c-0.188-0.142-0.555-0.45-0.725-0.609        c-0.147-0.127-0.575-0.524-0.575-0.524s-0.74-0.696-0.973-0.938c-0.777-0.806-2.275-2.477-2.99-3.337        c-0.611-0.731-1.786-2.22-2.362-2.981c-0.313-0.413-1.226-1.665-1.226-1.665"/>
+										<path fill="#E1E1E0" d="M1734.915,33.644l-14.468,0.448c0,0,0.806-0.254,1.077-0.317c0.229-0.053,0.702-0.13,0.933-0.166        c0.189-0.027,0.769-0.1,0.769-0.1s1.009-0.114,1.349-0.133c1.115-0.074,3.358-0.137,4.477-0.127        c0.949,0.009,2.847,0.074,3.796,0.124c0.512,0.028,2.064,0.141,2.064,0.141"/>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1733.788,34.21c-0.007,1.048,0.88,1.908,1.975,1.915c1.098,0.005,1.986-0.85,1.986-1.896       c0.006-1.049-0.878-1.908-1.974-1.916C1734.677,32.312,1733.791,33.16,1733.788,34.21"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1734.508,34.215c-0.007,0.656,0.561,1.189,1.26,1.192c0.694,0.003,1.259-0.526,1.268-1.183       c0.002-0.654-0.563-1.188-1.263-1.19C1735.073,33.031,1734.508,33.56,1734.508,34.215"/>
+								</g>
+							</g>
+						</g>
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1631.267,34.217l-1.009,21.059c0,0,0.8,0.318,1.509,0.318c0.727,0.002,1.57-0.307,1.57-0.307      l-0.833-21.067L1631.267,34.217L1631.267,34.217z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<g>
+											<path fill="#E28100" d="M1631.042,33.447l1.615,0.621c0,0,4.273-8.898,4.587-13.726         C1634.091,24.165,1631.042,33.447,1631.042,33.447"/>
+											<path fill="#E28100" d="M1632.577,34.071l-1.336,1.103c0,0,5.688,8.068,9.751,10.701         C1639.191,41.251,1632.577,34.071,1632.577,34.071"/>
+											<path fill="#E28100" d="M1631.169,35.225l0.022-1.73c0,0-9.835-0.873-14.461,0.532         C1621.417,35.641,1631.169,35.225,1631.169,35.225"/>
+										</g>
+										<g>
+											<path fill="#E3B277" d="M1631.812,33.654l1.053-0.414c0,0,4.22-10.578,4.38-12.991c-0.117,0.136-0.252,0.707-0.377,1.005         c-0.102,0.244-0.232,0.608-0.344,0.859c-0.087,0.203-0.222,0.6-0.288,0.71c-0.11,0.188-0.341,0.878-0.496,1.244         c-0.513,1.194-1.195,2.968-1.681,4.161c-0.451,1.11-1.048,2.611-1.422,3.533c-0.317,0.826-0.766,1.912-0.766,1.912"/>
+											<path fill="#E3B277" d="M1632.019,34.638l-0.153,1.117c0,0,7.175,8.848,9.207,10.159c-0.063-0.164-0.496-0.56-0.695-0.816         c-0.164-0.21-0.415-0.503-0.583-0.72c-0.134-0.175-0.415-0.485-0.481-0.601c-0.115-0.187-0.602-0.724-0.843-1.04         c-0.802-1.026-2.016-2.489-2.813-3.487c-0.757-0.939-1.769-2.194-2.393-2.964c-0.564-0.68-1.294-1.602-1.294-1.6"/>
+											<path fill="#E3B277" d="M1631.094,34.433l-0.893-0.835c0,0-9.783-0.114-12.264,0.204c-0.172,0.024,0.051-0.079,0.025-0.081         c-0.039,0.001,0.046-0.009,0.021,0.009c-0.021,0.017,0.16,0.01,0.053,0.04c0.242,0.083,1.018,0.1,1.48,0.152         c1.389,0.146,3.491,0.219,4.999,0.275c1.352,0.057,3.145,0.102,4.271,0.123c1.026,0.015,2.311,0.048,2.311,0.048"/>
+										</g>
+										<g>
+											<path fill="#E1E1E0" d="M1632.58,33.863l4.666-13.699c0,0-0.042,0.838-0.082,1.119c-0.028,0.233-0.122,0.698-0.172,0.931         c-0.038,0.189-0.173,0.755-0.173,0.755s-0.246,0.983-0.347,1.304c-0.323,1.073-1.051,3.193-1.454,4.237         c-0.342,0.888-1.069,2.643-1.453,3.51c-0.209,0.475-0.854,1.88-0.854,1.88"/>
+											<path fill="#E1E1E0" d="M1631.464,35.207l9.688,10.749c0,0-0.712-0.448-0.942-0.612c-0.188-0.142-0.55-0.45-0.73-0.609         c-0.141-0.127-0.566-0.525-0.566-0.525s-0.738-0.695-0.971-0.937c-0.778-0.806-2.273-2.477-2.995-3.337         c-0.608-0.731-1.78-2.22-2.36-2.981c-0.311-0.413-1.224-1.665-1.224-1.665"/>
+											<path fill="#E1E1E0" d="M1631.021,33.644l-14.462,0.448c0,0,0.805-0.254,1.074-0.317c0.231-0.053,0.702-0.13,0.933-0.166         c0.188-0.027,0.772-0.1,0.772-0.1s1.009-0.114,1.343-0.133c1.113-0.072,3.357-0.137,4.473-0.127         c0.951,0.009,2.853,0.074,3.797,0.124c0.515,0.028,2.068,0.141,2.068,0.141"/>
+										</g>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1629.896,34.21c-0.008,1.048,0.88,1.909,1.973,1.915c1.099,0.005,1.986-0.85,1.992-1.896       c0.004-1.049-0.88-1.908-1.976-1.916C1630.788,32.312,1629.9,33.16,1629.896,34.21"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1630.609,34.215c-0.006,0.656,0.561,1.189,1.26,1.193c0.697,0.002,1.266-0.527,1.269-1.184       c0-0.654-0.56-1.188-1.261-1.19C1631.182,33.031,1630.61,33.56,1630.609,34.215"/>
+								</g>
+							</g>
+						</g>
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1572.492,34.217l-1.009,21.059c0,0,0.806,0.318,1.511,0.318c0.727,0.002,1.576-0.307,1.576-0.307      l-0.837-21.067L1572.492,34.217L1572.492,34.217z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<path fill="#05AA3D" d="M1572.277,33.447l1.611,0.621c0,0,4.271-8.898,4.585-13.726        C1575.315,24.165,1572.277,33.447,1572.277,33.447"/>
+										<path fill="#05AA3D" d="M1573.803,34.071l-1.328,1.103c0,0,5.683,8.068,9.748,10.701        C1580.426,41.251,1573.803,34.071,1573.803,34.071"/>
+										<path fill="#05AA3D" d="M1572.399,35.225l0.022-1.73c0,0-9.838-0.873-14.467,0.532        C1562.641,35.641,1572.399,35.225,1572.399,35.225"/>
+									</g>
+									<g>
+										<path fill="#E1E1E0" d="M1573.808,33.863l4.667-13.699c0,0-0.049,0.838-0.082,1.119c-0.026,0.233-0.121,0.698-0.171,0.929        c-0.043,0.192-0.181,0.757-0.181,0.757s-0.247,0.982-0.344,1.302c-0.33,1.075-1.053,3.193-1.455,4.239        c-0.342,0.889-1.069,2.644-1.456,3.51c-0.209,0.474-0.853,1.88-0.853,1.88"/>
+										<path fill="#E1E1E0" d="M1572.689,35.205l9.69,10.75c0,0-0.712-0.448-0.938-0.612c-0.188-0.142-0.557-0.45-0.729-0.609        c-0.146-0.127-0.571-0.524-0.571-0.524s-0.74-0.696-0.975-0.938c-0.774-0.806-2.271-2.477-2.992-3.337        c-0.61-0.731-1.784-2.22-2.362-2.981c-0.312-0.413-1.226-1.665-1.226-1.665"/>
+										<path fill="#E1E1E0" d="M1572.245,33.644l-14.462,0.448c0,0,0.806-0.254,1.075-0.317c0.231-0.053,0.702-0.13,0.933-0.166        c0.194-0.027,0.773-0.1,0.773-0.1s1.004-0.114,1.344-0.133c1.116-0.074,3.355-0.137,4.479-0.127        c0.949,0.009,2.847,0.074,3.795,0.124c0.513,0.028,2.063,0.141,2.063,0.141"/>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1571.121,34.21c-0.003,1.048,0.88,1.908,1.976,1.915c1.097,0.005,1.982-0.85,1.987-1.896       c0.002-1.049-0.882-1.908-1.975-1.916C1572.013,32.312,1571.123,33.16,1571.121,34.21"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1571.842,34.215c-0.002,0.656,0.561,1.189,1.26,1.192c0.696,0.003,1.266-0.526,1.269-1.183       c0.002-0.654-0.563-1.188-1.261-1.19C1572.408,33.031,1571.842,33.56,1571.842,34.215"/>
+								</g>
+							</g>
+						</g>
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1519.937,34.473l-1.008,21.059c0,0,0.803,0.316,1.508,0.316c0.729,0.002,1.574-0.31,1.574-0.31      l-0.834-21.065L1519.937,34.473L1519.937,34.473z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<path fill="#484C9E" d="M1519.713,33.702l1.611,0.624c0,0,4.277-8.9,4.592-13.727        C1522.763,24.423,1519.713,33.702,1519.713,33.702"/>
+										<path fill="#484C9E" d="M1521.246,34.324l-1.33,1.102c0,0,5.681,8.071,9.75,10.701        C1527.87,41.506,1521.246,34.324,1521.246,34.324"/>
+										<path fill="#484C9E" d="M1519.843,35.48l0.014-1.729c0,0-9.833-0.875-14.456,0.53        C1510.084,35.896,1519.843,35.48,1519.843,35.48"/>
+									</g>
+									<g>
+										<path fill="#E1E1E0" d="M1521.252,34.118l4.662-13.701c0,0-0.043,0.844-0.078,1.12c-0.025,0.235-0.121,0.702-0.172,0.93        c-0.042,0.191-0.176,0.759-0.176,0.759s-0.255,0.985-0.348,1.305c-0.325,1.072-1.052,3.193-1.455,4.236        c-0.34,0.887-1.068,2.642-1.451,3.51c-0.207,0.472-0.856,1.878-0.856,1.878"/>
+										<path fill="#E1E1E0" d="M1520.136,35.461l9.688,10.751c0,0-0.713-0.449-0.938-0.614c-0.194-0.141-0.559-0.446-0.73-0.607        c-0.145-0.127-0.571-0.524-0.571-0.524s-0.739-0.697-0.972-0.94c-0.778-0.805-2.275-2.471-2.991-3.339        c-0.609-0.728-1.784-2.218-2.363-2.977c-0.313-0.414-1.224-1.666-1.224-1.666"/>
+										<path fill="#E1E1E0" d="M1519.695,33.897l-14.469,0.451c0,0,0.806-0.255,1.079-0.317c0.228-0.057,0.702-0.131,0.928-0.168        c0.195-0.025,0.773-0.098,0.773-0.098s1.009-0.115,1.343-0.136c1.12-0.071,3.361-0.134,4.48-0.124        c0.949,0.009,2.846,0.074,3.796,0.123c0.513,0.028,2.062,0.142,2.062,0.142"/>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1518.564,34.469c-0.004,1.048,0.879,1.907,1.975,1.91c1.098,0.006,1.986-0.851,1.991-1.896       c0.004-1.05-0.88-1.904-1.975-1.911C1519.457,32.568,1518.569,33.413,1518.564,34.469"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1519.282,34.469c-0.002,0.656,0.56,1.189,1.256,1.193c0.7,0.003,1.266-0.527,1.267-1.182       c0.007-0.658-0.558-1.188-1.254-1.195C1519.853,33.287,1519.288,33.816,1519.282,34.469"/>
+								</g>
+							</g>
+						</g>
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1789.424,34.217l-1.001,21.059c0,0,0.8,0.318,1.51,0.318c0.721,0.002,1.57-0.307,1.57-0.307      l-0.834-21.067L1789.424,34.217L1789.424,34.217z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<path fill="#FFFFFF" d="M1789.205,33.447l1.613,0.621c0,0,4.278-8.898,4.589-13.726        C1792.249,24.165,1789.205,33.447,1789.205,33.447"/>
+										<path fill="#FFFFFF" d="M1790.735,34.071l-1.33,1.103c0,0,5.688,8.068,9.751,10.701        C1797.358,41.251,1790.735,34.071,1790.735,34.071"/>
+										<path fill="#FFFFFF" d="M1789.328,35.225l0.023-1.73c0,0-9.834-0.873-14.463,0.532        C1779.573,35.641,1789.328,35.225,1789.328,35.225"/>
+									</g>
+									<g>
+										<path fill="#E1E1E0" d="M1790.739,33.863l4.669-13.699c0,0-0.05,0.838-0.087,1.119c-0.023,0.233-0.12,0.698-0.17,0.929        c-0.04,0.192-0.18,0.757-0.18,0.757s-0.245,0.982-0.343,1.302c-0.328,1.075-1.05,3.193-1.454,4.239        c-0.344,0.889-1.071,2.644-1.458,3.51c-0.207,0.474-0.853,1.88-0.853,1.88"/>
+										<path fill="#E1E1E0" d="M1789.623,35.205l9.687,10.75c0,0-0.707-0.448-0.937-0.612c-0.191-0.142-0.551-0.45-0.73-0.609        c-0.144-0.127-0.573-0.524-0.573-0.524s-0.736-0.696-0.972-0.939c-0.778-0.805-2.271-2.476-2.991-3.336        c-0.61-0.731-1.784-2.22-2.362-2.981c-0.308-0.413-1.225-1.665-1.225-1.665"/>
+										<path fill="#E1E1E0" d="M1789.182,33.644l-14.47,0.448c0,0,0.806-0.254,1.084-0.317c0.226-0.053,0.699-0.13,0.93-0.166        c0.19-0.027,0.772-0.1,0.772-0.1s1.004-0.114,1.341-0.133c1.119-0.074,3.359-0.137,4.478-0.127        c0.95,0.009,2.849,0.074,3.797,0.124c0.512,0.028,2.063,0.141,2.063,0.141"/>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1788.054,34.21c-0.004,1.048,0.88,1.908,1.976,1.915c1.094,0.005,1.979-0.85,1.983-1.896       c0.009-1.049-0.882-1.908-1.975-1.916C1788.941,32.312,1788.058,33.16,1788.054,34.21"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1788.773,34.215c-0.003,0.656,0.558,1.189,1.258,1.192c0.697,0.003,1.267-0.526,1.269-1.183       c0.002-0.654-0.561-1.188-1.262-1.19C1789.348,33.031,1788.773,33.56,1788.773,34.215"/>
+								</g>
+							</g>
+						</g>
+						<g>
+							<g>
+								<path fill="#E1E1E0" d="M1680.303,34.224l-1.01,21.06c0,0,0.805,0.316,1.513,0.316c0.727,0.002,1.572-0.31,1.572-0.31      l-0.837-21.066H1680.303L1680.303,34.224z"/>
+							</g>
+							<g>
+								<g>
+									<g>
+										<path fill="#C02D2D" d="M1680.078,33.454l1.614,0.622c0,0,4.275-8.898,4.587-13.724        C1683.126,24.172,1680.078,33.454,1680.078,33.454"/>
+										<path fill="#C02D2D" d="M1681.614,34.078l-1.335,1.102c0,0,5.687,8.068,9.75,10.701        C1688.231,41.258,1681.614,34.078,1681.614,34.078"/>
+										<path fill="#C02D2D" d="M1680.209,35.231l0.016-1.728c0,0-9.838-0.874-14.465,0.531        C1670.452,35.646,1680.209,35.231,1680.209,35.231"/>
+									</g>
+									<g>
+										<path fill="#E1E1E0" d="M1681.619,33.869l4.661-13.701c0,0-0.041,0.844-0.077,1.121c-0.031,0.235-0.123,0.7-0.174,0.929        c-0.041,0.189-0.175,0.757-0.175,0.757s-0.242,0.983-0.347,1.305c-0.323,1.073-1.052,3.193-1.452,4.238        c-0.343,0.888-1.069,2.643-1.453,3.51c-0.208,0.471-0.854,1.881-0.854,1.881"/>
+										<path fill="#E1E1E0" d="M1680.5,35.212l9.688,10.75c0,0-0.71-0.45-0.939-0.615c-0.192-0.139-0.555-0.448-0.729-0.605        c-0.146-0.128-0.572-0.525-0.572-0.525s-0.739-0.697-0.97-0.94c-0.777-0.805-2.271-2.473-2.997-3.337        c-0.606-0.731-1.779-2.221-2.356-2.98c-0.313-0.413-1.226-1.665-1.226-1.665"/>
+										<path fill="#E1E1E0" d="M1680.061,33.648l-14.468,0.45c0,0,0.806-0.253,1.081-0.318c0.229-0.056,0.693-0.133,0.93-0.17        c0.189-0.025,0.773-0.1,0.773-0.1s1.006-0.112,1.344-0.134c1.113-0.072,3.357-0.135,4.477-0.124        c0.95,0.008,2.849,0.074,3.791,0.122c0.517,0.027,2.07,0.142,2.07,0.142"/>
+									</g>
+								</g>
+								<g>
+									<path fill="#69BFDA" d="M1678.93,34.218c-0.002,1.049,0.883,1.909,1.975,1.915c1.097,0.002,1.986-0.851,1.991-1.896       c0.001-1.049-0.884-1.906-1.978-1.912C1679.823,32.317,1678.934,33.167,1678.93,34.218"/>
+								</g>
+								<g>
+									<path fill="#C0E4EF" d="M1679.646,34.222c0,0.654,0.564,1.187,1.261,1.191c0.699,0.002,1.266-0.525,1.27-1.182       c0.002-0.655-0.563-1.188-1.26-1.191C1680.22,33.037,1679.649,33.565,1679.646,34.222"/>
+								</g>
+							</g>
+						</g>
+					</g>
+					<text transform="matrix(1 0 0 1 1536.8975 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">运</text>
+					<text transform="matrix(1 0 0 1 1536.8975 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">行</text>
+					<text transform="matrix(1 0 0 1 1588.4746 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">待</text>
+					<text transform="matrix(1 0 0 1 1588.4746 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">机</text>
+					<text transform="matrix(1 0 0 1 1642.9473 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">维</text>
+					<text transform="matrix(1 0 0 1 1642.9473 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">护</text>
+					<text transform="matrix(1 0 0 1 1694.5264 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">停</text>
+					<text transform="matrix(1 0 0 1 1694.5264 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">机</text>
+					<text transform="matrix(1 0 0 1 1750.082 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">限</text>
+					<text transform="matrix(1 0 0 1 1750.082 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">电</text>
+					<text transform="matrix(1 0 0 1 1802.7109 35.3689)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">中</text>
+					<text transform="matrix(1 0 0 1 1802.7109 50.5266)" fill="#FFFFFF" font-family="'MicrosoftYaHeiLight'" font-size="12.6314">断</text>
+				</g>
             <g id="other">
             	<text transform="matrix(1 0 0 1 610.9976 249.981)" fill="#FFFFFF" font-family="'MicrosoftYaHei'" font-size="14">35KV Ⅱ母线</text>
             	<text transform="matrix(1 0 0 1 944.9141 249.981)" fill="#FFFFFF" font-family="'MicrosoftYaHei'" font-size="14">35KV Ⅱ母线</text>

+ 34 - 19
src/views/WindSite/pages/Home/Home.vue

@@ -172,8 +172,8 @@
 				</div>
 				<div class="mg-l-16" style="flex:1 1 auto;" ref="lineChart">
 					<panel title="72小时功率曲线图">
-						<multiple-line-chart height="18.519vh" v-if="Powertrend" :list="Powertrend.value"
-							:units="Powertrend.units" :showLegend="true" />
+						<multiple-y-line-chart-normal height="18.519vh" v-if="Powertrend" :list="Powertrend.value"
+							:yAxises="PowertrendYAxises" :showLegend="true" />
 					</panel>
 				</div>
 				<div class="mg-l-16" style="flex:0 0 400px;">
@@ -211,13 +211,13 @@
 				<Col :span="8">
 				<panel title="日发电量对比">
 					<multiple-bar-line-chart height="21.296vh" :barData="CompleteElectricity.data"
-						:units="CompleteElectricity.units" :lineData="CompleteElectricity.lineData"/>
+						:units="CompleteElectricity.units" :lineData="CompleteElectricity.lineData" />
 				</panel>
 				</Col>
 				<Col :span="8">
 				<panel title="月发电量对比">
-					<multiple-bar-line-chart height="21.296vh" :barData="MonthCompare.data"
-						:units="MonthCompare.units" :lineData="MonthCompare.lineData"/>
+					<multiple-bar-line-chart height="21.296vh" :barData="MonthCompare.data" :units="MonthCompare.units"
+						:lineData="MonthCompare.lineData" />
 				</panel>
 				</Col>
 			</row>
@@ -229,7 +229,7 @@
 	import HoverBarChart from "../../../../components/chart/bar/hover-bar-chart.vue";
 	import MultipleBarChart from "../../../../components/chart/bar/multiple-bar-chart.vue";
 	import MultipleBarLineChart from "../../../../components/chart/combination/multiple-bar-line-chart.vue";
-	import MultipleLineChart from "../../../../components/chart/line/double-line-chart.vue";
+	import MultipleYLineChartNormal from "../../../../components/chart/line/multiple-y-line-chart-normal.vue";
 	import NormalLineChart from "../../../../components/chart/line/normal-line-chart.vue";
 	import DualPieChart from "../../../../components/chart/pie/dual-pie-chart.vue";
 	import BtnGroupDouble from "../../../../components/coms/btn/btn-group-double.vue";
@@ -255,7 +255,6 @@
 			Col,
 			Panel,
 			DualPieChart,
-			MultipleLineChart,
 			Panel3,
 			SvgIcon,
 			HoverBarChart,
@@ -264,7 +263,8 @@
 			LightMatrix,
 			BtnGroupDouble,
 			Station,
-			MultipleBarLineChart
+			MultipleBarLineChart,
+			MultipleYLineChartNormal
 		},
 		// 数据
 		data() {
@@ -320,6 +320,21 @@
 						value: [],
 					}, ],
 				},
+				PowertrendYAxises: [{
+						name: "功率",
+						min: 0,
+						// max: 500,
+						unit: "(万kWh)",
+						position: "left",
+					},
+					{
+						name: "风速",
+						min: 0,
+						max: 30,
+						unit: "(m/s)",
+						position: "right",
+					},
+				],
 				// 月发电量对比
 				MonthCompare: {
 					data: [{
@@ -335,7 +350,7 @@
 					],
 					units: ["(万KWh)", ""],
 				},
-				
+
 				selectIndex: 0,
 				rowIndex: 0,
 				btnGroupsss: [{
@@ -621,13 +636,13 @@
 								value: [],
 							},
 						];
-						
+
 						let lineData = {
-						  name: "风速",
-						  unit: "km",
-						  data: [],
+							name: "风速",
+							unit: "km",
+							data: [],
 						};
-						
+
 						res.data.forEach((ele) => {
 							data[0].value.push({
 								text: ele.timestr,
@@ -657,7 +672,7 @@
 						wpId: that.wpId,
 					},
 					success(res) {
-						
+
 						let data = [{
 								title: "月发电量",
 								yAxisIndex: 0,
@@ -670,11 +685,11 @@
 							},
 						];
 						let lineData = {
-						  name: "风速",
-						  unit: "km",
-						  data: [],
+							name: "风速",
+							unit: "km",
+							data: [],
 						};
-						
+
 						res.data.forEach((ele) => {
 							data[0].value.push({
 								text: ele.timestr,

+ 6 - 0
src/views/WindSite/pages/Info/Info.vue

@@ -234,6 +234,8 @@ export default {
   created() {
     let that = this;
     that.wpId = that.$route.params.wpId;
+	that.wtId = that.$route.params.wtId;
+	this.$router.replace(`/monitor/windsite/info/${that.wpId}/${that.wtId}`);
     that.$nextTick(() => {
       that.requestData(false);
       // that.timmer = setInterval(() => {
@@ -257,6 +259,10 @@ export default {
     //     this.requestData(false);
     //   }, this.$store.state.websocketTimeSec);
     // }
+	sourceMap(res){
+		console.log(res)
+		this.sourceMap = res;
+	}
   }
 };
 </script>

+ 13 - 1
src/views/WindSite/pages/Matrix.vue

@@ -12,7 +12,7 @@
       </div>
     </div>
     <div class="panel-body">
-      <div class="card" v-for="(cItem, cIndex) of sourceMap.fjmap[0]" :key="cIndex" :class="cItem.color">
+      <div class="card" v-for="(cItem, cIndex) of sourceMap.fjmap[0]" :key="cIndex" :class="cItem.color" @click="jumpUrl(cItem.wpId,cItem.wtId)">
         <div class="card-panel">
           <div class="card-left">
             <div class="tag">{{ cItem.wtnum }}</div>
@@ -214,6 +214,17 @@ export default {
         path: `/monitor/windsite/matrix/${res.code}`,
       });
     },
+	jumpUrl(wpId, wtId){
+		if (wpId.indexOf("FDC") !== -1) {
+		  this.$router.push({
+		    path: `/monitor/windsite/info/${wpId}/${wtId}`
+		  });
+		} else {
+		  this.$router.push({
+		    path: `../../windsite/inverter-info/${wpId}/${wtId}`
+		  });
+		}
+	  },
   },
 
   created() {
@@ -307,6 +318,7 @@ export default {
       flex: 1 0 125px;
     }
     .card {
+		cursor: pointer;
       margin-right: 4px;
       margin-top: 4px;
       flex: 1 0 125px;

+ 1 - 1
src/views/malfunctionRecall/index.vue

@@ -67,7 +67,7 @@
 		</div>
 		<div>
 			<el-dialog title="故障诊断" v-model="dialogVisible" width="1400px" top="5vh" custom-class="modal hide-header"
-				:close-on-click-modal="false" :before-close="onClickDialogClose">
+				:close-on-click-modal="false" :before-close="onClickDialogClose" :destroy-on-close='true'>
 				<fault-diagnosis :data="rowitem" />
 			</el-dialog>
 		</div>