lining %!s(int64=3) %!d(string=hai) anos
pai
achega
6a024afa78
Modificáronse 35 ficheiros con 12739 adicións e 16400 borrados
  1. 8 0
      src/api/index.js
  2. 6 0
      src/assets/styles/main.css
  3. 1060 864
      src/components/BasicInformationDetail.vue
  4. 8 25
      src/components/BoosterStation/dwk.vue
  5. 4944 0
      src/components/BoosterStation/hzj.vue
  6. 12 43
      src/components/BoosterStation/mch.vue
  7. 73 338
      src/components/BoosterStation/mhs.vue
  8. 435 464
      src/components/BoosterStation/nss.vue
  9. 36 291
      src/components/BoosterStation/pl1.vue
  10. 21 60
      src/components/BoosterStation/pl2.vue
  11. 1040 5431
      src/components/BoosterStation/qs.vue
  12. 822 3479
      src/components/BoosterStation/sbdl.vue
  13. 1729 3288
      src/components/BoosterStation/sbq.vue
  14. 20 116
      src/components/BoosterStation/xh.vue
  15. 41 332
      src/components/BoosterStation/xs.vue
  16. 17 5
      src/components/check/areaCard.vue
  17. 2 2
      src/components/check/operationRecords.vue
  18. 6 4
      src/components/control/areaCard.vue
  19. 835 742
      src/components/control/controlAllArea.vue
  20. 2 1
      src/components/focus/PhotoelectricDetailPages.vue
  21. 220 0
      src/components/focus/agcDetails.vue
  22. 394 0
      src/components/focus/dataDetails.vue
  23. 155 0
      src/components/focus/detailsCharts.vue
  24. 32 7
      src/components/focus/focusArea.vue
  25. 51 45
      src/components/focus/focusCard.vue
  26. 71 246
      src/components/focus/multiple-line-chart.vue
  27. 0 145
      src/components/modeControl/dataDetails.vue
  28. 7 7
      src/components/modeControl/detailPages.vue
  29. 2 0
      src/components/modeControl/modeControl.vue
  30. 487 433
      src/components/problem/areaCard.vue
  31. 1 1
      src/components/warning/warningCard.vue
  32. 175 25
      src/utils/BoosterStation.js
  33. 7 5
      src/utils/MessageBridge.js
  34. 14 0
      src/utils/PhotoelectricDetailPages.js
  35. 6 1
      vue.config.js

+ 8 - 0
src/api/index.js

@@ -142,6 +142,13 @@ const controlRecord = (data) => {
         method: "get",
     });
 };
+const getLatest = (data) => {
+    return request({
+        baseURL:process.env.VUE_APP_ADAPTERURL,
+        url: `/ts/latest?keys=${data}`,
+        method: "get",
+    });
+};
 export default {
     login,
     getSnap,
@@ -162,4 +169,5 @@ export default {
     getWindturbinePower,
     getOriginalWindturbinePower,
     controlRecord,
+    getLatest,
 };

+ 6 - 0
src/assets/styles/main.css

@@ -107,4 +107,10 @@ body,
 
   .el-tree-node__content:hover {
     background-color: #000000 !important;
+  }
+  .el-notification .el-icon-success{
+    color: #67C23A !important;
+  }
+  .el-notification .el-icon-warning {
+    color: #E6A23C !important;
   }

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1060 - 864
src/components/BasicInformationDetail.vue


+ 8 - 25
src/components/BoosterStation/dwk.vue

@@ -130,7 +130,7 @@
                   </text>
                 </g>
                 <g>
-                  <text transform="matrix(1 0 0 1 70.9336 126.3535)">
+                  <text transform="matrix(1 0 0 1 65.9336 126.3535)">
                     <tspan
                       x="0"
                       y="0"
@@ -147,21 +147,12 @@
                       font-family="'MicrosoftYaHei'"
                       font-size="9.6234"
                     >
-                      (MW)
-                    </tspan>
-                    <tspan
-                      x="32.592"
-                      y="0"
-                      fill="#97A1A2"
-                      font-family="'MicrosoftYaHei'"
-                      font-size="11.3899"
-                    >
-                      :
+                      (MVar):
                     </tspan>
                   </text>
                 </g>
                 <g>
-                  <text transform="matrix(1 0 0 1 67.0742 145.5039)">
+                  <text transform="matrix(1 0 0 1 65.0742 145.5039)">
                     <tspan
                       x="0"
                       y="0"
@@ -178,16 +169,7 @@
                       font-family="'MicrosoftYaHei'"
                       font-size="9.6234"
                     >
-                      (kVar)
-                    </tspan>
-                    <tspan
-                      x="36.451"
-                      y="0"
-                      fill="#97A1A2"
-                      font-family="'MicrosoftYaHei'"
-                      font-size="11.3899"
-                    >
-                      :
+                      (MVar):
                     </tspan>
                   </text>
                 </g>
@@ -5889,7 +5871,7 @@
 
 <script>
 import previewPicture from "./previewPicture.vue";
-import {BoosterStation} from "utils/BoosterStation";
+import { BoosterStation } from "utils/BoosterStation";
 export default {
   components: {
     previewPicture,
@@ -5941,7 +5923,8 @@ export default {
 }
 
 .svg {
-  width: 100%;
-  height: 100%;
+  margin-left:5%;
+  width: 90%;
+  height: 90%;
 }
 </style>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 4944 - 0
src/components/BoosterStation/hzj.vue


+ 12 - 43
src/components/BoosterStation/mch.vue

@@ -253,13 +253,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 657.7087 96.584)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 645.7087 96.584)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 664.6775 96.584)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
+										P(kVar)
 									</text>
 									<text transform="matrix(1 0 0 1 686.1379 96.584)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
@@ -301,13 +297,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 657.7087 241.7939)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 654.7087 241.7939)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 664.6775 241.7939)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
+										P(kVar)
 									</text>
 									<text transform="matrix(1 0 0 1 686.1379 241.7939)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
@@ -822,7 +814,7 @@
 								</text>
 								<text transform="matrix(0.9268 0 0 1 399.4001 419.3252)" fill="#FFFFFF"
 									font-family="'MicrosoftYaHei'" font-size="11.1235">
-									-5
+									-1
 								</text>
 								<text transform="matrix(0.9268 0 0 1 454.9011 419.0723)" fill="#FFFFFF"
 									font-family="'MicrosoftYaHei'" font-size="11.1235">
@@ -974,22 +966,6 @@
 
 								<line fill="none" stroke="#AAAAAA" stroke-width="1.6" stroke-miterlimit="10"
 									x1="443.452" y1="445.257" x2="446.306" y2="445.257"></line>
-								<text transform="matrix(0.9268 0 0 1 456.1941 482.8877)" fill="#FFFFFF"
-									font-family="'MicrosoftYaHei'" font-size="11.1235">
-									-05
-								</text>
-								<rect x="444.206" y="451.9" fill="#CAA51A" width="2.25" height="17.702"></rect>
-								<rect x="422.035" y="451.9" fill="#CAA51A" width="24.139" height="2.25"></rect>
-								<rect x="444.743" y="492.637" fill="#AAAAAA" width="2.855" height="7.871"></rect>
-
-								<line fill="none" stroke="#AAAAAA" stroke-width="1.6" stroke-miterlimit="10"
-									x1="440.407" y1="501.594" x2="451.935" y2="501.594"></line>
-
-								<line fill="none" stroke="#AAAAAA" stroke-width="1.6" stroke-miterlimit="10"
-									x1="442.786" y1="505.234" x2="449.557" y2="505.234"></line>
-
-								<line fill="none" stroke="#AAAAAA" stroke-width="1.6" stroke-miterlimit="10"
-									x1="444.746" y1="509.072" x2="447.6" y2="509.072"></line>
 								<rect x="418.851" y="488.23" fill="#CAA51A" width="2.25" height="19.676"></rect>
 								<path fill="none" stroke="#CAA51A" stroke-width="2.2" stroke-miterlimit="10"
 									d="M409.642,479.065   c0,5.708,4.627,10.334,10.334,10.334s10.334-4.626,10.334-10.334c0-5.707-4.627-10.334-10.334-10.334">
@@ -2796,15 +2772,7 @@
 										<line fill="none" stroke="#AAAAAA" stroke-width="1.5" stroke-miterlimit="10"
 											x1="451.688" y1="410.451" x2="444.875" y2="421.033"></line>
 									</g>
-									<g id="_x31_21-0on_2_">
-										<line fill="none" stroke="#AAAAAA" stroke-width="1.5" stroke-miterlimit="10"
-											x1="437.728" y1="472.156" x2="454.614" y2="472.156"></line>
-										<path fill="#AAAAAA"
-											d="M446.669,485.781c1.434,0,2.602,1.166,2.602,2.604c0,1.434-1.167,2.6-2.602,2.6     c-1.437,0-2.603-1.166-2.603-2.6C444.065,486.948,445.234,485.781,446.669,485.781 M446.669,483.879     c-2.488,0-4.507,2.016-4.507,4.506c0,2.484,2.019,4.504,4.507,4.504c2.485,0,4.506-2.02,4.506-4.504     C451.174,485.895,449.154,483.879,446.669,483.879L446.669,483.879z">
-										</path>
-										<line fill="none" stroke="#AAAAAA" stroke-width="1.5" stroke-miterlimit="10"
-											x1="452.981" y1="474.27" x2="446.171" y2="484.852"></line>
-									</g>
+									
 								</g>
 							</g>
 						</svg>
@@ -2816,8 +2784,8 @@
 	</div>
 </template>
 <script>
-	import previewPicture from "./previewPicture.vue";
-	import { BoosterStation } from "utils/BoosterStation";
+import previewPicture from "./previewPicture.vue";
+import { BoosterStation } from "utils/BoosterStation";
 	export default {
 		components: {
 			previewPicture
@@ -2869,7 +2837,8 @@
 	}
 
 	.svg {
-		width: 100%;
-		height: 100%;
+		margin-left:5%;
+		width: 90%;
+		height: 90%;
 	}
-</style>
+</style>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 73 - 338
src/components/BoosterStation/mhs.vue


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 435 - 464
src/components/BoosterStation/nss.vue


+ 36 - 291
src/components/BoosterStation/pl1.vue

@@ -499,54 +499,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 210.6501 296.7874)"
+                    transform="matrix(1 0 0 1 200.6501 296.7874)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 217.6189 296.7874)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 239.0789 296.7874)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 202.6277 319.0725)"
+                    transform="matrix(1 0 0 1 200.6277 319.0725)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 211.9099 319.0725)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 239.0789 319.0725)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -1322,54 +1290,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 478.2029 297.5061)"
+                    transform="matrix(1 0 0 1 468.2029 297.5061)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 485.1716 297.5061)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 506.6316 297.5061)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 470.1804 319.7913)"
+                    transform="matrix(1 0 0 1 465.1804 319.7913)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 479.4626 319.7913)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 506.6316 319.7913)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -2000,54 +1936,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 736.8811 297.5061)"
+                    transform="matrix(1 0 0 1 726.8811 297.5061)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 743.8503 297.5061)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 765.3103 297.5061)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 728.8586 319.7913)"
+                    transform="matrix(1 0 0 1 726.8586 319.7913)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 738.1404 319.7913)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 765.3098 319.7913)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -2152,54 +2056,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1012.592 298.51)"
+                    transform="matrix(1 0 0 1 1002.592 298.51)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1019.5608 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1041.0198 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1004.5686 320.7952)"
+                    transform="matrix(1 0 0 1 1002.5686 320.7952)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1013.8499 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1041.0198 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -2834,28 +2706,12 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1659.2854 298.51)"
+                    transform="matrix(1 0 0 1 1649.2854 298.51)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1666.2542 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1687.7151 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
@@ -2865,23 +2721,7 @@
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1660.5452 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1687.7151 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -3429,54 +3269,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1319.7991 298.51)"
+                    transform="matrix(1 0 0 1 1309.7991 298.51)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1326.7678 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1348.2288 298.51)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(kVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1311.7776 320.7952)"
+                    transform="matrix(1 0 0 1 1309.7776 320.7952)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1321.0588 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1348.2268 320.7952)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(kVar):
                   </text>
                 </g>
                 <g>
@@ -4167,54 +3975,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 711.0769 139.5452)"
+                    transform="matrix(1 0 0 1 701.0769 139.5452)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 718.0457 139.5452)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 739.5056 139.5452)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(MVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 703.0544 161.8303)"
+                    transform="matrix(1 0 0 1 701.0544 161.8303)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 712.3367 161.8303)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 739.5056 161.8303)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(MVar):
                   </text>
                 </g>
                 <g>
@@ -4291,54 +4067,22 @@
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1327.4456 129.2971)"
+                    transform="matrix(1 0 0 1 1317.4456 129.2971)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    P
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1334.4143 129.2971)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kW)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1355.8752 129.2971)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    P(MVar):
                   </text>
                 </g>
                 <g>
                   <text
-                    transform="matrix(1 0 0 1 1319.4241 151.5823)"
+                    transform="matrix(1 0 0 1 1316.4241 151.5823)"
                     fill="#97A1A2"
                     font-family="'MicrosoftYaHei'"
                     font-size="11.3899"
                   >
-                    Q
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1328.7053 151.5823)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="9.6234"
-                  >
-                    (kVar)
-                  </text>
-                  <text
-                    transform="matrix(1 0 0 1 1355.8733 151.5823)"
-                    fill="#97A1A2"
-                    font-family="'MicrosoftYaHei'"
-                    font-size="11.3899"
-                  >
-                    :
+                    Q(MVar):
                   </text>
                 </g>
                 <g>
@@ -4468,7 +4212,7 @@
                   font-family="'MicrosoftYaHei'"
                   font-size="15"
                 >
-                  输出功率(kW):
+                  输出功率(kw):
                 </text>
               </g>
               <g id="arrow">
@@ -5501,7 +5245,7 @@
 </template>
 <script>
 import previewPicture from "./previewPicture.vue";
-import {BoosterStation} from "utils/BoosterStation";
+import { BoosterStation } from "utils/BoosterStation";
 export default {
   components: {
     previewPicture,
@@ -5553,7 +5297,8 @@ export default {
 }
 
 .svg {
-  width: 100%;
-  height: 100%;
+  margin-left:5%;
+  width: 90%;
+  height: 90%;
 }
 </style>

+ 21 - 60
src/components/BoosterStation/pl2.vue

@@ -4,7 +4,7 @@
 			<el-col :span="24">
 				<previewPicture>
 					<template v-slot:svg>
-						<svg class="svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+<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="1853.732px" height="885.063px"
 							viewBox="0 0 1853.732 885.063" enable-background="new 0 0 1853.732 885.063"
 							xml:space="preserve">
@@ -124,17 +124,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 159.8337 82.063)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 149.8337 82.063)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 166.8015 82.063)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
-									</text>
-									<text transform="matrix(1 0 0 1 188.2629 82.063)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										:
+										P(kVar):
 									</text>
 								</g>
 								<rect x="870.11" y="54.162" opacity="0.9" fill="#162320" enable-background="new    "
@@ -156,17 +148,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 920.3459 86.4722)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 910.3459 86.4722)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 927.3142 86.4722)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
-									</text>
-									<text transform="matrix(1 0 0 1 948.7742 86.4722)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										:
+										P(kVar):
 									</text>
 								</g>
 								<rect x="870.11" y="95.087" opacity="0.9" fill="#162320" enable-background="new    "
@@ -204,17 +188,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 1502.6492 193.9634)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 1509.6179 193.9634)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(MW)
-									</text>
-									<text transform="matrix(1 0 0 1 1531.0779 193.9634)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 1492.6492 193.9634)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										:
+										P(kVar):
 									</text>
 								</g>
 								<rect x="1452.414" y="202.58" opacity="0.9" fill="#162320" enable-background="new    "
@@ -252,17 +228,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 1713.8718 191.0923)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 1703.8718 191.0923)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 1720.8406 191.0923)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
-									</text>
-									<text transform="matrix(1 0 0 1 1742.3005 191.0923)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										:
+										P(kVar):
 									</text>
 								</g>
 								<rect x="1562.98" y="42.351" opacity="0.9" fill="#162320" enable-background="new    "
@@ -284,17 +252,9 @@
 									</text>
 								</g>
 								<g>
-									<text transform="matrix(1 0 0 1 1584.4617 74.6606)" fill="#97A1A2"
+									<text transform="matrix(1 0 0 1 1574.4617 74.6606)" fill="#97A1A2"
 										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										P
-									</text>
-									<text transform="matrix(1 0 0 1 1591.4314 74.6606)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="9.6234">
-										(kW)
-									</text>
-									<text transform="matrix(1 0 0 1 1612.8914 74.6606)" fill="#97A1A2"
-										font-family="'MicrosoftYaHei'" font-size="11.3899">
-										:
+										P(kVar):
 									</text>
 								</g>
 								<rect x="1562.98" y="83.277" opacity="0.9" fill="#162320" enable-background="new    "
@@ -3597,8 +3557,8 @@
 	</div>
 </template>
 <script>
-	import previewPicture from "./previewPicture.vue";
-	import { BoosterStation } from "utils/BoosterStation";
+import previewPicture from "./previewPicture.vue";
+import { BoosterStation } from "utils/BoosterStation";
 	export default {
 		components: {
 			previewPicture
@@ -3613,7 +3573,7 @@
 		},
 		created() {
 			this.boosterStation = new BoosterStation();
-
+	
 			this.refreshTPData()
 			this.interval = setInterval(this.refreshTPData, 3000)
 		},
@@ -3622,10 +3582,10 @@
 				clearInterval(this.interval);
 			},
 			refreshTPData() {
-				this.boosterStation.getDatas("PL2_GDC", this.bindValue);
+				this.boosterStation.getDatas("PL2_GDC",this.bindValue);
 			},
-			bindValue(msg) {
-				this.ajaxData = msg;
+			bindValue(msg){
+				this.ajaxData=msg;
 			},
 		}
 	};
@@ -3650,7 +3610,8 @@
 	}
 
 	.svg {
-		width: 100%;
-		height: 100%;
+		margin-left:5%;
+		width: 90%;
+		height: 90%;
 	}
-</style>
+</style>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1040 - 5431
src/components/BoosterStation/qs.vue


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 822 - 3479
src/components/BoosterStation/sbdl.vue


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1729 - 3288
src/components/BoosterStation/sbq.vue


+ 20 - 116
src/components/BoosterStation/xh.vue

@@ -84,10 +84,10 @@
               font-family="'MicrosoftYaHei'"
               font-size="9.6234"
             >
-              (MW)
+              (MVar)
             </text>
             <text
-              transform="matrix(1 0 0 1 1048.9119 65.8411)"
+              transform="matrix(1 0 0 1 1052.9119 65.8411)"
               fill="#96A0A1"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
@@ -110,10 +110,10 @@
               font-family="'MicrosoftYaHei'"
               font-size="9.6234"
             >
-              (kVar)
+              (MVar)
             </text>
             <text
-              transform="matrix(1 0 0 1 1048.5251 88.1272)"
+              transform="matrix(1 0 0 1 1052.5251 88.1272)"
               fill="#96A0A1"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
@@ -663,28 +663,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 63.3206 234.0979)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 70.2893 234.0979)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.7498 234.0979)"
+              transform="matrix(1 0 0 1 55.3206 234.0979)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -803,28 +787,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 520.6536 388.0686)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 527.6223 388.0686)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 549.0823 388.0686)"
+              transform="matrix(1 0 0 1 512.6536 388.0686)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -943,28 +911,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 63.3206 493.3762)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 70.2893 493.3762)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.7498 493.3762)"
+              transform="matrix(1 0 0 1 55.3206 493.3762)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -1181,28 +1133,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 740.0774 352.0559)"
+              transform="matrix(1 0 0 1 732.0774 352.0559)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 747.0461 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 768.5061 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -1305,28 +1241,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 966.0916 352.0559)"
+              transform="matrix(1 0 0 1 958.0916 352.0559)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 973.0603 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 994.5212 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -2672,28 +2592,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 1211.0056 352.0559)"
+              transform="matrix(1 0 0 1 1207.0056 352.0559)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1217.9744 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1243.8181 352.0559)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(kVar):
             </text>
           </g>
           <g>
@@ -2809,7 +2713,7 @@
               font-family="'MicrosoftYaHei'"
               font-size="9.6234"
             >
-              (MW)
+              (kVar)
             </text>
             <text
               transform="matrix(1 0 0 1 1458.8103 466.9661)"
@@ -2933,7 +2837,7 @@
               font-family="'MicrosoftYaHei'"
               font-size="9.6234"
             >
-              (MW)
+              (kVar)
             </text>
             <text
               transform="matrix(1 0 0 1 1669.8103 466.9661)"
@@ -8218,7 +8122,7 @@
                 font-family="'MicrosoftYaHei'"
                 font-size="12.1437"
               >
-                (kW)
+                (kVar)
               </text>
               <text
                 transform="matrix(1 0 0 1 45.3665 864.7239)"
@@ -12218,7 +12122,7 @@
 </template>
 <script>
 import previewPicture from "./previewPicture.vue";
-import {BoosterStation} from "utils/BoosterStation";
+import { BoosterStation } from "utils/BoosterStation";
 export default {
   components: {
     previewPicture,

+ 41 - 332
src/components/BoosterStation/xs.vue

@@ -1220,28 +1220,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 1054.0144 341.554)"
+              transform="matrix(1 0 0 1 1044.0144 341.554)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1060.9832 341.554)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1082.4431 341.554)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -1255,28 +1239,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 1045.9919 361.9807)"
+              transform="matrix(1 0 0 1 1043.9919 361.9807)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1055.2742 361.9807)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1082.4431 361.9807)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              Q(MVar):
             </text>
           </g>
           <rect
@@ -1334,54 +1302,22 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 563.5295 135.509)"
-              fill="#96A0A1"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 570.4988 135.509)"
-              fill="#96A0A1"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 596.342 135.509)"
+              transform="matrix(1 0 0 1 553.5295 135.509)"
               fill="#96A0A1"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(MVar):
             </text>
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 559.5066 157.7942)"
+              transform="matrix(1 0 0 1 557.5066 157.7942)"
               fill="#96A0A1"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 568.7898 157.7942)"
-              fill="#96A0A1"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 595.9578 157.7942)"
-              fill="#96A0A1"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              Q(MVar):
             </text>
           </g>
           <rect
@@ -1850,28 +1786,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 63.0144 445.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 69.9836 445.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.4441 445.3)"
+              transform="matrix(1 0 0 1 53.0144 445.3)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -1885,28 +1805,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 54.9919 465.7268)"
+              transform="matrix(1 0 0 1 52.9919 465.7268)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 64.2747 465.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.4431 465.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              Q(MVar):
             </text>
           </g>
           <rect
@@ -2025,28 +1929,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 1684.0154 445.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1690.9841 445.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1712.4441 445.3)"
+              transform="matrix(1 0 0 1 1674.0154 445.3)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -2060,28 +1948,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 1675.9929 465.7278)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1685.2751 465.7278)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1712.4441 465.7278)"
+              transform="matrix(1 0 0 1 1673.9929 465.7278)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              Q(MVar):
             </text>
           </g>
           <rect
@@ -2200,28 +2072,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 1684.5125 189.844)"
+              transform="matrix(1 0 0 1 1674.5125 189.844)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1691.4812 189.844)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1712.9412 189.844)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -2235,28 +2091,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 1676.49 210.2727)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1685.7722 210.2727)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (kVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1712.9412 210.2727)"
+              transform="matrix(1 0 0 1 1674.49 210.2727)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              Q(MVar):
             </text>
           </g>
           <rect
@@ -3123,28 +2963,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 21.4822 819.7336)"
+              transform="matrix(1 0 0 1 11.4822 819.7336)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 28.4504 819.7336)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 49.9114 819.7336)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(kVar):
             </text>
           </g>
           <rect
@@ -3171,7 +2995,7 @@
               font-family="'MicrosoftYaHei'"
               font-size="9.6234"
             >
-              (MVar)
+              (kVar)
             </text>
             <text
               transform="matrix(1 0 0 1 49.9109 840.1604)"
@@ -7798,64 +7622,14 @@
           </g>
           <g>
             <g v-if="ajaxData.xskg11101" id="_1_">
-              <line
-                fill="none"
-                stroke="#AAAAAA"
-                stroke-width="2"
-                stroke-miterlimit="10"
-                x1="778.589"
-                y1="156.168"
-                x2="778.589"
-                y2="173.055"
-              ></line>
-              <path
-                fill="#AAAAAA"
-                d="M764.964,165.107c0,1.436-1.166,2.604-2.602,2.604c-1.434,0-2.602-1.167-2.602-2.604
-				c0-1.436,1.168-2.602,2.602-2.602C763.798,162.505,764.964,163.675,764.964,165.107 M766.866,165.107
-				c0-2.486-2.016-4.505-4.504-4.505s-4.506,2.019-4.506,4.505c0,2.487,2.019,4.506,4.506,4.506
-				C764.85,169.613,766.866,167.595,766.866,165.107L766.866,165.107z"
-              ></path>
-
-              <line
-                fill="none"
-                stroke="#AAAAAA"
-                stroke-width="2"
-                stroke-miterlimit="10"
-                x1="778.362"
-                y1="165.107"
-                x2="765.894"
-                y2="165.107"
-              ></line>
+              <line fill="none" stroke="#AAAAAA" stroke-width="2" stroke-miterlimit="10" x1="778.589" y1="156.168" x2="778.589" y2="173.055" ></line>
+              <path fill="#AAAAAA" d="M764.964,165.107c0,1.436-1.166,2.604-2.602,2.604c-1.434,0-2.602-1.167-2.602-2.604 c0-1.436,1.168-2.602,2.602-2.602C763.798,162.505,764.964,163.675,764.964,165.107 M766.866,165.107 c0-2.486-2.016-4.505-4.504-4.505s-4.506,2.019-4.506,4.505c0,2.487,2.019,4.506,4.506,4.506 C764.85,169.613,766.866,167.595,766.866,165.107L766.866,165.107z" ></path> 
+              <line fill="none" stroke="#AAAAAA" stroke-width="2" stroke-miterlimit="10" x1="778.362" y1="165.107" x2="765.894" y2="165.107" ></line>
             </g>
             <g v-if="ajaxData.xskg11101 == false" id="_1_">
-              <line
-                fill="none"
-                stroke="#AAAAAA"
-                stroke-width="2"
-                stroke-miterlimit="10"
-                x1="778.589"
-                y1="156.168"
-                x2="778.589"
-                y2="173.055"
-              ></line>
-              <path
-                fill="#AAAAAA"
-                d="M764.964,165.107c0,1.436-1.166,2.604-2.604,2.604c-1.434,0-2.6-1.167-2.6-2.604
-				c0-1.436,1.166-2.602,2.6-2.602C763.798,162.506,764.964,163.675,764.964,165.107 M766.866,165.107
-				c0-2.486-2.016-4.505-4.506-4.505c-2.484,0-4.504,2.019-4.504,4.505c0,2.487,2.019,4.506,4.504,4.506
-				C764.851,169.613,766.866,167.595,766.866,165.107L766.866,165.107z"
-              ></path>
-
-              <line
-                fill="none"
-                stroke="#AAAAAA"
-                stroke-width="2"
-                stroke-miterlimit="10"
-                x1="776.476"
-                y1="171.422"
-                x2="765.894"
-                y2="164.609"
-              ></line>
+              <line fill="none" stroke="#AAAAAA" stroke-width="2" stroke-miterlimit="10" x1="778.589" y1="156.168" x2="778.589" y2="173.055" ></line>
+              <path fill="#AAAAAA" d="M764.964,165.107c0,1.436-1.166,2.604-2.604,2.604c-1.434,0-2.6-1.167-2.6-2.604 c0-1.436,1.166-2.602,2.6-2.602C763.798,162.506,764.964,163.675,764.964,165.107 M766.866,165.107 c0-2.486-2.016-4.505-4.506-4.505c-2.484,0-4.504,2.019-4.504,4.505c0,2.487,2.019,4.506,4.504,4.506 C764.851,169.613,766.866,167.595,766.866,165.107L766.866,165.107z" ></path> 
+              <line fill="none" stroke="#AAAAAA" stroke-width="2" stroke-miterlimit="10" x1="776.476" y1="171.422" x2="765.894" y2="164.609" ></line>
             </g>
           </g>
           <g>
@@ -10192,28 +9966,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 63.0144 295.3)"
+              transform="matrix(1 0 0 1 53.0144 295.3)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 69.9836 295.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.4441 295.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -10227,28 +9985,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 54.9919 315.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 64.2747 315.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 91.4431 315.7268)"
+              transform="matrix(1 0 0 1 52.9919 315.7268)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              Q(MVar):
             </text>
           </g><g>
             <g>
@@ -10422,28 +10164,12 @@
           </g>
           <g>
             <text
-              transform="matrix(1 0 0 1 1063.0144 455.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              P
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1069.9836 455.3)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MW)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1091.4441 455.3)"
+              transform="matrix(1 0 0 1 1053.0144 455.3)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              :
+              P(MVar):
             </text>
           </g>
           <rect
@@ -10457,28 +10183,12 @@
           />
           <g>
             <text
-              transform="matrix(1 0 0 1 1054.9919 475.7268)"
+              transform="matrix(1 0 0 1 1052.9919 475.7268)"
               fill="#97A1A2"
               font-family="'MicrosoftYaHei'"
               font-size="11.3899"
             >
-              Q
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1064.2747 475.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="9.6234"
-            >
-              (MVar)
-            </text>
-            <text
-              transform="matrix(1 0 0 1 1091.4431 475.7268)"
-              fill="#97A1A2"
-              font-family="'MicrosoftYaHei'"
-              font-size="11.3899"
-            >
-              :
+              Q(MVar):
             </text>
           </g><g>
             <g>
@@ -10653,7 +10363,6 @@
               </text>
             </g>
           </g>
-
         </g>
       </svg>
     </template>
@@ -10661,7 +10370,7 @@
 </template>
 <script>
 import previewPicture from "./previewPicture.vue";
-import {BoosterStation} from "utils/BoosterStation";
+import { BoosterStation } from "utils/BoosterStation";
 export default {
   components: {
     previewPicture,
@@ -10676,7 +10385,6 @@ export default {
   },
   created() {
     this.boosterStation = new BoosterStation();
-
     this.refreshTPData();
     this.interval = setInterval(this.refreshTPData, 1000);
   },
@@ -10696,7 +10404,8 @@ export default {
 
 <style scoped>
 .svg {
-  width: 100%;
-  height: 100%;
+	margin-left: 5%;
+  width: 90%;
+  height: 90%;
 }
 </style>

+ 17 - 5
src/components/check/areaCard.vue

@@ -22,11 +22,13 @@
         <div style="margin-top: 50px; margin-left: 20px; height: 80%;">
             <el-scrollbar>
                 <div class="scoll" style="margin-left: 5px;">
-                    <MatrixBlock @on-click="handleClick" :dataList="showList"></MatrixBlock>
+                    <MatrixBlock  @on-click="handleClick" :dataList="showList"></MatrixBlock>
                 </div>
             </el-scrollbar>
         </div>
         <OperationRecords ref="records" v-model="display" @closed="closed()"></OperationRecords>
+        <WindturbineDetailPages v-model="dialogVisible" @close="handleClose" :windturbine="currentWindturbine">
+    </WindturbineDetailPages>
     </div>
 </template>
 
@@ -34,6 +36,7 @@
     import BackgroundData from 'utils/BackgroundData'
     import MatrixBlock from "../matrixBlock.vue";
     import OperationRecords from "./operationRecords.vue";
+    import WindturbineDetailPages from "../WindturbineDetailPages.vue";
     export default {
         props: {
             title: {
@@ -48,7 +51,8 @@
         },
         components: {
             MatrixBlock,
-            OperationRecords
+            OperationRecords,
+            WindturbineDetailPages
         },
         data() {
             return {
@@ -56,6 +60,8 @@
                 arr: [],
                 list: [],
                 display:false,
+                dialogVisible:false,
+                currentWindturbine: {},
             }
         },
         methods: {
@@ -77,7 +83,6 @@
                     }
                 })
                 this.showList = showList
-                console.log(this.showList)
                 if (flag) {
                     let mss = arr.join(',') + '风机超时未响应,已移除'
                     this.$notify({
@@ -97,7 +102,14 @@
             },
             closed(){
                 this.display = false
-            }
+            },
+            handleClick(itm) {
+                this.dialogVisible = true;
+                this.currentWindturbine = itm;
+            },
+            handleClose() {
+                this.dialogVisible = false
+            },
         },
         watch: {
             "$store.getters.windturbinelist": {
@@ -152,7 +164,7 @@
         border-radius: 50%;
     }
 
-    .record{
+    .record {
         position: absolute;
         color: #ffffff;
         font-size: 14px;

+ 2 - 2
src/components/check/operationRecords.vue

@@ -74,7 +74,7 @@
             if (this.timeValue.length === 0) {
                 let date = new Date()
                 this.timeValue[0] = date.getTime() - 28800000
-                this.timeValue[1] = date.getTime()
+                this.timeValue[1] = date.getTime() + 3600000
             }
         },
         mounted() {
@@ -231,7 +231,7 @@
             opened(){
                 let date = new Date()
                 this.timeValue[0] = date.getTime() - 28800000
-                this.timeValue[1] = date.getTime()
+                this.timeValue[1] = date.getTime() + 3600000
                 this.getControlRecord()
             },
             getControlRecord() {

+ 6 - 4
src/components/control/areaCard.vue

@@ -53,7 +53,6 @@
             StationSvgDetailPages
         },
         created: function () {
-            console.log(this.current)
             this.initData();
             this.suggestion();
         },
@@ -200,7 +199,6 @@
                     }
                 }
                 if (this.current === 0) {
-                    console.log(this);
                     let dateList = []
                     this.titleList.forEach(item => {
                         if (item.windturbineId.slice(0, 2) === 'NG' || item.windturbineId.slice(0, 2) === 'MG') {
@@ -243,7 +241,6 @@
                     this.dialogVisible = false
                     this.svgVisible = false
                     this.svgWeb = ''
-                    console.log(arr);
                     if (arr[0] === 'OPEN_FJ') {
                         this.currentWindturbine = this.windturbinelist[arr[1]]
                         setTimeout(() => {
@@ -547,7 +544,12 @@
             /* 控制成功 */
             controlSuccess(msg) {
                 let bd = BackgroundData.getInstance();
-                console.log(msg);
+                for (let id in msg.data) {
+                    let val = msg.data[id]
+                    if(val.errorCode !=='0'){
+                        bd.removeCheckouts(val);
+                    }
+                }
                 if (msg.data || msg.data !== {}) {
                     // if (this.current !== 0) {
                     //     let successReport = ''

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 835 - 742
src/components/control/controlAllArea.vue


+ 2 - 1
src/components/focus/PhotoelectricDetailPages.vue

@@ -84,7 +84,7 @@
 			</div>
 			<!-- <button @click='ChangeColors()'>测试按钮</button> -->
 			<!-- <div id="main" class="echartsBox"></div> -->
-			<MultipleLineChart height="400px" :units="powerLineChartData.units" :list="powerLineChartData.value"
+			<MultipleLineChart ref="multipleLineChart" height="400px" :units="powerLineChartData.units" :list="powerLineChartData.value"
 				 :showLegend="true" />
 		</div>
 	</el-dialog>
@@ -156,6 +156,7 @@
 					})
 				})
 				this.powerLineChartData = this.chartData;
+				this.$refs.multipleLineChart.initChart(this.chartData)
 			}
 		},
 	};

+ 220 - 0
src/components/focus/agcDetails.vue

@@ -0,0 +1,220 @@
+<template>
+    <el-dialog width="90%" @open="opened()" @closed="closed()" :fullscreen="true" :show-close="true" class="dialogs">
+        <template #title>
+            <div class="showTitles">
+                <div class="titles">AGC监控</div>
+            </div>
+        </template>
+        <div class="bodyy">
+            <DataDetails ref="detailst" :allDate="allDate" :allChartDate="allChartDate" :station="station"
+                @handleClick="handleClicks"></DataDetails>
+            <DetailsCharts v-model="detailsDisplay" :showData="showData" @closeds="closeds"></DetailsCharts>
+        </div>
+    </el-dialog>
+</template>
+<script>
+    import DataDetails from './dataDetails'
+    import DetailsCharts from './detailsCharts'
+    import { Photoelectric } from "utils/PhotoelectricDetailPages";
+    import api from "api/index";
+    export default {
+        components: {
+            DataDetails,
+            DetailsCharts
+        },
+        data() {
+            return {
+                station: [
+                    {
+                        id: 'MHS_BT',
+                        name: '麻黄山第二风电场',
+                        names: '麻黄山',
+                    },
+
+                    {
+                        id: 'NSS_BT',
+                        name: '牛首山第二风电场',
+                        names: '牛首山',
+                    },
+                    {
+                        id: 'QS_BT',
+                        name: '麻黄山第六风电场',
+                        names: '青山',
+                    },
+                    {
+                        id: 'XN6_BT',
+                        name: '星能第六风电场',
+                        names: '石板泉一期',
+                    },
+                    {
+                        id: 'N5_BT',
+                        name: '牛首山第五风电场',
+                        names: '二三四期',
+                    },
+                    {
+                        id: 'XS_BT',
+                        name: '香山第五风电场',
+                        names: '香山',
+                    },
+                    {
+                        id: 'SL_BT',
+                        name: '宋堡第六风电场',
+                        names: '青山三期',
+                    },
+                ],
+                allDate: {},
+                allChartDate: [],
+                detailsDisplay: false,
+                showData: {},
+            };
+        },
+        mounted() {
+
+        },
+        updated() {
+            this.getLatest(0)
+            this.getChartData(0)
+        },
+        methods: {
+            getLatest(index) {
+                let dialogData = {}
+                let thisKey = Photoelectric[this.station[index].id];
+                let array = []
+                thisKey.forEach(item => { item.value ? array.push(item.value) : '' })
+                let params = array.join(',')
+                api.getLatest(params).then(res => {
+                    for (let v in res.data) {
+                        thisKey.forEach(item => {
+                            let calc = item.calc ? item.calc : 1;
+                            if (item.value === v) {
+                                dialogData[item.tag] = {
+                                    name: item.name,
+                                    value: res.data[v].doubleValue ? res.data[v].doubleValue === 0 ? '0' : (res.data[v].doubleValue * calc).toFixed(2) : (res.data[v].booleanValue ? 1 : 0)
+                                }
+                            }
+                        })
+                    }
+                    this.allDate[this.station[index].id] = dialogData
+                    this.allDate[this.station[index].id].InstalledCapacity = Photoelectric[this.station[index].id].find(ele => {
+                        return ele.tag == 'InstalledCapacity'
+                    });
+                    index++
+                    if (index >= this.station.length) {
+                        setTimeout(() => {
+                            this.getLatest(0)
+                        }, 3000);
+                    } else {
+                        this.getLatest(index)
+                    }
+                })
+            },
+            getChartData(index) {
+                let thisKey = Photoelectric[this.station[index].id];
+                let date = new Date()
+                let endTs = date.getTime();
+                let starTs = endTs - 28800000;
+                let chartData = {
+                    value: []
+                }
+                const PowerSet = thisKey.find(ele => {
+                    return ele.tag == 'PowerSet'
+                });
+                const ActualPower = thisKey.find(ele => {
+                    return ele.tag == 'ActualPower'
+                });
+                let PowerSetData = [],
+                    ActualPowerData = [];
+                api.getPower({
+                    tagName: PowerSet.value,
+                    startTs: starTs,
+                    endTs: endTs,
+                    interval: 60,
+                }).then(res1 => {
+                    api.getPower({
+                        tagName: ActualPower.value,
+                        startTs: starTs,
+                        endTs: endTs,
+                        interval: 60,
+                    }).then(res2 => {
+                        res1.data.forEach(item => {
+                            PowerSetData.push({
+                                ts: item.ts,
+                                doubleValue: item.doubleValue * PowerSet.calc
+                            })
+                        })
+                        res2.data.forEach(item => {
+                            ActualPowerData.push({
+                                ts: item.ts,
+                                doubleValue: item.doubleValue * ActualPower.calc
+                            })
+                        })
+                        chartData.value[0] = {
+                            title: "有功设定限值(MW)",
+                            yAxisIndex: 0,
+                            value: []
+                        };
+                        chartData.value[1] = {
+                            title: "实发有功(MW)",
+                            yAxisIndex: 0,
+                            value: []
+                        }
+                        PowerSetData.forEach(item => {
+                            chartData.value[0].value.push({
+                                text: dayjs(item.ts).format('hh:mm'),
+                                value: parseFloat((item.doubleValue).toFixed(2))
+                            })
+                        })
+                        ActualPowerData.forEach(item => {
+                            chartData.value[1].value.push({
+                                text: dayjs(item.ts).format('hh:mm'),
+                                value: parseFloat((item.doubleValue).toFixed(2))
+                            })
+                        })
+                        chartData.id = this.station[index].id
+                        this.allChartDate.push(chartData)
+                        console.log(this.allChartDate);
+                        index++
+                        if (index >= this.station.length) {
+                            this.$refs.detailst.totleErtcher()
+                            setTimeout(() => {
+                                this.allChartDate = []
+                                this.getChartData(0)
+                            }, 60000);
+                        } else {
+                            this.getChartData(index)
+                        }
+                    })
+                })
+            },
+            opened() {
+
+            },
+            closed() {
+
+            },
+            handleClicks(id) {
+                this.showData = this.allChartDate.find(ele => {
+                    return ele.id == id
+                });
+                this.showData.name = this.station.find(ele => {
+                    return ele.id == id
+                });
+                this.detailsDisplay = true
+            },
+            closeds() {
+                this.detailsDisplay = false
+            },
+        },
+    }
+</script>
+
+<style scoped>
+    .bodyy {
+        display: flex;
+        flex-direction: row;
+        background-color: black;
+        width: 100%;
+        margin-top: -30px;
+        height: 91vh;
+    }
+</style>

+ 394 - 0
src/components/focus/dataDetails.vue

@@ -0,0 +1,394 @@
+<template>
+    <div class="body">
+        <div :class="index<3?'showContents':'showContents'" v-for="(item, index) in station" :key="index">
+            <div class="stationName">
+                <div class="titleName">{{item.name}}</div>
+                <div class="titleNames">({{item.names}})</div>
+                <img v-if="allDate[item.id]?.Status?.value === 0" class="statusIcons"
+                    src="../../assets/img/controlcenter/daraTrue.png">
+                <img v-else class="statusIcons"
+                    src="../../assets/img/controlcenter/dataFalse.png">
+                <div class="titleNames" v-if="allDate[item.id]?.Status?.value !== 0">
+                    {{((1-this.allDate[item.id]?.PowerSet?.value/this.allDate[item.id]?.InstalledCapacity?.value)*100).toFixed(2)}}%
+                </div>
+            </div>
+            <div class="dataList">
+                <div class="data">
+                    <div class="name">有功设定限值:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.PowerSet?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+                <div class="data">
+                    <div class="name">实发有功:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.ActualPower?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+                <div class="data">
+                    <div class="name">AGC可调上限:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.AgcUp?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+                <div class="data">
+                    <div class="name">理论功率:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.TheoryPower?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+                <div class="data">
+                    <div class="name">AGC可调下限:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.AgcLower?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+
+                <div class="data">
+                    <div class="name">预测功率:</div>
+                    <div :class="index<3?'nums':'nums'">{{allDate[item.id]?.ForecastPower?.value??0}}</div>
+                    <div class="unit">MW</div>
+                </div>
+            </div>
+            <div class="condition">
+                <div class="status">
+                    <div class="name">{{allDate[item.id]?.AgcIn?.name}}:</div>
+                    <img v-if="allDate[item.id]?.AgcIn?.value === 0" class="statusIcon"
+                        src="../../assets/img/controlcenter/daraTrue.png">
+                    <img v-else-if="allDate[item.id]?.AgcIn?.value === 1" class="statusIcon"
+                        src="../../assets/img/controlcenter/dataFalse.png">
+                    <div v-else-if="allDate[item.id]?.AgcIn?.value === ''">
+                        暂无数据
+                    </div>
+                </div>
+                <div class="status">
+                    <div class="name">{{allDate[item.id]?.AgcFar?.name}}:</div>
+                    <img v-if="allDate[item.id]?.AgcFar?.value === 0" class="statusIcon"
+                        src="../../assets/img/controlcenter/daraTrue.png">
+                    <img v-else-if="allDate[item.id]?.AgcFar?.value === 1" class="statusIcon"
+                        src="../../assets/img/controlcenter/dataFalse.png">
+                    <div v-else-if="allDate[item.id]?.AgcFar?.value === ''">
+                        暂无数据
+                    </div>
+                </div>
+                <div class="status">
+                    <div class="name">{{allDate[item.id]?.SumLock?.name}}:</div>
+                    <img v-if="allDate[item.id]?.SumLock?.value === 0" class="statusIcon"
+                        src="../../assets/img/controlcenter/daraTrue.png">
+                    <img v-else-if="allDate[item.id]?.SumLock?.value === 1" class="statusIcon"
+                        src="../../assets/img/controlcenter/dataFalse.png">
+                    <div v-else-if="allDate[item.id]?.SumLock?.value === ''">
+                        暂无数据
+                    </div>
+                </div>
+                <div class="status">
+                    <div class="name">{{allDate[item.id]?.SubLock?.name}}:</div>
+                    <img v-if="allDate[item.id]?.SubLock?.value === 0" class="statusIcon"
+                        src="../../assets/img/controlcenter/daraTrue.png">
+                    <img v-else-if="allDate[item.id]?.SubLock?.value === 1" class="statusIcon"
+                        src="../../assets/img/controlcenter/dataFalse.png">
+                    <div v-else-if="allDate[item.id]?.SubLock?.value === ''">
+                        暂无数据
+                    </div>
+                </div>
+            </div>
+            <div :id="item.id" class="echarts" @click="handleClick(item.id)"></div>
+        </div>
+        
+    </div>
+    
+</template>
+<script>
+    import * as echarts from "echarts";
+    export default {
+        data() {
+            return {
+            };
+        },
+        props: {
+            allDate: {
+                type: String,
+                default: ''
+            },
+            allChartDate: {
+                type: Array,
+                default: () => {
+                    return []
+                },
+            },
+            station: {
+                type: Array,
+                default: () => {
+                    return []
+                },
+            },
+        },
+        updated() {
+            // this.totleErtcher() 
+        },
+        mounted() {
+
+        },
+        methods: {
+            totleErtcher() {
+                console.log(this.allDate);
+                this.allChartDate.forEach(item => {
+                    let chartDom = document.getElementById(item.id);
+                    let myChart = echarts.init(chartDom, '#ffffff');
+                    let option;
+                    option = {
+                        legend: {
+                            show: true,
+                            data: item.value.map((t) => {
+                                return t.title;
+                            }),
+                            right: 56,
+                            icon: "circle",
+                            itemWidth: 6,
+                            inactiveColor: '#606769',
+                            textStyle: {
+                                color: '#B3BDC0',
+                                fontSize: 12,
+                            },
+                        },
+
+                        xAxis: [
+                            {
+                                type: "category",
+                                boundaryGap: false,
+                                axisLabel: {
+                                    // interval: 60,
+                                    showMinLabel: true,
+                                    showMaxLabel: true,
+                                    formatter: "{value}",
+                                    fontSize: 14,
+                                    textStyle: {
+                                        color: '#606769',
+                                    },
+                                },
+                                axisLine: {
+                                    show: false,
+                                },
+                                data: item.value[0].value.map(items => {
+                                    return items.text;
+                                }),
+                            },
+                        ],
+                        yAxis: {
+                            type: "value",
+                            axisLabel: {
+                                formatter: "{value}",
+                                fontSize: 14,
+                            },
+                            axisLine: {
+                                show: false,
+                            },
+                            splitLine: {
+                                show: true,
+                                lineStyle: {
+                                    color: '#606769',
+                                    type: "dashed",
+                                },
+                            },
+                        },
+                        dataZoom: [
+                            {
+                                show: false,
+                                type: 'inside',
+                                start: 0,
+                                end: 100
+                            },
+                        ],
+                        series: [{
+                            name: item.value[0].title,
+                            smooth: true,
+                            showSymbol: false,
+                            data: item.value[0].value.map(items => {
+                                return items.value;
+                            }),
+                            type: 'line',
+                            lineStyle: {
+                                normal: {
+                                    color: 'rgba(75, 85, 174, 1)',
+                                    width: 1,
+                                },
+                            },
+                        },
+                        {
+                            name: item.value[1].title,
+                            smooth: true,
+                            showSymbol: false,
+                            data: item.value[1].value.map(items => {
+                                return items.value;
+                            }),
+                            type: 'line',
+                            lineStyle: {
+                                normal: {
+                                    color: 'rgba(05, 187, 76, 1)',
+                                    width: 1,
+                                },
+                            },
+                        }]
+                    };
+                    option && myChart.setOption(option);
+                })
+
+            },
+            handleClick(id) {
+                this.$emit('handleClick', id);
+            },
+            opened() {
+
+            },
+            closed() {
+                this.detailsDisplay = false 
+            }
+        },
+    }
+</script>
+
+<style scoped>
+    .showTitles {
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        justify-content: center;
+        margin-top: -10px;
+        font-size: 18px;
+        color: #FFFFFF;
+    }
+
+    .showContent {
+        width: 32%;
+        display: flex;
+        flex-direction: column;
+        border: 1px solid rgba(77, 77, 77, 1);
+        /* background-color: rgba(77, 77, 77, 1); */
+        margin-right: 10px;
+        margin-left: 10px;
+        height: 44vh;
+        margin-top: 20px;
+        align-items: center;
+    }
+
+    .showContents {
+        width: 23.7%;
+        display: flex;
+        flex-direction: column;
+        border: 1px solid rgba(77, 77, 77, 1);
+        /* background-color: rgba(77, 77, 77, 1); */
+        margin-right: 10px;
+        margin-left: 10px;
+        height: 43vh;
+        margin-top: 20px;
+        align-items: center;
+    }
+
+    .stationName {
+        font-size: 20px;
+        width: 400px;
+        height: 45px;
+        border: 1px solid rgba(77, 77, 77, 1);
+        display: flex;
+        flex-direction: row;
+        align-items: baseline;
+        justify-content: center;
+        color: #FFFFFF;
+        background-color: #000000;
+        margin-top: -15px;
+    }
+
+    .titleName {
+        margin-top: 10px;
+    }
+
+    .titleNames {
+        font-size: 12px;
+        margin-left: 10px;
+        margin-top: 10px;
+    }
+
+    .body {
+        background-color: black;
+        width: 100%;
+        display: flex;
+        flex-direction: row;
+        flex-wrap: wrap;
+        justify-content: center;
+    }
+
+    .echarts {
+        width: 110%;
+        height: 290px;
+        margin-left: 10px;
+        padding-top: 20px;
+    }
+
+    .dataList {
+        display: flex;
+        flex-direction: row;
+        flex-wrap: wrap;
+        align-items: center;
+        padding-top: 27px;
+    }
+
+    .data {
+        width: 50%;
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        margin-bottom: 12px;
+        justify-content: center;
+    }
+
+    .name {
+        display: flex;
+        flex-direction: row-reverse;
+        font-size: 12px;
+        color: #FFFFFF;
+    }
+
+    .num {
+        margin-left: 59px;
+        font-size: 16px;
+        color: #05BB4C;
+        min-width: 40px;
+    }
+
+    .nums {
+        margin-left: 29px;
+        font-size: 16px;
+        color: #05BB4C;
+        min-width: 40px;
+    }
+
+    .unit {
+        font-size: 16px;
+        color: #FFFFFF;
+        margin-left: 15px;
+    }
+
+    .condition {
+        width: 100%;
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        margin-bottom: 20px;
+        border-bottom: 1px solid #3D3D3D;
+        padding-bottom: 10px;
+    }
+
+    .status {
+        width: 25%;
+        display: flex;
+        flex-direction: row;
+        align-items: center;
+        justify-content: center;
+    }
+
+    .statusIcon {
+        width: 14px;
+        height: 14px;
+        margin-left: 8px;
+    }
+    .statusIcons {
+        width: 14px;
+        height: 14px;
+        margin-left: 20px;
+    }
+</style>

+ 155 - 0
src/components/focus/detailsCharts.vue

@@ -0,0 +1,155 @@
+<template>
+    <el-dialog width="70%" @open="opened()" @closed="closed()" :show-close="true" class="dialogs">
+        <template #title>
+            <div class="showTitles">
+                <div class="stationName">
+                    <div class="titleName">{{showData?.name?.name}}</div>
+                    <div class="titleNames">({{showData?.name?.names}})</div>
+                </div>
+            </div>
+        </template>
+        <div class="bodyy">
+            <div id="showEcharts" class="echarts"></div>
+        </div>
+    </el-dialog>
+</template>
+<script>
+    import * as echarts from "echarts";
+    export default {
+        props: {
+            showData: {
+                type: String,
+                default: ''
+            },
+        },
+        updated() {
+            this.showEcharts(this.showData)
+        },
+        methods: {
+            showEcharts(showData) {
+                let chartDom = document.getElementById('showEcharts');
+                let myChart = echarts.init(chartDom, '#ffffff');
+                let option;
+                option = {
+					legend: {
+						show: true,
+						data: showData.value.map((t) => {
+							return t.title;
+						}),
+						right: 56,
+						icon: "circle",
+						itemWidth: 6,
+						inactiveColor: '#606769',
+						textStyle: {
+							color: '#B3BDC0',
+							fontSize: 12,
+						},
+					},
+					xAxis: [
+						{
+							type: "category",
+							boundaryGap: false,
+							axisLabel: {
+								interval: 60,
+								showMinLabel: true,
+								showMaxLabel: true,
+								formatter: "{value}",
+								fontSize: 14,
+								textStyle: {
+									color: '#606769',
+								},
+							},
+							axisLine: {
+								show: false,
+							},
+							data: showData.value[0].value.map(item => {
+								return item.text;
+							}),
+						},
+					],
+					yAxis: {
+						type: "value",
+						axisLabel: {
+							formatter: "{value}",
+							fontSize: 14,
+						},
+						axisLine: {
+							show: false,
+						},
+						splitLine: {
+							show: true,
+							lineStyle: {
+								color: '#606769',
+								type: "dashed",
+							},
+						},
+					},
+					series: [{
+						name: showData.value[0].title,
+						smooth: true,
+						showSymbol: false,
+						data: showData.value[0].value.map(item => {
+							return item.value;
+						}),
+						type: 'line',
+						lineStyle: {
+							normal: {
+								color: 'rgba(75, 85, 174, 1)',
+								width: 1,
+							},
+						},
+					},
+					{
+						name: showData.value[1].title,
+						smooth: true,
+						showSymbol: false,
+						data: showData.value[1].value.map(item => {
+							return item.value;
+						}),
+						type: 'line',
+						lineStyle: {
+							normal: {
+								color: 'rgba(05, 187, 76, 1)',
+								width: 1,
+							},
+						},
+					}]
+				};
+                option && myChart.setOption(option);
+            },
+            opened() {
+
+            },
+            closed() {
+                this.$emit('closeds');
+            },
+        },
+    }
+</script>
+<style scoped>
+    .echarts {
+        width: 1300px;
+        height: 60vh;
+    }
+
+    .stationName {
+        font-size: 20px;
+        width: 400px;
+        height: 45px;
+        display: flex;
+        flex-direction: row;
+        align-items: baseline;
+        justify-content: center;
+        color: #FFFFFF;
+    }
+
+    .titleName {
+        margin-top: 10px;
+    }
+
+    .titleNames {
+        font-size: 12px;
+        margin-left: 10px;
+        margin-top: 10px;
+    }
+</style>

+ 32 - 7
src/components/focus/focusArea.vue

@@ -2,6 +2,7 @@
     <div class="body">
         <img class="logo" src="../../assets/img/logo.png" alt="">
         <div class="title">关注区</div>
+        <div class="agc" @click="showAGC">AGC监控</div>
         <div style="margin-top: 50px; margin-left: 10px; height: 24vh;">
             <el-scrollbar>
                 <div class="scoll" style="margin-left: 5px;">
@@ -9,22 +10,33 @@
                 </div>
             </el-scrollbar>
         </div>
+        <AGCDetails v-model="display"></AGCDetails>
     </div>
-    <!-- <boxSelect node=".box">
-        <div class="box">1111</div>
-        <div class="box">2222</div>
-        <div class="box">3333</div>
-        <div class="box">4444</div>
-     </boxSelect> -->
+
 </template>
 <script>
     import FocusCard from "./focusCard.vue";
+    import AGCDetails from "./agcDetails.vue";
+    
     // import boxSelect from "components/boxSelect.vue";
     export default {
+        data() {
+            return {
+                display: false,
+                
+            };
+        },
         components: {
             FocusCard,
+            AGCDetails
             // boxSelect,
         },
+        methods: {
+            showAGC() {
+                this.display = true
+            },
+            
+        },
     }
 </script>
 <style scoped>
@@ -72,5 +84,18 @@
         top: 2px;
         left: 12px;
     }
-    
+
+    .agc {
+        position: absolute;
+        color: #ffffff;
+        font-size: 14px;
+        right: 0;
+        top: 23px;
+        width: 80px;
+        height: 30px;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        background-color: rgba(37, 116, 219, 1);
+    }
 </style>

+ 51 - 45
src/components/focus/focusCard.vue

@@ -11,9 +11,10 @@
 	<PhotoelectricDetailPages ref="photo" @closed="closed()" :data="dialogData.data"
 		:stationName="dialogData.stationName" v-model="dialogVisible">
 	</PhotoelectricDetailPages>
-	<WindturbineDetailPages v-model="windVisible" :windturbine="currentWindturbine" @close="close"></WindturbineDetailPages>
-	<StationSvgDetailPages v-model="svgVisible"
-		:stationName="stationNames" :svgWeb="svgWeb" @close="close"></StationSvgDetailPages>
+	<WindturbineDetailPages v-model="windVisible" :windturbine="currentWindturbine" @close="close">
+	</WindturbineDetailPages>
+	<StationSvgDetailPages v-model="svgVisible" :stationName="stationNames" :svgWeb="svgWeb" @close="close">
+	</StationSvgDetailPages>
 </template>
 
 <script>
@@ -23,7 +24,7 @@
 	import MessageBridge from 'utils/MessageBridge'
 	import StationSvgDetailPages from "../stationSvgDetailPages.vue";
 	import WindturbineDetailPages from "../WindturbineDetailPages.vue";
-	
+	import api from "api/index";
 	import axios from 'axios';
 	import dayjs from 'dayjs'
 	export default {
@@ -31,7 +32,7 @@
 		props: ["datas"],
 		data() {
 			return {
-				values: new Array(),
+				values: [],
 				currentWindturbine: {},
 				dialogVisible: false,
 				svgVisible: false,
@@ -122,8 +123,7 @@
 			refreshData() {
 				let bd = BackgroundData.getInstance();
 				let list = new Array();
-				let arr = [],
-					thisKey = ''
+				let thisKey = ''
 				for (let v in bd.Recommends) {
 					thisKey += v + ',';
 				}
@@ -150,7 +150,7 @@
 					this.svgVisible = true;
 					this.svgWeb = vl.stationId;
 					this.stationNames = vl.name
-				} else if(vl.attentionType === 'Station' && vl.type === 'ElectricityRestrictions'){
+				} else if (vl.attentionType === 'Station' && vl.type === 'ElectricityRestrictions') {
 					let that = this;
 					that.timeIndex = 0;
 					that.ajaxDetail(vl, index);
@@ -158,8 +158,8 @@
 						that.ajaxDetail(vl, index);
 					}, 3000);
 					that.dialogVisible = true;
-					that.dialogData.stationName = vl.stationName;
-				}else if(vl.attentionType === 'WindTurbine'){
+					that.dialogData.stationName = vl.name;
+				} else if (vl.attentionType === 'WindTurbine') {
 					this.windVisible = true;
 					this.currentWindturbine = this.$store.state.windturbinelist[vl.id];
 				}
@@ -170,24 +170,23 @@
 				let array = []
 				thisKey.forEach(item => { item.value ? array.push(item.value) : '' })
 				let params = array.join(',')
-				axios.get(process.env.VUE_APP_ADAPTERURL + `/ts/latest?keys=` + params)
-					.then(res => {
-						if (res) {
-							console.log(res, this.dialogData.data, thisKey);
-							for (let v in res.data) {
-								thisKey.forEach(item => {
-									let calc = item.calc ? item.calc : 1;
-									if (item.value === v) {
-										this.dialogData.data[item.tag] = {
-											name: item.name,
-											value: res.data[v].doubleValue ? res.data[v].doubleValue === 0 ? '0' : (res.data[v].doubleValue * calc).toFixed(2) : (res.data[v].booleanValue ? 1 : 0)
-										}
-										console.log(this.dialogData.data);
+				api.getLatest(params).then(res => {
+					if (res) {
+						console.log(res, this.dialogData.data, thisKey);
+						for (let v in res.data) {
+							thisKey.forEach(item => {
+								let calc = item.calc ? item.calc : 1;
+								if (item.value === v) {
+									this.dialogData.data[item.tag] = {
+										name: item.name,
+										value: res.data[v].doubleValue ? res.data[v].doubleValue === 0 ? '0' : (res.data[v].doubleValue * calc).toFixed(2) : (res.data[v].booleanValue ? 1 : 0)
 									}
-								})
-							}
+									console.log(this.dialogData.data);
+								}
+							})
 						}
-					})
+					}
+				})
 				if (this.timeIndex == 0) {//一分钟执行一次
 					let date = new Date()
 					let endTs = date.getTime();
@@ -200,26 +199,33 @@
 					});
 					let PowerSetData = [],
 						ActualPowerData = [];
-					axios.get(process.env.VUE_APP_ADAPTERURL + `/ts/history/snap?tagName=` + PowerSet.value + '&startTs=' +
-						starTs +
-						'&endTs=' + endTs).then(res1 => {
-							axios.get(process.env.VUE_APP_ADAPTERURL + `/ts/history/snap?tagName=` + ActualPower.value +
-								'&startTs=' + starTs + '&endTs=' + endTs).then(res2 => {
-									res1.data.forEach(item => {
-										PowerSetData.push({
-											ts: item.ts,
-											doubleValue: item.doubleValue * PowerSet.calc
-										})
-									})
-									res2.data.forEach(item => {
-										ActualPowerData.push({
-											ts: item.ts,
-											doubleValue: item.doubleValue * ActualPower.calc
-										})
-									})
-									this.$refs.photo.initData(PowerSetData, ActualPowerData);
-								});
+					api.getPower({
+						tagName: PowerSet.value,
+						startTs: starTs,
+						endTs: endTs,
+						interval: 60,
+					}).then(res1 => {
+						api.getPower({
+							tagName: ActualPower.value,
+							startTs: starTs,
+							endTs: endTs,
+							interval: 60,
+						}).then(res2 => {
+							res1.data.forEach(item => {
+								PowerSetData.push({
+									ts: item.ts,
+									doubleValue: item.doubleValue * PowerSet.calc
+								})
+							})
+							res2.data.forEach(item => {
+								ActualPowerData.push({
+									ts: item.ts,
+									doubleValue: item.doubleValue * ActualPower.calc
+								})
+							})
+							this.$refs.photo.initData(PowerSetData, ActualPowerData);
 						});
+					});
 				} else if (this.timeIndex == 20) {
 					this.timeIndex = -1;
 				}

+ 71 - 246
src/components/focus/multiple-line-chart.vue

@@ -1,182 +1,28 @@
 <template>
-  <div class="chart" :id="id"></div>
+  <div class="chart" id="showEchart"></div>
 </template>
 
 <script>
   import * as echarts from "echarts";
-
   export default {
     name: "multiple-line-chart",
     componentName: "multiple-line-chart",
-    watch: {
-      'list': {
-        deep: true,
-        handler: function (json) {
-          this.initChart()
-        }
-      }
-    },
-    props: {
-      width: {
-        type: String,
-        default: "100%",
-      },
-      height: {
-        type: String,
-        default: "13.889vh",
-      },
-      // 数据
-      list: {
-        type: Array,
-        default: () => [
-          {
-            title: "有功设定限值(MW)",
-            yAxisIndex: 0,
-            value: [],
-          },
-          {
-            title: "实发有功(MW)",
-            yAxisIndex: 0,
-            value: [],
-          },
-        ],
-      },
-      colors: {
-        type: Array,
-        default: () => ["rgba(75, 85, 174, 1)", "rgba(05, 187, 76, 1)"]
-      },
-      // 单位
-      units: {
-        type: Array,
-        default: () => ["(MW)", "(风速)"],
-      },
-      showLegend: {
-        type: Boolean,
-        default: false,
-      },
-      hoverType: {
-        type: String,
-        default: "item",
-      },
-    },
     data() {
       return {
         id: "",
         chart: null,
-        // colors: ["#ffffff", "#ffffff"],
       };
     },
-    computed: {
-      datas() {
-        return this.list.map((t) => {
-          return t.value;
-        });
-      },
-      legend() {
-        return this.list.map((t) => {
-          return t.title;
-        });
-      },
-      xdata() {
-        if (this.list.length > 0)
-          return this.list[0].value.map((t) => {
-            return t.text;
-          });
-        return [];
-      },
-      series() {
-        let result = [];
-        this.list.forEach((value, index) => {
-          result.push({
-            name: value.title,
-            type: "line",
-            smooth: true,
-            showSymbol: false,
-            zlevel: index,
-            lineStyle: {
-              normal: {
-                color: this.colors[index],
-                width: 1,
-              },
-            },
-            itemStyle: {
-              normal: {
-                color: this.colors[index],
-              },
-            },
-            tooltip: {
-              show: true,
-              position: [10, 10],
-            },
-            yAxisIndex: value.yAxisIndex,
-            data: value.value.map((t) => {
-              return t.value;
-            }),
-          });
-        });
-
-        return result;
-      },
-      yAxis() {
-        let result = [];
-        this.units.forEach((value, index) => {
-          result.push({
-            type: "value",
-            name: value,
-            axisLabel: {
-              formatter: "{value}",
-              fontSize: 14,
-            },
-            axisLine: {
-              show: false,
-            },
-            //分格线
-            splitLine: {
-              show: index == 0,
-              lineStyle: {
-                color: '#606769',
-                type: "dashed",
-              },
-            },
-          });
-        });
-
-        return result;
-      },
-    },
     methods: {
-      hexToRgba(hex, opacity) {
-        let rgbaColor = "";
-        let reg = /^#[\da-f]{6}$/i;
-        if (reg.test(hex)) {
-          rgbaColor = `rgba(${parseInt("0x" + hex.slice(1, 3))},${parseInt("0x" + hex.slice(3, 5))},${parseInt("0x" + hex.slice(5, 7))},${opacity})`;
-        }
-        return rgbaColor;
-      },
-      resize() { },
-      initChart() {
-        let chart = echarts.init(this.$el);
-
+      initChart(chartData) {
+        let chartDom = document.getElementById('showEchart');
+        let myChart = echarts.init(chartDom, '#ffffff');
         let option = {
-          color: this.colors,
-          tooltip: {
-            trigger: this.hoverType,
-            axisPointer:
-              this.hoverType != "item"
-                ? {
-                  type: "cross",
-                }
-                : {},
-            backgroundColor: "rgba(0,0,0,0.4)",
-            borderColor: '#606769',
-            textStyle: {
-              fontSize: 16,
-              color: "#4B55AE",
-            },
-          },
           legend: {
-            show: this.showLegend,
-            data: this.legend,
+            show: true,
+            data: chartData.value.map((t) => {
+              return t.title;
+            }),
             right: 56,
             icon: "circle",
             itemWidth: 6,
@@ -186,18 +32,13 @@
               fontSize: 12,
             },
           },
-          grid: {
-            top: 32,
-            left: 40,
-            right: 40,
-            bottom: 24,
-          },
+
           xAxis: [
             {
               type: "category",
               boundaryGap: false,
               axisLabel: {
-                interval: 60,
+                // interval: 60,
                 showMinLabel: true,
                 showMaxLabel: true,
                 formatter: "{value}",
@@ -209,92 +50,76 @@
               axisLine: {
                 show: false,
               },
-              data: this.xdata,
+              data: chartData.value[0].value.map(items => {
+                return items.text;
+              }),
             },
           ],
-          yAxis: this.yAxis,
-          series: this.series,
-          // series: [
-          //   {
-          //     name: this.list[0].title,
-          //     type: "line",
-          //     smooth: true,
-          //     showSymbol: false,
-          //     zlevel: 0,
-          //     lineStyle: {
-          //       normal: {
-          //         color: "#4B55AE",
-          //         width: 1,
-          //       },
-          //     },
-          //     tooltip: {
-          //       show: true,
-          //       position: [10, 10],
-          //     },
-          //     yAxisIndex: this.list[0].yAxisIndex,
-          //     data: this.list[0].value.map((t) => {
-          //       return t.value;
-          //     }),
-          //   },
-          //   {
-          //     name: this.list[1].title,
-          //     type: "line",
-          //     smooth: true,
-          //     showSymbol: false,
-          //     zlevel: 1,
-          //     lineStyle: {
-          //       normal: {
-          //         color: "#05BB4C",
-          //         width: 1,
-          //       },
-          //     },
-          //     tooltip: {
-          //       show: true,
-          //       position: [10, 10],
-          //     },
-          //     yAxisIndex: this.list[1].yAxisIndex,
-          //     data: this.list[1].value.map((t) => {
-          //       return t.value;
-          //     }),
-          //   }
-          // ],
-        };
-        chart.clear();
-        chart && option && chart.setOption(option);
-        this.resize = function () {
-          chart.resize();
+          yAxis: {
+            type: "value",
+            axisLabel: {
+              formatter: "{value}",
+              fontSize: 14,
+            },
+            axisLine: {
+              show: false,
+            },
+            splitLine: {
+              show: true,
+              lineStyle: {
+                color: '#606769',
+                type: "dashed",
+              },
+            },
+          },
+          dataZoom: [
+            {
+              show: false,
+              type: 'inside',
+              start: 0,
+              end: 100
+            },
+          ],
+          series: [{
+            name: chartData.value[0].title,
+            smooth: true,
+            showSymbol: false,
+            data: chartData.value[0].value.map(items => {
+              return items.value;
+            }),
+            type: 'line',
+            lineStyle: {
+              normal: {
+                color: 'rgba(75, 85, 174, 1)',
+                width: 1,
+              },
+            },
+          },
+          {
+            name: chartData.value[1].title,
+            smooth: true,
+            showSymbol: false,
+            data: chartData.value[1].value.map(items => {
+              return items.value;
+            }),
+            type: 'line',
+            lineStyle: {
+              normal: {
+                color: 'rgba(05, 187, 76, 1)',
+                width: 1,
+              },
+            },
+          }]
         };
-        window.addEventListener("resize", this.resize);
-        chart.resize();
+        option && myChart.setOption(option);
       },
     },
-    created() {
-      this.$nextTick(() => {
-        this.id = "pie-chart-photo";
-      });
-    },
-    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;
+    width: 1050px;
+    height: 40vh;
   }
 </style>

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 145
src/components/modeControl/dataDetails.vue


+ 7 - 7
src/components/modeControl/detailPages.vue

@@ -10,33 +10,33 @@
 			<div class="dataList">
 				<div class="data">
 					<div class="name">健康指数:</div>
-					<div class="num">{{showDate.healthIndex.value}}</div>
+					<div class="num">{{showDate?.healthIndex?.value}}</div>
 				</div>
 				<div class="data">
 					<div class="name">资源指数:</div>
-					<div class="num">{{showDate.resourceIndex.value}}</div>
+					<div class="num">{{showDate?.resourceIndex?.value}}</div>
 				</div>
 				<div class="data">
 					<div class="name">风能利用率:</div>
-					<div class="num">{{showDate.windEnergyRate.value}}%</div>
+					<div class="num">{{showDate?.windEnergyRate?.value}}%</div>
 				</div>
 				<div class="data">
 					<div class="name">曲线跟随率:</div>
-					<div class="num">{{showDate.curveFollowingRate.value}}%</div>
+					<div class="num">{{showDate?.curveFollowingRate?.value}}%</div>
 				</div>
 				<div class="data">
 					<div class="name">实际功率:</div>
-					<div class="num">{{showDate.realTimePower.value}}</div>
+					<div class="num">{{showDate?.realTimePower?.value}}</div>
 					<div class="unit">MW</div>
 				</div>
 				<div class="data">
 					<div class="name">理论功率:</div>
-					<div class="num">{{showDate.theoreticalPower.value}}</div>
+					<div class="num">{{showDate?.theoreticalPower?.value}}</div>
 					<div class="unit" @click='ChangeColor()'>MW</div>
 				</div>
 				<div class="data">
 					<div class="name">AGC有功设定:</div>
-					<div class="num">{{showDate.agcPowerSet.value}}</div>
+					<div class="num">{{showDate?.agcPowerSet?.value}}</div>
 					<div class="unit" @click='ChangeColors()'>MW</div>
 				</div>
 			</div>

+ 2 - 0
src/components/modeControl/modeControl.vue

@@ -299,6 +299,8 @@
                             this.current = values
                         }
                     }
+                }else{
+                    this.$router.push(`/ManualPage?current=${values}`)
                 }
             },
             dbClick() {

+ 487 - 433
src/components/problem/areaCard.vue

@@ -1,463 +1,517 @@
 /* 自定义tabs */
 <template>
-    <div class="body" :style="style">
-        <img class="logo" src="../../assets/img/logo.png" alt="">
-        <div class="title">{{ title }}</div>
-        <div style="margin-top: 50px; height: 94%;" @contextmenu="contextmenu">
-            <el-scrollbar>
-                <div class="scoll">
-                    <div class="matrix" v-if="faultList.length>0">
-                        <div class="problemTitle">故障</div>
-                        <MatrixBlock area="problem" @problem-click="handleClick" @on-click="handleDetails"
-                            :dataList="faultList"></MatrixBlock>
-                    </div>
-                    <div class="matrix" v-if="maintainList.length>0">
-                        <div class="problemTitle">维护</div>
-                        <MatrixBlock area="problem" @problem-click="handleClick" @on-click="handleDetails"
-                            :dataList="maintainList"></MatrixBlock>
-                    </div>
-                    <div class="matrix" v-if="offlineList.length>0">
-                        <div class="problemTitle">离线</div>
-                        <MatrixBlock area="problem" @problem-click="handleClick" @on-click="handleDetails"
-                            :dataList="offlineList"></MatrixBlock>
-                    </div>
-                    <div class="matrix" v-if="listedList.length>0">
-                        <div class="problemTitle">挂牌</div>
-                        <MatrixBlock area="problem" @problem-click="handleClick" @on-click="handleDetails"
-                            :dataList="listedList"></MatrixBlock>
-                    </div>
-                </div>
-            </el-scrollbar>
+  <div class="body" :style="style">
+    <img class="logo" src="../../assets/img/logo.png" alt="" />
+    <div class="title">{{ title }}</div>
+    <div style="margin-top: 50px; height: 94%" @contextmenu="contextmenu">
+      <el-scrollbar>
+        <div class="scoll">
+          <div class="matrix" v-if="faultList.length > 0">
+            <div class="problemTitle">故障</div>
+            <MatrixBlock
+              area="problem"
+              @problem-click="handleClick"
+              @on-click="handleDetails"
+              :dataList="faultList"
+            ></MatrixBlock>
+          </div>
+          <div class="matrix" v-if="maintainList.length > 0">
+            <div class="problemTitle">维护</div>
+            <MatrixBlock
+              area="problem"
+              @problem-click="handleClick"
+              @on-click="handleDetails"
+              :dataList="maintainList"
+            ></MatrixBlock>
+          </div>
+          <div class="matrix" v-if="offlineList.length > 0">
+            <div class="problemTitle">离线</div>
+            <MatrixBlock
+              area="problem"
+              @problem-click="handleClick"
+              @on-click="handleDetails"
+              :dataList="offlineList"
+            ></MatrixBlock>
+          </div>
+          <div class="matrix" v-if="listedList.length > 0">
+            <div class="problemTitle">挂牌</div>
+            <MatrixBlock
+              area="problem"
+              @problem-click="handleClick"
+              @on-click="handleDetails"
+              :dataList="listedList"
+            ></MatrixBlock>
+          </div>
         </div>
+      </el-scrollbar>
     </div>
-    <WindturbineDetailPages v-model="dialogVisible" :showSvg="showSvg" @close="handleClose"
-        :windturbine="currentWindturbine"></WindturbineDetailPages>
+  </div>
+  <WindturbineDetailPages
+    v-model="dialogVisible"
+    :showSvg="showSvg"
+    @close="handleClose"
+    :windturbine="currentWindturbine"
+  ></WindturbineDetailPages>
 </template>
 
 <script>
-    import BackgroundData from 'utils/BackgroundData'
-    import WindturbineDetailPages from "../WindturbineDetailPages.vue";
-    import MatrixBlock from "../matrixBlock.vue";
-    import api from "api/index";
-    export default {
-        name: 'gy-card',
-        components: {
-            WindturbineDetailPages,
-            MatrixBlock
+import BackgroundData from "utils/BackgroundData";
+import WindturbineDetailPages from "../WindturbineDetailPages.vue";
+import MatrixBlock from "../matrixBlock.vue";
+import api from "api/index";
+export default {
+  name: "gy-card",
+  components: {
+    WindturbineDetailPages,
+    MatrixBlock,
+  },
+  emits: ["parentRun"],
+  props: {
+    title: {
+      type: String,
+      default: "",
+      required: true,
+    },
+    height: {
+      type: Number,
+      default: 200,
+    },
+  },
+  data() {
+    return {
+      dialogVisible: false,
+      currentWindturbine: {},
+      values: [],
+      lockValues: [],
+      hover: false,
+      big: false,
+      current: 0,
+      faultList: [],
+      maintainList: [],
+      offlineList: [],
+      listedList: [],
+      chooseList: [],
+      titleList: [
+        {
+          id: 0,
+          title: "麻黄山",
         },
-        emits: ["parentRun"],
-        props: {
-            title: {
-                type: String,
-                default: '',
-                required: true
-            },
-            height: {
-                type: Number,
-                default: 200,
-            },
+        {
+          id: 1,
+          title: "牛首山",
         },
-        data() {
-            return {
-                dialogVisible: false,
-                currentWindturbine: {},
-                values: [],
-                lockValues: [],
-                hover: false,
-                big: false,
-                current: 0,
-                faultList: [],
-                maintainList: [],
-                offlineList: [],
-                listedList: [],
-                chooseList: [],
-                titleList: [
-                    {
-                        id: 0,
-                        title: '麻黄山',
-                    },
-                    {
-                        id: 1,
-                        title: '牛首山',
-                    },
-                    {
-                        id: 2,
-                        title: '青山',
-                    },
-                    {
-                        id: 3,
-                        title: '石板泉',
-                    },
-                    {
-                        id: 4,
-                        title: '香山',
-                    },
-                ],
-                currentWindturbine: {},
-                showSvg: false,
-                controlErorCodes: [
-                    "控制成功",
-                    "控制命令发送失败",
-                    "无效的控制地址",
-                    "被控设备异常",
-                    "网络连接错误,检查场站通信",
-                    "控制结果读取超时",
-                    "未知错误",
-                    "控制命令错误",
-                    "收到无法识别数据",
-                    "未读取到数据包",
-                    "未知错误",
-                    "风机操作过频繁",
-                    "风机被挂牌",
-                    "风机操作与风机状态不符",
-                    "需要登录",
-                ],
-            }
+        {
+          id: 2,
+          title: "青山",
         },
-        computed: {
-            style() {
-                return `width: 100%; height: ${this.height}vh;`
-            },
+        {
+          id: 3,
+          title: "石板泉",
         },
-        created() {
-            this.deal()
-            this.getLocks()
+        {
+          id: 4,
+          title: "香山",
         },
-        methods: {
-            deal() {
-                let json = this.$store.state.windturbinelist
-                this.faultList = []
-                this.maintainList = []
-                this.offlineList = []
-                this.listedList = []
-                let arr = Object.keys(json).sort()
-                for (let id of arr) {
-                    let val = json[id];
-                    this.chooseList.forEach(item => {
-                        if (item.windturbineId === val.windturbineId) {
-                            val.active = true
-                        }
-                    })
-                    switch (val.status) {
-                        case 5:
-                            this.faultList.push(val)
-                            break;
-                        case 6:
-                            this.maintainList.push(val)
-                            break;
-                        case 7:
-                            this.offlineList.push(val)
-                            break;
-                    }
-                    if (val.lockValue > 0) {
-                        this.listedList.push(val)
-                    }
-                }
-            },
-            getLocks() {
-                api.getCustomerLock().then(res => {
-                    if (res) {
-                        this.lockValues = res.data
-                    }
-                })
-            },
-            handleClick(values) {
-                if (values.active) {
-                    let showIndex = null
-                    this.chooseList.forEach((item, index) => {
-                        if (item.windturbineId === values.windturbineId) {
-                            showIndex = index
-                        }
-                    })
-                    this.chooseList.splice(showIndex, 1);
-                } else {
-                    this.chooseList.push(values)
-                }
-                let flag = false
-                this.faultList.forEach(item => { if (item.windturbineId === values.windturbineId) { item.active = !item.active, flag = true } })
-                flag ? '' : this.maintainList.forEach(item => { if (item.windturbineId === values.windturbineId) { item.active = !item.active, flag = true } })
-                flag ? '' : this.offlineList.forEach(item => { if (item.windturbineId === values.windturbineId) { item.active = !item.active, flag = true } })
-                flag ? '' : this.listedList.forEach(item => { if (item.windturbineId === values.windturbineId) { item.active = !item.active } })
-            },
-            /* 右键菜单 */
-            contextmenu() {
-                const { remote } = require("electron");
-                let that = this;
-                const menuTemplate = [
-                    {
-                        label: "挂牌",
-                        submenu: [
-                            {
-                                label: "检修",
-                                click() {
-                                    that.menuClicked({ value: "CheckLock" });
-                                },
-                            },
-                            {
-                                label: "故障维修",
-                                click() {
-                                    that.menuClicked({ value: "FaultLock" });
-                                },
-                            },
-                            {
-                                label: "场内受累检修",
-                                click() {
-                                    that.menuClicked({ value: "StationCheckLock" });
-                                },
-                            },
-                            {
-                                label: "场内受累故障",
-                                click() {
-                                    that.menuClicked({ value: "StationFaulLock" });
-                                },
-                            },
-                            {
-                                label: "场外受累电网",
-                                click() {
-                                    that.menuClicked({ value: "StationPowerLineLock" });
-                                },
-                            },
-                            {
-                                label: "场外受累天气",
-                                click() {
-                                    that.menuClicked({ value: "StationWeatherLock" });
-                                },
-                            },
-                        ],
-                    },
-                    {
-                        label: "取消挂牌",
-                        click() {
-                            that.menuClicked({ value: "UnLock" });
-                        },
-                    },
-                ];
-                const menu = remote.Menu.buildFromTemplate(menuTemplate);
-
-                menu.popup(remote.getCurrentWindow());
-            },
-            menuClicked(msg) {
-                let bd = BackgroundData.getInstance();
-                if (!bd.LoginUser) {
-                    this.$notify({
-                        title: "请登录",
-                        message: "控制风机需要先登录!",
-                        type: "warning",
-                        position: "bottom-right",
-                        offset: 60,
-                        duration: 3000,
-                    });
-                    return;
-                }
-                let sendList = []
-                this.chooseList.forEach(item => {
-                    item.lockType = msg.value;
-                })
-                sendList = this.chooseList
-                if (sendList.length > 0) {
-                    this.chooseList = []
-                    let pairs = {}
-                    sendList.forEach(item => {
-                        let ct = {
-                            windturbineId: item.windturbineId,
-                            stationId: item.stationId,
-                            projectId: item.projectId,
-                            modelId: item.modelId,
-                            controlType: item.controlType,
-                            lockType: item.lockType,
-                            userName: `system_${bd.LoginUser.name}`,
-                            userId: 0,
-                        };
-                        pairs[ct.windturbineId] = ct;
-                    })
-                    api.windturbControlLock(pairs).then(res => {
-                        if (res) {
-                            this.controlSuccess(res)
-                        }
-                    })
-                }
-            },
-            /* 控制成功 */
-            controlSuccess(msg) {
-                console.log(msg);
-                let mss = '';     // 信息
-                let iserror = false;// 是否有控制错误的风机
-                for (let v in msg.data) {
-                    let val = msg.data[v];
-                    if (val.errorCode > 0) {
-                        iserror = true;
-                        mss += `${val.windturbineId}  ${this.controlErorCodes[val.errorCode]}\n`;
-                    }
-                }
-                let tp = iserror ? "success": "warning";
-                let dt = iserror ? 0 : 4500;
-                if (!iserror) {
-                    mss = "控制成功";
-                }
-
-                this.$notify({
-                    title: "控制",
-                    message: mss,
-                    type: tp,
-                    position: "bottom-right",
-                    offset: 60,
-                    duration: 3000,
-                });
-            },
-
-            /* 控制失败 */
-            controlError(err) {
-                this.$notify({
-                    title: "控制出现错误",
-                    message: err.message,
-                    type: "warning",
-                    position: "bottom-right",
-                    offset: 60,
-                    duration: 3000,
-                });
+      ],
+      currentWindturbine: {},
+      showSvg: false,
+      controlErorCodes: [
+        "控制成功",
+        "控制命令发送失败",
+        "无效的控制地址",
+        "被控设备异常",
+        "无效的控制功能",
+        "网络连接错误,检查场站通信",
+        "控制结果读取超时",
+        "未知错误",
+        "控制命令错误",
+        "收到无法识别数据",
+        "未读取到数据包",
+        "未知错误",
+        "风机操作过频繁",
+        "风机被挂牌",
+        "风机操作与风机状态不符",
+        "需要登录",
+      ],
+    };
+  },
+  computed: {
+    style() {
+      return `width: 100%; height: ${this.height}vh;`;
+    },
+  },
+  created() {
+    this.deal();
+    this.getLocks();
+  },
+  methods: {
+    deal() {
+      let json = this.$store.state.windturbinelist;
+      this.faultList = [];
+      this.maintainList = [];
+      this.offlineList = [];
+      this.listedList = [];
+      let arr = Object.keys(json).sort();
+      for (let id of arr) {
+        let val = json[id];
+        this.chooseList.forEach((item) => {
+          if (item.windturbineId === val.windturbineId) {
+            val.active = true;
+          }
+        });
+        switch (val.status) {
+          case 5:
+            this.faultList.push(val);
+            break;
+          case 6:
+            this.maintainList.push(val);
+            break;
+          case 7:
+            this.offlineList.push(val);
+            break;
+        }
+        if (val.lockValue > 0) {
+          this.listedList.push(val);
+        }
+      }
+    },
+    getLocks() {
+      api.getCustomerLock().then((res) => {
+        if (res) {
+          this.lockValues = res.data;
+        }
+      });
+    },
+    handleClick(values) {
+      if (values.active) {
+        let showIndex = null;
+        this.chooseList.forEach((item, index) => {
+          if (item.windturbineId === values.windturbineId) {
+            showIndex = index;
+          }
+        });
+        this.chooseList.splice(showIndex, 1);
+      } else {
+        this.chooseList.push(values);
+      }
+      let flag = false;
+      this.faultList.forEach((item) => {
+        if (item.windturbineId === values.windturbineId) {
+          (item.active = !item.active), (flag = true);
+        }
+      });
+      flag
+        ? ""
+        : this.maintainList.forEach((item) => {
+            if (item.windturbineId === values.windturbineId) {
+              (item.active = !item.active), (flag = true);
+            }
+          });
+      flag
+        ? ""
+        : this.offlineList.forEach((item) => {
+            if (item.windturbineId === values.windturbineId) {
+              (item.active = !item.active), (flag = true);
+            }
+          });
+      flag
+        ? ""
+        : this.listedList.forEach((item) => {
+            if (item.windturbineId === values.windturbineId) {
+              item.active = !item.active;
+            }
+          });
+    },
+    /* 右键菜单 */
+    contextmenu() {
+      const { remote } = require("electron");
+      let that = this;
+      const menuTemplate = [
+        {
+          label: "挂牌",
+          submenu: [
+            {
+              label: "检修",
+              click() {
+                that.menuClicked({ value: "CheckLock" });
+              },
             },
-            filter(value, windturbineId) {
-                let array = [];
-                let flag = false;
-                for (let i = 0; i < value.length; i++) {
-                    if (value[i].windturbineId == windturbineId) {
-                        flag = true;
-                        array.push(flag); // 风机是否已经存在
-                        array.push(i); // 风机在values数组的位置
-                        array.push(value[i].active); // 当前风机是否被选中
-                        break;
-                    }
-                }
-                return array;
+            {
+              label: "故障维修",
+              click() {
+                that.menuClicked({ value: "FaultLock" });
+              },
             },
-            changeTitle(id) {
-                this.current = id
-                this.$refs.malfunction.dateClick(id)
+            {
+              label: "场内受累检修",
+              click() {
+                that.menuClicked({ value: "StationCheckLock" });
+              },
             },
-            addCard(val) {
-                let active = false;
-                let array = this.filter(this.values, val.windturbineId);
-                if (!array[0]) {
-                    // 维护
-                    val.active = active;
-                    if (val.modelId.indexOf("105") >= 0) {
-                        val.rollSpeed *= 9.55;
-                    }
-                    this.values.push(val);
-                } else {
-                    val.active = array[2];
-                    this.values.splice(array[1], 1, val);
-                }
-                console.log(this.values)
+            {
+              label: "场内受累故障",
+              click() {
+                that.menuClicked({ value: "StationFaulLock" });
+              },
             },
-            handleDetails(itm) {
-                this.dialogVisible = true;
-                this.currentWindturbine = itm;
+            {
+              label: "场外受累电网",
+              click() {
+                that.menuClicked({ value: "StationPowerLineLock" });
+              },
             },
-            handleClose() {
-                this.dialogVisible = false
-                this.showSvg = false
-                this.getLocks()
+            {
+              label: "场外受累天气",
+              click() {
+                that.menuClicked({ value: "StationWeatherLock" });
+              },
             },
+          ],
         },
-        watch: {
-            "$store.getters.windturbinelist": {
-                deep: true,
-                handler: function (json) {
-                    this.faultList = []
-                    this.maintainList = []
-                    this.offlineList = []
-                    this.listedList = []
-                    let arr = Object.keys(json).sort()
-                    for (let id of arr) {
-                        let val = json[id];
-                        this.chooseList.forEach(item => {
-                            if (item.windturbineId === val.windturbineId) {
-                                val.active = true
-                            }
-                        })
-                        if (val.lockValue === 9) {
-                            val.lockValues = this.lockValues.filter(item => val.windturbineId === item.windturbineID)[0]?.value;
-                        }
-                        switch (val.status) {
-                            case 5:
-                                this.faultList.push(val)
-                                break;
-                            case 6:
-                                this.maintainList.push(val)
-                                break;
-                            case 7:
-                                this.offlineList.push(val)
-                                break;
-                        }
-                        if (val.lockValue > 0) {
-                            this.listedList.push(val)
-                        }
-                    }
-                    console.log(this.faultList);
-                },
-            },
+        {
+          label: "取消挂牌",
+          click() {
+            that.menuClicked({ value: "UnLock" });
+          },
         },
-    }
+      ];
+      const menu = remote.Menu.buildFromTemplate(menuTemplate);
+
+      menu.popup(remote.getCurrentWindow());
+    },
+    menuClicked(msg) {
+      let bd = BackgroundData.getInstance();
+      if (!bd.LoginUser) {
+        this.$notify({
+          title: "请登录",
+          message: "控制风机需要先登录!",
+          type: "warning",
+          position: "bottom-right",
+          offset: 60,
+          duration: 3000,
+        });
+        return;
+      }
+      let sendList = [];
+      this.chooseList.forEach((item) => {
+        item.lockType = msg.value;
+      });
+      sendList = this.chooseList;
+      if (sendList.length > 0) {
+        this.chooseList = [];
+        let pairs = {};
+        sendList.forEach((item) => {
+          let ct = {
+            windturbineId: item.windturbineId,
+            stationId: item.stationId,
+            projectId: item.projectId,
+            modelId: item.modelId,
+            controlType: item.controlType,
+            lockType: item.lockType,
+            userName: `system_${bd.LoginUser.name}`,
+            userId: 0,
+          };
+          pairs[ct.windturbineId] = ct;
+        });
+        api.windturbControlLock(pairs).then((res) => {
+          if (res) {
+            this.controlSuccess(res);
+          }
+        });
+      }
+    },
+    /* 控制成功 */
+    controlSuccess(msg) {
+      let bd = BackgroundData.getInstance();
+      for (let id in msg.data) {
+        let val = msg.data[id];
+        if (val.errorCode !== "0") {
+          bd.removeCheckouts(val);
+        }
+      }
+      console.log(msg);
+      let mss = ""; // 信息
+      let iserror = false; // 是否有控制错误的风机
+      for (let v in msg.data) {
+        let val = msg.data[v];
+        if (val.errorCode > 0) {
+          iserror = true;
+          mss += `${val.windturbineId}  ${
+            this.controlErorCodes[val.errorCode]
+          }\n`;
+        }
+      }
+      let tp = iserror ? "success" : "warning";
+      let dt = iserror ? 0 : 4500;
+      if (!iserror) {
+        mss = "控制成功";
+      }
+
+      this.$notify({
+        title: "控制",
+        message: mss,
+        type: tp,
+        position: "bottom-right",
+        offset: 60,
+        duration: 3000,
+      });
+    },
+
+    /* 控制失败 */
+    controlError(err) {
+      this.$notify({
+        title: "控制出现错误",
+        message: err.message,
+        type: "warning",
+        position: "bottom-right",
+        offset: 60,
+        duration: 3000,
+      });
+    },
+    filter(value, windturbineId) {
+      let array = [];
+      let flag = false;
+      for (let i = 0; i < value.length; i++) {
+        if (value[i].windturbineId == windturbineId) {
+          flag = true;
+          array.push(flag); // 风机是否已经存在
+          array.push(i); // 风机在values数组的位置
+          array.push(value[i].active); // 当前风机是否被选中
+          break;
+        }
+      }
+      return array;
+    },
+    changeTitle(id) {
+      this.current = id;
+      this.$refs.malfunction.dateClick(id);
+    },
+    addCard(val) {
+      let active = false;
+      let array = this.filter(this.values, val.windturbineId);
+      if (!array[0]) {
+        // 维护
+        val.active = active;
+        if (val.modelId.indexOf("105") >= 0) {
+          val.rollSpeed *= 9.55;
+        }
+        this.values.push(val);
+      } else {
+        val.active = array[2];
+        this.values.splice(array[1], 1, val);
+      }
+      console.log(this.values);
+    },
+    handleDetails(itm) {
+      this.dialogVisible = true;
+      this.currentWindturbine = itm;
+    },
+    handleClose() {
+      this.dialogVisible = false;
+      this.showSvg = false;
+      this.getLocks();
+    },
+  },
+  watch: {
+    "$store.getters.windturbinelist": {
+      deep: true,
+      handler: function (json) {
+        this.faultList = [];
+        this.maintainList = [];
+        this.offlineList = [];
+        this.listedList = [];
+        let arr = Object.keys(json).sort();
+        for (let id of arr) {
+          let val = json[id];
+          this.chooseList.forEach((item) => {
+            if (item.windturbineId === val.windturbineId) {
+              val.active = true;
+            }
+          });
+          if (val.lockValue === 9) {
+            val.lockValues = this.lockValues.filter(
+              (item) => val.windturbineId === item.windturbineID
+            )[0]?.value;
+          }
+          switch (val.status) {
+            case 5:
+              this.faultList.push(val);
+              break;
+            case 6:
+              this.maintainList.push(val);
+              break;
+            case 7:
+              this.offlineList.push(val);
+              break;
+          }
+          if (val.lockValue > 0) {
+            this.listedList.push(val);
+          }
+        }
+        console.log(this.faultList);
+      },
+    },
+  },
+};
 </script>
 
 <style scoped="scoped">
-    .body {
-        border: 1px solid #373737;
-        width: 100%;
-        margin-left: 15px;
-        margin-top: 20px;
-    }
+.body {
+  border: 1px solid #373737;
+  width: 100%;
+  margin-left: 15px;
+  margin-top: 20px;
+}
 
-    .body .scoll {
-        height: 91%;
-    }
+.body .scoll {
+  height: 91%;
+}
 
-    .title {
-        color: #ffffff;
-        font-size: 14px;
-        margin-left: 32px;
-        /* margin-top: 12px; */
-        margin-bottom: 10px;
-        /* width: 570px; */
-        width: 29vw;
-        height: 50px;
-        display: flex;
-        align-items: center;
-        position: absolute;
-        background-color: #000000;
-    }
+.title {
+  color: #ffffff;
+  font-size: 14px;
+  margin-left: 32px;
+  /* margin-top: 12px; */
+  margin-bottom: 10px;
+  /* width: 570px; */
+  width: 29vw;
+  height: 50px;
+  display: flex;
+  align-items: center;
+  position: absolute;
+  background-color: #000000;
+}
 
-    .title::before {
-        z-index: 1;
-        content: '';
-        position: absolute;
-        left: -18px !important;
-        /* top: 30px !important; */
-        width: 5px;
-        height: 5px;
-        background-color: #54B75A;
-        border-radius: 50%;
-    }
+.title::before {
+  z-index: 1;
+  content: "";
+  position: absolute;
+  left: -18px !important;
+  /* top: 30px !important; */
+  width: 5px;
+  height: 5px;
+  background-color: #54b75a;
+  border-radius: 50%;
+}
 
-    .logo {
-        position: absolute;
-        top: 12px;
-        left: 12px;
-    }
+.logo {
+  position: absolute;
+  top: 12px;
+  left: 12px;
+}
 
-    .matrix {
-        margin-left: 20px;
-        margin-right: 10px;
-        padding-bottom: 20px;
-        border-bottom: 1px solid rgba(31, 31, 31, 1);
-    }
+.matrix {
+  margin-left: 20px;
+  margin-right: 10px;
+  padding-bottom: 20px;
+  border-bottom: 1px solid rgba(31, 31, 31, 1);
+}
 
-    .problemTitle {
-        font-size: 12px;
-        color: #BFBFBF;
-        margin-top: 20px;
-        margin-bottom: 20px;
-        margin-left: 12px;
-    }
+.problemTitle {
+  font-size: 12px;
+  color: #bfbfbf;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  margin-left: 12px;
+}
 </style>

+ 1 - 1
src/components/warning/warningCard.vue

@@ -86,7 +86,7 @@
 						if (sleected[vl.id] == 0 && BackgroundData.getInstance().LoginUser) {
 							vl.isSelected = true;
 						}
-						if(vl.category1!=="GF"){
+						if(vl.category1!=="GF" && vl.objectId.indexOf("GDC") < 0){
 							this.values.push(vl);
 						}
 					}

+ 175 - 25
src/utils/BoosterStation.js

@@ -1,4 +1,3 @@
-import axios from 'axios';
 import api from "api/index";
 export class BoosterStation {
 	tags = {
@@ -6,22 +5,29 @@ export class BoosterStation {
 			"qs3uakv110l": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0001" },
 			"qs3ubkv110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0002" },
 			"qs3uckv110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0003" },
-			"qs3uabkv110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0009" },
+			"qs3uabkv110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0024" },
+			"qs3Fhz110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0012" },
 			"qs3uakv110r": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0001" },
 			"qs3laa110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0004" },
 			"qs3pmw110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0013" },
 			"qs3qmvar110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0014" },
+			"qs3cos110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0016" },
+			"qs3uabkvr110": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0009" },
 			"qs3uakv35r": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0053" },
 			"qs3laa35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0056" },
 			"qs3pmw35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0116" },
 			"qs3qmvar35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0117" },
+			"qs3uakv35rb": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0059" },
+			"qs3laa35b": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0062" },
+			"qs3pmw35b": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0123" },
+			"qs3qmvar35b": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0124" },
 			"qs3uakv35l": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0537" },
 			"qs3ubkv35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0538" },
 			"qs3uckv35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0539" },
 			"qs3uabkv35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0573" },
+			"qs3fhz35": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0639" },
 			"qs3ymwd": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0162" },
 			"qs3rzwd": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0161" },
-			"qs3dw": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0155" },
 			"qs3uabkvc": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0573" },
 			"qs3ubckv": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0574" },
 			"qs3ucakv": { tag: "SLDQ.NX_GD_QSF_DQ_P1_L1_001_AI0575" },
@@ -89,7 +95,7 @@ export class BoosterStation {
 			"dwkubkv": { tag: "DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0042" },
 			"dwkuckv": { tag: "DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0043" },
 			"dwkuabkv": { tag: "DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0004" },
-
+			
 			"dwklaa311": { tag: "DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0008" },
 			"dwkqkvar311": { tag: "DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0009" },
 			"dwklaa312": { tag: "" },
@@ -371,13 +377,17 @@ export class BoosterStation {
 		"NSS_FDC": {
 			"nssuakv2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0001" },
 			"nssuabkv2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0004" },
+			"nss3uov2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0244" },
+			"nssfhz2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0313" },
 			"nsslaa2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0009" },
 			"nsspmw2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0012" },
 			"nssqmvar2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0013" },
+			"nssuxkv2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0320" },
 			"nsscos2j": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0319" },
 			"nsslaa2jy": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0014" },
 			"nsspmw2jy": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0017" },
 			"nssqmvar2jy": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0018" },
+			"nssuxkv2jy": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0328" },
 			"nsscos2jy": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0327" },
 			"nsslaa2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0031" },
 			"nsspkw2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0032" },
@@ -385,7 +395,8 @@ export class BoosterStation {
 			"nsscos2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0298" },
 			"nssuakv2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0082" },
 			"nssuabkv2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0085" },
-			"nssfhz2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0323" },
+			"nss3uov2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0257" },
+			"nssfhz2y": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0251" },
 			"nssuakv1zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0082" },
 			"nssuabkv1zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0085" },
 			"nsslaa1zbs": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0022" },
@@ -401,6 +412,8 @@ export class BoosterStation {
 			"nsscos1zbx": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0273" },
 			"nssuakv2zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0086" },
 			"nssuabkv2zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0089" },
+			"nss3uo2zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0282" },
+			"nssfhz2zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0276" },
 			"nsslaa2zbs": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0025" },
 			"nsspmw2zbs": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0026" },
 			"nssqmvar2zbs": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0027" },
@@ -414,6 +427,8 @@ export class BoosterStation {
 			"nsscos2zbx": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0286" },
 			"nssuakv3zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0090" },
 			"nssuabkv3zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0093" },
+			"nss3uov3zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0307" },
+			"nssfhz3zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0301" },
 			"nssdw3zb": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0039" },
 			"nssymwd3zb1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0299" },
 			"nssymwd3zb2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0300" },
@@ -431,6 +446,7 @@ export class BoosterStation {
 			"nsspmwjd3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0047" },
 			"nssqmvarjd3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0048" },
 			"nsslaadr1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0049" },
+			"nsspmwdr1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0184" },
 			"nssqmvardr1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0050" },
 			"nsslaadk1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0051" },
 			"nsspmwdk1": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0052" },
@@ -448,6 +464,7 @@ export class BoosterStation {
 			"nsspmwjd6": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0061" },
 			"nssqmvarjd6": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0062" },
 			"nsslaadr2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0063" },
+			"nsspmwdr2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0195" },
 			"nssqmvardr2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0064" },
 			"nsslaadk2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0065" },
 			"nsspmwdk2": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0066" },
@@ -465,6 +482,7 @@ export class BoosterStation {
 			"nsspmwjd9": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0075" },
 			"nssqmvarjd9": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0076" },
 			"nsslaadr3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0077" },
+			"nsspmwdr3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0206" },
 			"nssqmvardr3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0078" },
 			"nsslaadk3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0079" },
 			"nsspmwdk3": { tag: "NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI0080" },
@@ -612,6 +630,10 @@ export class BoosterStation {
 			"mhsymwdzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0258" },
 			"mhsrzwdzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0050" },
 			//补
+			"mhsuakvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0033" },
+			"mhsubkvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0034" },
+			"mhsuckvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0035" },
+			"mhs3u0kvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0040" },
 			"mhsuabkvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0037" },
 			"mhsubckvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0038" },
 			"mhsucakvzb1": { tag: "MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_AI0039" },
@@ -1554,20 +1576,20 @@ export class BoosterStation {
 			"xslaazy1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0384" },
 			"xspkwzy1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0396" },
 			"xsqkvarzy1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0397" },
-			"xsuakvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0267" },
-			"xsubkvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0268" },
-			"xsuckvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0269" },
-			"xsuabkvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0275" },
-			"xsubckvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0276" },
-			"xsucakvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0277" },
-			"xs3u0vzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0274" },
-			"xsuakvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0229" },
-			"xsubkvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0230" },
-			"xsuckvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0231" },
-			"xsuabkvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0237" },
-			"xsubckvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0238" },
-			"xsucakvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0239" },
-			"xs3u0vzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0236" },
+			"xsuakvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0139" },
+			"xsubkvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0140" },
+			"xsuckvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0141" },
+			"xsuabkvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0142" },
+			"xsubckvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0143" },
+			"xsucakvzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0144" },
+			"xs3u0vzb2x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0145" },
+			"xsuakvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0131" },
+			"xsubkvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0132" },
+			"xsuckvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0133" },
+			"xsuabkvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0134" },
+			"xsubckvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0135" },
+			"xsucakvzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0136" },
+			"xs3u0vzb1x": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0137" },
 			"xsuakvby1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0286" },
 			"xsuabkvby1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0294" },
 			"xslaaby1": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0289" },
@@ -1637,19 +1659,20 @@ export class BoosterStation {
 			"xskg3215": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1514" },
 			"xskg3210": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1516" },
 			"xskg3150": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0918" },
-			"xskg3140": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0583" },
+			"xskg3140": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0853" },
 			"xskg3130": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0983" },
 			"xskg319pt": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0670" },
 			"xskg31105": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1366" },
 			"xskg3115": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1364" },
 			"xskg3110": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1371" },
-			"xsdlq111": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0033" },
+			"xsdlq111": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0034" },
 			"xsdlq102": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0308" },
 			"xsdlq101": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0169" },
 			"xsdlq302": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0331" },
 			"xsdlq301": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0192" },
 			"xsdlq312": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1629" },
-			"xsdlq324": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1261" },
+			"xsdlq324": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1274" },
+			"xsdlq323": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1209" },
 			"xsdlq322": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1144" },
 			"xsdlq321": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1499" },
 			"xsdlq315": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0914" },
@@ -1659,7 +1682,8 @@ export class BoosterStation {
 			"xssc302": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0333" },
 			"xssc301": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0194" },
 			"xssc312": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1631" },
-			"xssc324": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1261" },
+			"xssc324": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1276" },
+			"xssc323": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1211" },
 			"xssc322": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1146" },
 			"xssc321": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1501" },
 			"xssc315": { tag: "XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI0916" },
@@ -1848,6 +1872,132 @@ export class BoosterStation {
 			"xhsc314": { tag: "XHDQ.NX_GD_XHG_DQ_P1_L1_001_DI0024" },
 			"xhsc315": { tag: "XHDQ.NX_GD_XHG_DQ_P1_L1_001_DI0026" },
 			"xhsc317": { tag: "XHDQ.NX_GD_XHG_DQ_P1_L1_001_DI0030" },
+		},
+		'HZJ_GDC':{
+			'hzjuab':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0049"},
+			'hzjubc':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0050"},
+			'hzjuca':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0051"},
+			'hzjla':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0046"},
+			'hzjp':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0052"},
+			'hzjq':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0053"},
+			'hzjuab2':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0017"},
+			'hzjubc2':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0018"},
+			'hzjuca2':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0019"},
+			'hzjdw':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0002"},
+			'hzjyw1':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0139"},
+			'hzjyw2':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0140"},
+			'hzjrw':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0141"},
+			'hzjla361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0295"},
+			'hzjp361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0284"},
+			'hzjq361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0285"},
+			'hzjla362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0339"},
+			'hzjp362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0340"},
+			'hzjq362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0341"},
+			'hzjla363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0383"},
+			'hzjp363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0372"},
+			'hzjq363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0373"},
+			'hzjla364':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0433"},
+			'hzjp364':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0421"},
+			'hzjq364':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0422"},
+			'hzjla305':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0046"},
+			'hzjp305':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0052"},
+			'hzjq305':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_AI0053"},
+			'hzjsrdy1':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_001_AI0025"},
+			'hzjsrdy2':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_002_AI0025"},
+			'hzjsrdy3':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_003_AI0025"},
+			'hzjsrdy4':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_004_AI0025"},
+			'hzjsrdy5':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_005_AI0025"},
+			'hzjsrdy6':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_006_AI0025"},
+			'hzjsrdy7':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_007_AI0025"},
+			'hzjsrdy8':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_008_AI0025"},
+			'hzjsrdy9':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_009_AI0025"},
+			'hzjsrdy10':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_010_AI0025"},
+			'hzjsrdy11':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_011_AI0025"},
+			'hzjsrdy12':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_012_AI0025"},
+			'hzjsrdy13':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_013_AI0025"},
+			'hzjsrdy14':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_014_AI0025"},
+			'hzjscgl1':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_001_AI0053"},
+			'hzjscgl2':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_002_AI0053"},
+			'hzjscgl3':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_003_AI0053"},
+			'hzjscgl4':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_004_AI0053"},
+			'hzjscgl5':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_005_AI0053"},
+			'hzjscgl6':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_006_AI0053"},
+			'hzjscgl7':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_007_AI0053"},
+			'hzjscgl8':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_008_AI0053"},
+			'hzjscgl9':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_009_AI0053"},
+			'hzjscgl10':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_010_AI0053"},
+			'hzjscgl11':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_011_AI0053"},
+			'hzjscgl12':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_012_AI0053"},
+			'hzjscgl13':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_013_AI0053"},
+			'hzjscgl14':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_014_AI0053"},
+			'hzjrfdl1':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_001_AI0009"},
+			'hzjrfdl2':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_002_AI0009"},
+			'hzjrfdl3':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_003_AI0009"},
+			'hzjrfdl4':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_004_AI0009"},
+			'hzjrfdl5':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_005_AI0009"},
+			'hzjrfdl6':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_006_AI0009"},
+			'hzjrfdl7':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_007_AI0009"},
+			'hzjrfdl8':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_008_AI0009"},
+			'hzjrfdl9':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_009_AI0009"},
+			'hzjrfdl10':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_010_AI0009"},
+			'hzjrfdl11':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_011_AI0009"},
+			'hzjrfdl12':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_012_AI0009"},
+			'hzjrfdl13':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_013_AI0009"},
+			'hzjrfdl14':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_014_AI0009"},
+			'hzjzfdl1':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_001_AI0010"},
+			'hzjzfdl2':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_002_AI0010"},
+			'hzjzfdl3':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_003_AI0010"},
+			'hzjzfdl4':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_004_AI0010"},
+			'hzjzfdl5':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_005_AI0010"},
+			'hzjzfdl6':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_006_AI0010"},
+			'hzjzfdl7':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_007_AI0010"},
+			'hzjzfdl8':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_008_AI0010"},
+			'hzjzfdl9':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_009_AI0010"},
+			'hzjzfdl10':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_010_AI0010"},
+			'hzjzfdl11':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_011_AI0010"},
+			'hzjzfdl12':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_012_AI0010"},
+			'hzjzfdl13':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_013_AI0010"},
+			'hzjzfdl14':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_014_AI0010"},			
+			'hzjkg1055':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0323"},
+			'hzjkg10505':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0339"},
+			'hzjkg10503':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0341"},
+			'hzjkg1053':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0331"},
+			'hzjkg1050150':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0681"},
+			'hzjkg1050':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0343"},
+			'hzjkg1050350':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0683"},
+			'hzjkg361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1091"},
+			'hzjkg362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1301"},
+			'hzjkg363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1511"},
+			'hzjkg3640':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1727"},
+			'hzjkg3643':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1720"},
+			'hzjkg36403':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1721"},
+			'hzjdlq105':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0312"},
+			'hzjdlq361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1092"},
+			'hzjdlq3611':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_001_AI0024"},
+			'hzjdlq3612':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_002_AI0024"},
+			'hzjdlq3613':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_003_AI0024"},
+			'hzjdlq3614':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_004_AI0024"},
+			'hzjdlq3615':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_005_AI0024"},
+			'hzjdlq3616':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_006_AI0024"},
+			'hzjdlq3617':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L1_007_AI0024"},
+			'hzjdlq362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1302"},
+			'hzjdlq3628':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_008_AI0024"},
+			'hzjdlq3629':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_009_AI0024"},
+			'hzjdlq36210':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_010_AI0024"},
+			'hzjdlq36211':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_011_AI0024"},
+			'hzjdlq36212':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_012_AI0024"},
+			'hzjdlq36213':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_013_AI0024"},
+			'hzjdlq36214':{tag: "HZJGF.NX_GD_HZJG_XB_P1_L2_014_AI0024"},
+			'hzjdlq363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1512"},
+			'hzjdlq364':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1725"},
+			'hzjdlq3645':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1719"},
+			'hzjdlq305':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0497"},
+			'hzjsc361':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1090"},
+			'hzjsc362':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1300"},
+			'hzjsc363':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1510"},
+			'hzjsc364':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI1723"},
+			'hzjsc369':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0129"},
+			'hzjsc305':{tag: "HZJDQ.NX_GD_HZJG_DQ_P1_L1_001_DI0495"}
 		}
 	}
 
@@ -1876,8 +2026,8 @@ export class BoosterStation {
 	}
 
 	getTags(station) {
-		let tags = "";
-		for (let v in station) {
+		var tags = "";
+		for (var v in station) {
 			tags += station[v].tag + ",";
 		}
 		return tags;

+ 7 - 5
src/utils/MessageBridge.js

@@ -34,7 +34,7 @@ export default class MessageBridge {
 
   /* 获得消息 */
   onmessage(msg) {
-    if (msg.headers.destination === "title-info") {
+    if (msg.headers.destination === "/topic/title-info") {
       this.flag = (new Date()).getTime()
     }
     if (msg.headers.destination === "/topic/windturbine") {
@@ -50,8 +50,8 @@ export default class MessageBridge {
   }
 
   getActions(destination) {
-    let list = new Array();
-    if ((this.observers.filter(item => item.key === "/topic/windturbine").length === 0) ||(this.observers.filter(item => item.key === "/topic/suggestion").length === 0) ||(this.observers.filter(item => item.key === "/topic/title-info").length === 0) ) {
+    let list = new Array()
+    if ((this.observers.filter(item => item.key === "/topic/windturbine").length === 0) || (this.observers.filter(item => item.key === "/topic/suggestion").length === 0) || (this.observers.filter(item => item.key === "/topic/title-info").length === 0)) {
       store.commit('observers', false)
     }
     for (let i in this.observers) {
@@ -65,7 +65,9 @@ export default class MessageBridge {
   /* 注册消息 */
   register(msgs) {
     for (let i in msgs) {
-      this.observers.push(msgs[i]);
+      if (this.observers.filter(item => item.key === msgs[i].key).length <= 5) {
+        this.observers.push(msgs[i]);
+      }
     }
   }
 
@@ -82,7 +84,7 @@ export default class MessageBridge {
 
   reconnect() {
     setTimeout(() => {
-      if ((this.observers.filter(item => item.key === "/topic/windturbine").length === 0) ||(this.observers.filter(item => item.key === "/topic/suggestion").length === 0) ||(this.observers.filter(item => item.key === "/topic/title-info").length === 0) ) {
+      if ((this.observers.filter(item => item.key === "/topic/windturbine").length === 0) || (this.observers.filter(item => item.key === "/topic/suggestion").length === 0) || (this.observers.filter(item => item.key === "/topic/title-info").length === 0)) {
         store.commit('observers', false)
       }
       this.reconnect()

+ 14 - 0
src/utils/PhotoelectricDetailPages.js

@@ -13,6 +13,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_DI1208"},
 			{name:"有功增闭锁", tag:"SumLock", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_DI1209"},
 			{name:"有功减闭锁", tag:"SubLock", value:"MHSDQ.NX_GD_MHSF_DQ_P1_L1_001_DI1210"},
+			{name:"状态", tag:"Status", value:"MHSFCJSFW.NX_GD_MHSF_XX_XX_XXX_XXX_CI0263"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"69.5"},
 		],
 		'QS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_AI1281", calc:"1"},
@@ -25,6 +27,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_DI2443"},
 			{name:"有功增闭锁", tag:"SumLock", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_DI2444"},
 			{name:"有功减闭锁", tag:"SubLock", value:"QSDQ.NX_GD_QSF_DQ_P1_L1_001_DI2445"},
+			{name:"状态", tag:"Status", value:"QSFCJSFW.NX_GD_QSF_XX_XX_XXX_XXX_CI0263"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"99"},
 		],
 		'NSS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_AI1019", calc:"1"},
@@ -37,6 +41,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_DI1556"},
 			{name:"有功增闭锁", tag:"SumLock", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_DI1567"},
 			{name:"有功减闭锁", tag:"SubLock", value:"NSSDQN.NX_GD_NSSF_DQ_P1_L1_001_DI1568"},
+			{name:"状态", tag:"Status", value:"NSSFCJSFW.NX_GD_NSSF_XX_XX_XXX_XXX_CI0263"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"148.5"},
 		],
 		"XN6_BT":[
 			{name:"有功设定限值", tag:"PowerSet", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0818", calc:"1"},
@@ -49,6 +55,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3832"},
 			{name:"有功增闭锁", tag:"SumLock", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3833"},
 			{name:"有功减闭锁", tag:"SubLock", value:"SBQXLDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3834"},
+			{name:"状态", tag:"Status", value:"SBQFCJSFW.NX_GD_SBQF_XX_XX_XXX_XXX_CI0263"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"49.5"},
 		],
 		'N5_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_AI0818", calc:"1"},
@@ -61,6 +69,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3832"},
 			{name:"有功增闭锁", tag:"SumLock", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3833"},
 			{name:"有功减闭锁", tag:"SubLock", value:"SBQNWDQ.NX_GD_SBQF_DQ_P1_L1_001_DI3834"},
+			{name:"状态", tag:"Status", value:"SBQFCJSFW.NX_GD_SBQF_XX_XX_XXX_XXX_CI026X"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"149"},
 		],
 		'XS_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_AI0411", calc:"1"},
@@ -73,6 +83,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1750"},
 			{name:"有功增闭锁", tag:"SumLock", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1753"},
 			{name:"有功减闭锁", tag:"SubLock", value:"XSDQ.NX_GD_XSF_DQ_P1_L1_001_DI1754"},
+			{name:"状态", tag:"Status", value:"XSFCJSFW.NX_GD_XSF_XX_XX_XXX_XXX_CI0263"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"99"},
 		],
 		'SL_BT':[
 			{name:"有功设定限值", tag:"PowerSet", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_AI0052", calc:"1"},
@@ -85,6 +97,8 @@ export const Photoelectric = {
 			{name:"AGC远方", tag:"AgcFar", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_DI0143"},
 			{name:"有功增闭锁", tag:"SumLock", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_DI0162"},
 			{name:"有功减闭锁", tag:"SubLock", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_DI0163"},
+			{name:"状态", tag:"Status", value:"SLAGC.NX_GD_QSF_DQ_P1_L1_001_DI0165"},
+			{name:"装机容量", tag:"InstalledCapacity", value:"49.5"},
 		],
 		"DWKGDCJSFW.NX_GD_DWKG_XX_XX_XXX_XXX_CI0263":[
 			{name:"有功设定限值", tag:"PowerSet" , value:"DWKDQ.NX_GD_DWKG_DQ_P1_L1_001_AI0837"},

+ 6 - 1
vue.config.js

@@ -3,7 +3,12 @@ function resolve(dir) {
     return path.join(__dirname, dir)
 }
 module.exports = {
-    lintOnSave: true,
+    publicPath: "./", // 默认'/',部署应用包时的基本 URL
+    indexPath: 'index.html', // 相对于打包路径index.html的路径
+    outputDir: 'dist', // 'dist', 生产环境构建文件的目录
+    assetsDir: 'static', // 相对于outputDir的静态资源(js、css、img、fonts)目录
+    lintOnSave: true, // 是否在开发环境下通过 eslint-loader 在每次保存时 lint 代码
+    runtimeCompiler: true, // 是否使用包含运行时编译器的 Vue 构建版本
     chainWebpack: (config) => {
         config.resolve.alias
             .set('@$', resolve('src'))