Forráskód Böngészése

增加实际功率2

xusl 1 éve
szülő
commit
1a5b0b45b2

+ 1 - 0
.gitignore

@@ -17,3 +17,4 @@ tests/**/coverage/
 /src/main/resources/static/
 /.idea/
 **/target/
+**/.iml

+ 2 - 1
ipfcst/ipfcst-common/ipfcst-common-data/src/main/java/com/jiayue/ipfcst/common/data/constant/enums/EquipmentTypeEnum.java

@@ -25,7 +25,8 @@ public enum EquipmentTypeEnum {
     /**
      * 场站也视为设备类型的一种
      */
-    POWERSTATION(0, "发电站"),
+    POWERSTATION(0, "光伏发电站"),
+    POWERSTATION2(21, "风电发电站"),
     WEATHERSTATION(1, "气象站"),
     INVERTER(2, "逆变器"),
     WINDTOWER(3, "测风塔"),

+ 3 - 1
ipfcst/ipfcst-console/src/main/java/com/jiayue/ipfcst/dataexchange/container/DataPackerContainer.java

@@ -6,6 +6,7 @@ import com.jiayue.ipfcst.console.service.SysParameterService;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.AbstractDataPacker;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.EquipmentDataPacker;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPacker;
+import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPackerOne;
 import com.jiayue.ipfcst.dataexchange.service.SaveEquipmentStatusData;
 import com.jiayue.ipfcst.dataexchange.service.equipmentstatusdata.*;
 
@@ -28,6 +29,7 @@ public class DataPackerContainer {
   RecurringTaskContainer recurringTaskContainer = RecurringTaskContainer.getInstance();
   InverterStatusDataService inverterStatusDataService = SpringContextHolder.getBean(InverterStatusDataService.class);
   PowerStationStatusDataService powerStationStatusDataService = SpringContextHolder.getBean(PowerStationStatusDataService.class);
+  PowerStationStatusDataOneService powerStationStatusDataOneService = SpringContextHolder.getBean(PowerStationStatusDataOneService.class);
   WeatherStationStatusDataService weatherStationStatusDataService = SpringContextHolder.getBean(WeatherStationStatusDataService.class);
   WindTowerStatusDataService windTowerStatusDataService = SpringContextHolder.getBean(WindTowerStatusDataService.class);
   WindTurbineStatusDataService windTurbineStatusDataService = SpringContextHolder.getBean(WindTurbineStatusDataService.class);
@@ -120,7 +122,7 @@ public class DataPackerContainer {
       case "PowerStationStatusData":
         return recurringTaskContainer.addRecurringTask(equipmentDataPacker.getInterval(), "存入光伏场站状态信息任务", () -> powerStationStatusDataService.save(((PowerStationDataPacker) equipmentDataPacker).packageData()));
       case "PowerStationStatusDataOne":
-        return recurringTaskContainer.addRecurringTask(equipmentDataPacker.getInterval(), "存入风电场站状态信息任务", () -> powerStationStatusDataServiceOne.save(((PowerStationDataPacker) equipmentDataPacker).packageData()));
+        return recurringTaskContainer.addRecurringTask(equipmentDataPacker.getInterval(), "存入风电场站状态信息任务", () -> powerStationStatusDataOneService.save(((PowerStationDataPackerOne) equipmentDataPacker).packageData()));
       case "WeatherStationStatusData":
         return recurringTaskContainer.addRecurringTask(equipmentDataPacker.getInterval(), "存入气象站状态信息任务", () -> weatherStationStatusDataService.save(((EquipmentDataPacker<WeatherStationStatusData>) equipmentDataPacker).packageData()));
       case "WindTowerStatusData":

+ 10 - 10
ipfcst/ipfcst-console/src/main/java/com/jiayue/ipfcst/dataexchange/dataprocesser/datapacker/iml/PowerStationDataPackerOne.java

@@ -49,7 +49,7 @@ import java.util.*;
  */
 @Slf4j
 @Service
-public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationStatusData> {
+public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationStatusDataOne> {
 
   /**
    * 参照功率的计算方式标识
@@ -265,9 +265,9 @@ public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationSt
    */
   public BigDecimal realPowerRationalityAuditor(BigDecimal power) {
     DateTime time = DateTime.now();
-    if (this.getElectricField() != null && this.getElectricField().getBackupE() != null && power.compareTo(new BigDecimal(this.getElectricField().getBackupE())) == 1) {
+    if (this.getElectricField() != null && this.getElectricField().getBackupF() != null && power.compareTo(new BigDecimal(this.getElectricField().getBackupF())) == 1) {
       //当实际功率超过场站的容量时  返回容量
-      power = new BigDecimal(this.getElectricField().getBackupE());
+      power = new BigDecimal(this.getElectricField().getBackupF());
       if (power.compareTo(BigDecimal.ZERO) < 0) {
         power = BigDecimal.ZERO;
       }
@@ -481,7 +481,7 @@ public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationSt
       if (electricField != null) {
         this.electricField = electricField;
       }
-      electricField.setElectricFieldTypeEnum(ElectricFieldTypeEnum.E1);
+      electricField.setElectricFieldTypeEnum(ElectricFieldTypeEnum.E2);
       return this.electricField;
     }
 
@@ -551,17 +551,17 @@ public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationSt
     }
 
     @Override
-    public PowerStationStatusData packageData () throws DataExchangeException {
-      PowerStationStatusData powerStationStatusData = new PowerStationStatusData();
+    public PowerStationStatusDataOne packageData () throws DataExchangeException {
+      PowerStationStatusDataOne powerStationStatusData = new PowerStationStatusDataOne();
       try {
         //设定时间
         powerStationStatusData.setTime(DateTime.now().withMillisOfSecond(0).withSecondOfMinute(0).toDate());
         //设定容量
-        powerStationStatusData.setCapacity(new BigDecimal(this.getElectricField().getBackupE()));
+        powerStationStatusData.setCapacity(new BigDecimal(this.getElectricField().getBackupF()));
         //设定并网设备数
 //        powerStationStatusData.setOnGridNum(this.getElectricField().getGridCE());
         //设定开机容量为装机容量
-        powerStationStatusData.setOpenCapacity(new BigDecimal(this.getElectricField().getBackupE()).subtract(overHaulPlanService.getOverhaulCapacity()));
+        powerStationStatusData.setOpenCapacity(new BigDecimal(this.getElectricField().getBackupF()).subtract(overHaulPlanService.getOverhaulCapacity()));
         //设定场站状态
 //        powerStationStatusData.setStatus(this.getElectricField().getElectricFieldTypeEnum().getCode());
         //设定实际功率
@@ -706,7 +706,7 @@ public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationSt
      * @param powerStationStatusData
      * @throws IllegalAccessException
      */
-    private void reverseInjection (PowerStationStatusData powerStationStatusData) throws IllegalAccessException {
+    private void reverseInjection (PowerStationStatusDataOne powerStationStatusData) throws IllegalAccessException {
       Type type;
       for (Field f : this.fields) {
         try {
@@ -737,7 +737,7 @@ public class PowerStationDataPackerOne extends AbstractDataPacker<PowerStationSt
      * @param powerStationStatusData
      * @throws IllegalAccessException
      */
-    private void complementDomain (PowerStationStatusData powerStationStatusData) throws IllegalAccessException {
+    private void complementDomain (PowerStationStatusDataOne powerStationStatusData) throws IllegalAccessException {
       Type type;
       for (Field f : this.fields) {
         /**

+ 7 - 1
ipfcst/ipfcst-console/src/main/java/com/jiayue/ipfcst/dataexchange/service/RunAfterStarted.java

@@ -16,6 +16,7 @@ import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.TheoreticalPowerB
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.EquipmentDataPacker;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.EquipmentDataPackerWithReverseInjection;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPacker;
+import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPackerOne;
 import com.jiayue.ipfcst.dataexchange.service.equipmentstatusdata.EquipmentInfoService;
 import com.jiayue.ipfcst.dataexchange.tunnelworker.workassist.TunnelBuilder;
 import com.jiayue.ipfcst.fileupload.util.FileUtil;
@@ -60,6 +61,8 @@ public class RunAfterStarted implements ApplicationRunner {
 
   private final PowerStationDataPacker powerStationDataPacker;
 
+  private final PowerStationDataPackerOne powerStationDataPackerOne;
+
   private final FileParseTunnelService fileParseTunnelService;
 
   private final EquipmentStatisticalDataCalculatorService equipmentStatisticalDataCalculatorService;
@@ -76,10 +79,11 @@ public class RunAfterStarted implements ApplicationRunner {
    * @param sysParameterService
    * @param weatherStationStatusDataFilter
    * @param powerStationDataPacker                    场站数据组装器
+   * @param powerStationDataPackerOne
    * @param fileParseTunnelService                    文件解析服务
    * @param equipmentStatisticalDataCalculatorService 设备的数据统计数据的计算器服务
    */
-  public RunAfterStarted(TunnelInfoService tunnelInfoService, ProtocolGatherDataPointService protocolDataPointService, EquipmentAttributeService equipmentAttributeService, SimpMessagingTemplate simpMessagingTemplate, EquipmentInfoService equipmentInfoService, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WeatherStationStatusDataFilter weatherStationStatusDataFilter, PowerStationDataPacker powerStationDataPacker, FileParseTunnelService fileParseTunnelService, EquipmentStatisticalDataCalculatorService equipmentStatisticalDataCalculatorService) {
+  public RunAfterStarted(TunnelInfoService tunnelInfoService, ProtocolGatherDataPointService protocolDataPointService, EquipmentAttributeService equipmentAttributeService, SimpMessagingTemplate simpMessagingTemplate, EquipmentInfoService equipmentInfoService, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WeatherStationStatusDataFilter weatherStationStatusDataFilter, PowerStationDataPacker powerStationDataPacker, PowerStationDataPackerOne powerStationDataPackerOne, FileParseTunnelService fileParseTunnelService, EquipmentStatisticalDataCalculatorService equipmentStatisticalDataCalculatorService) {
     this.tunnelInfoService = tunnelInfoService;
     this.protocolDataPointService = protocolDataPointService;
     this.simpMessagingTemplate = simpMessagingTemplate;
@@ -88,6 +92,7 @@ public class RunAfterStarted implements ApplicationRunner {
     this.sysParameterService = sysParameterService;
     this.weatherStationStatusDataFilter = weatherStationStatusDataFilter;
     this.powerStationDataPacker = powerStationDataPacker;
+    this.powerStationDataPackerOne = powerStationDataPackerOne;
     this.fileParseTunnelService = fileParseTunnelService;
     this.equipmentStatisticalDataCalculatorService = equipmentStatisticalDataCalculatorService;
   }
@@ -221,6 +226,7 @@ public class RunAfterStarted implements ApplicationRunner {
     }
     //添加场站的数据组装器
     DataPackerContainer.getInstance().addPacker(EquipmentTypeEnum.POWERSTATION.getMessage(), powerStationDataPacker.init());
+    DataPackerContainer.getInstance().addPacker(EquipmentTypeEnum.POWERSTATION2.getMessage(), powerStationDataPackerOne.init());
   }
 
   /**

+ 13 - 1
ipfcst/ipfcst-console/src/main/java/com/jiayue/ipfcst/dataexchange/service/SaveEquipmentStatusData.java

@@ -8,6 +8,7 @@ import com.jiayue.ipfcst.common.data.entity.WindTurbineStatusData;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.AbstractDataPacker;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.TheoreticalPowerByHubSpeedCalculateFactory;
 import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPacker;
+import com.jiayue.ipfcst.dataexchange.dataprocesser.datapacker.iml.PowerStationDataPackerOne;
 import com.jiayue.ipfcst.dataexchange.exception.DataExchangeException;
 import com.jiayue.ipfcst.dataexchange.service.equipmentstatusdata.*;
 import lombok.Setter;
@@ -50,10 +51,15 @@ public class SaveEquipmentStatusData {
 
 
   /**
-   * 电站数据包装类
+   * 光伏电站数据包装类
    */
   @Setter
   PowerStationDataPacker powerStationDataPacker;
+  /**
+   * 风电站数据包装类
+   */
+  @Setter
+  PowerStationDataPackerOne powerStationDataPackerOne;
 
 
   @Autowired
@@ -129,6 +135,9 @@ public class SaveEquipmentStatusData {
       case "PowerStationStatusData":
         this.powerStationDataPacker = (PowerStationDataPacker) packer;
         break;
+      case "PowerStationStatusDataOne":
+        this.powerStationDataPackerOne = (PowerStationDataPackerOne) packer;
+        break;
       case "WeatherStationStatusData":
         addWeatherStationPacker((AbstractDataPacker<WeatherStationStatusData>) packer);
         break;
@@ -153,6 +162,9 @@ public class SaveEquipmentStatusData {
       case "PowerStationStatusData":
         this.powerStationDataPacker = null;
         break;
+      case "PowerStationStatusDataOne":
+        this.powerStationDataPackerOne = null;
+        break;
       case "WeatherStationStatusData":
         removeWeatherStationPacker((AbstractDataPacker<WeatherStationStatusData>) packer);
         break;

+ 24 - 0
ipfcst/ipfcst-console/src/main/java/com/jiayue/ipfcst/dataexchange/service/equipmentstatusdata/PowerStationStatusDataOneService.java

@@ -0,0 +1,24 @@
+package com.jiayue.ipfcst.dataexchange.service.equipmentstatusdata;
+
+import com.jiayue.ipfcst.common.data.entity.PowerStationStatusDataOne;
+import com.jiayue.ipfcst.common.data.repository.PowerStationStatusDataOneRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 场站的状态数据
+ *
+ * @author: xiuwei
+ * @version:
+ */
+@Service
+public class PowerStationStatusDataOneService {
+
+  @Autowired
+  PowerStationStatusDataOneRepository powerStationStatusDataOneRepository;
+
+  public PowerStationStatusDataOne save(PowerStationStatusDataOne powerStationStatusDataOne) {
+    return powerStationStatusDataOneRepository.save(powerStationStatusDataOne);
+  }
+
+}