瀏覽代碼

中能融合新增6个站场

fanxiaoyu 9 月之前
父節點
當前提交
29315cecae
共有 100 個文件被更改,包括 8956 次插入26 次删除
  1. 19 3
      ipp-client/src/main/java/com/jiayue/ipfcst/client/Schedule/ParsingJob.java
  2. 7 1
      ipp-client/src/main/java/com/jiayue/ipfcst/client/Schedule/Task.java
  3. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0009.java
  4. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0017.java
  5. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0018.java
  6. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0019.java
  7. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0020.java
  8. 38 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0021.java
  9. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0009.java
  10. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0017.java
  11. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0018.java
  12. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0019.java
  13. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0020.java
  14. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0021.java
  15. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0009.java
  16. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0017.java
  17. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0018.java
  18. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0019.java
  19. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0020.java
  20. 37 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0021.java
  21. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0009Mapper.java
  22. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0017Mapper.java
  23. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0018Mapper.java
  24. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0019Mapper.java
  25. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0020Mapper.java
  26. 31 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0021Mapper.java
  27. 178 19
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/GenerateBackPassDataService.java
  28. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0009Service.java
  29. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0017Service.java
  30. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0018Service.java
  31. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0019Service.java
  32. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0020Service.java
  33. 53 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0021Service.java
  34. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0009Service.java
  35. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0017Service.java
  36. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0018Service.java
  37. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0019Service.java
  38. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0020Service.java
  39. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0021Service.java
  40. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0009Service.java
  41. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0017Service.java
  42. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0018Service.java
  43. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0019Service.java
  44. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0020Service.java
  45. 52 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0021Service.java
  46. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0009Service.java
  47. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0017Service.java
  48. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0018Service.java
  49. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0019Service.java
  50. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0020Service.java
  51. 51 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0021Service.java
  52. 60 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/an/DownloadService.java
  53. 18 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/ElectricFieldServiceImpl.java
  54. 431 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0009ServiceImpl.java
  55. 432 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0017ServiceImpl.java
  56. 433 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0018ServiceImpl.java
  57. 432 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0019ServiceImpl.java
  58. 432 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0020ServiceImpl.java
  59. 432 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0021ServiceImpl.java
  60. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0009CoverServiceImpl.java
  61. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0017CoverServiceImpl.java
  62. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0018CoverServiceImpl.java
  63. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0019CoverServiceImpl.java
  64. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0020CoverServiceImpl.java
  65. 95 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0021CoverServiceImpl.java
  66. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0009CoverServiceImpl.java
  67. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0017CoverServiceImpl.java
  68. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0018CoverServiceImpl.java
  69. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0019CoverServiceImpl.java
  70. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0020CoverServiceImpl.java
  71. 74 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0021CoverServiceImpl.java
  72. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0009ServiceImpl.java
  73. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0017ServiceImpl.java
  74. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0018ServiceImpl.java
  75. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0019ServiceImpl.java
  76. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0020ServiceImpl.java
  77. 63 0
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0021ServiceImpl.java
  78. 87 2
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/an/ParsingDqInfoServiceImpl.java
  79. 79 1
      ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/an/ParsingNwpInfoServiceImpl.java
  80. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0009.java
  81. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0017.java
  82. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0018.java
  83. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0019.java
  84. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0020.java
  85. 82 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0021.java
  86. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0009.java
  87. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0017.java
  88. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0018.java
  89. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0019.java
  90. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0020.java
  91. 84 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0021.java
  92. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0009.java
  93. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0017.java
  94. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0018.java
  95. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0019.java
  96. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0020.java
  97. 180 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0021.java
  98. 62 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0009.java
  99. 62 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0017.java
  100. 62 0
      ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0018.java

+ 19 - 3
ipp-client/src/main/java/com/jiayue/ipfcst/client/Schedule/ParsingJob.java

@@ -7,7 +7,6 @@ import com.jiayue.ipfcst.client.service.an.ParsingChannelService;
 import com.jiayue.ipp.common.data.entity.an.ParsingChannel;
 import com.jiayue.ipp.common.data.enums.an.AnChannelType;
 import com.jiayue.ipp.common.data.enums.an.UseStatusEnum;
-import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.annotation.Async;
@@ -15,7 +14,6 @@ import org.springframework.scheduling.annotation.EnableAsync;
 import org.springframework.scheduling.annotation.EnableScheduling;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
-import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -39,6 +37,12 @@ public class ParsingJob {
     private  final JiaYueWindPowerCdqResultCoverFD0005Service jiaYueWindPowerCdqResultCoverFD0005Service;
     private  final JiaYueWindPowerCdqResultCoverFD0006Service jiaYueWindPowerCdqResultCoverFD0006Service;
     private  final JiaYueWindPowerCdqResultCoverFD0007Service jiaYueWindPowerCdqResultCoverFD0007Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0009Service jiaYueWindPowerCdqResultCoverFD0009Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0017Service jiaYueWindPowerCdqResultCoverFD0017Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0018Service jiaYueWindPowerCdqResultCoverFD0018Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0019Service jiaYueWindPowerCdqResultCoverFD0019Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0020Service jiaYueWindPowerCdqResultCoverFD0020Service;
+    private  final JiaYueWindPowerCdqResultCoverFD0021Service jiaYueWindPowerCdqResultCoverFD0021Service;
     private  final JiaYueWindPowerCdqResultCoverFD0029Service jiaYueWindPowerCdqResultCoverFD0029Service;
     private  final JiaYueWindPowerCdqResultCoverFD0030Service jiaYueWindPowerCdqResultCoverFD0030Service;
     private  final JiaYueWindPowerCdqResultCoverFD0031Service jiaYueWindPowerCdqResultCoverFD0031Service;
@@ -47,7 +51,7 @@ public class ParsingJob {
     private final JiaYueWindPowerCdqResultCoverGF0012Service jiaYueWindPowerCdqResultCoverGF0012Service;
     private final JiaYueWindPowerCdqResultCoverGF0013Service jiaYueWindPowerCdqResultCoverGF0013Service;
 
-    public ParsingJob(ParsingChannelService parsingChannelService,DownloadService downloadService,JiaYueWindPowerCdqResultCoverFD0001Service jiaYueWindPowerCdqResultCoverFD0001Service,JiaYueWindPowerCdqResultCoverFD0002Service jiaYueWindPowerCdqResultCoverFD0002Service,JiaYueWindPowerCdqResultCoverFD0003Service jiaYueWindPowerCdqResultCoverFD0003Service,JiaYueWindPowerCdqResultCoverFD0004Service jiaYueWindPowerCdqResultCoverFD0004Service,JiaYueWindPowerCdqResultCoverFD0005Service jiaYueWindPowerCdqResultCoverFD0005Service,JiaYueWindPowerCdqResultCoverFD0006Service jiaYueWindPowerCdqResultCoverFD0006Service,JiaYueWindPowerCdqResultCoverFD0007Service jiaYueWindPowerCdqResultCoverFD0007Service,JiaYueWindPowerCdqResultCoverFD0029Service jiaYueWindPowerCdqResultCoverFD0029Service,JiaYueWindPowerCdqResultCoverFD0030Service jiaYueWindPowerCdqResultCoverFD0030Service,JiaYueWindPowerCdqResultCoverFD0031Service jiaYueWindPowerCdqResultCoverFD0031Service,JiaYueWindPowerCdqResultCoverGF0001Service jiaYueWindPowerCdqResultCoverGF0001Service,JiaYueWindPowerCdqResultCoverGF0002Service jiaYueWindPowerCdqResultCoverGF0002Service,JiaYueWindPowerCdqResultCoverGF0012Service jiaYueWindPowerCdqResultCoverGF0012Service,JiaYueWindPowerCdqResultCoverGF0013Service jiaYueWindPowerCdqResultCoverGF0013Service){
+    public ParsingJob(ParsingChannelService parsingChannelService,DownloadService downloadService,JiaYueWindPowerCdqResultCoverFD0001Service jiaYueWindPowerCdqResultCoverFD0001Service,JiaYueWindPowerCdqResultCoverFD0002Service jiaYueWindPowerCdqResultCoverFD0002Service,JiaYueWindPowerCdqResultCoverFD0003Service jiaYueWindPowerCdqResultCoverFD0003Service,JiaYueWindPowerCdqResultCoverFD0004Service jiaYueWindPowerCdqResultCoverFD0004Service,JiaYueWindPowerCdqResultCoverFD0005Service jiaYueWindPowerCdqResultCoverFD0005Service,JiaYueWindPowerCdqResultCoverFD0006Service jiaYueWindPowerCdqResultCoverFD0006Service,JiaYueWindPowerCdqResultCoverFD0007Service jiaYueWindPowerCdqResultCoverFD0007Service,JiaYueWindPowerCdqResultCoverFD0009Service jiaYueWindPowerCdqResultCoverFD0009Service,JiaYueWindPowerCdqResultCoverFD0017Service jiaYueWindPowerCdqResultCoverFD0017Service,JiaYueWindPowerCdqResultCoverFD0018Service jiaYueWindPowerCdqResultCoverFD0018Service,JiaYueWindPowerCdqResultCoverFD0019Service jiaYueWindPowerCdqResultCoverFD0019Service,JiaYueWindPowerCdqResultCoverFD0020Service jiaYueWindPowerCdqResultCoverFD0020Service,JiaYueWindPowerCdqResultCoverFD0021Service jiaYueWindPowerCdqResultCoverFD0021Service,JiaYueWindPowerCdqResultCoverFD0029Service jiaYueWindPowerCdqResultCoverFD0029Service,JiaYueWindPowerCdqResultCoverFD0030Service jiaYueWindPowerCdqResultCoverFD0030Service,JiaYueWindPowerCdqResultCoverFD0031Service jiaYueWindPowerCdqResultCoverFD0031Service,JiaYueWindPowerCdqResultCoverGF0001Service jiaYueWindPowerCdqResultCoverGF0001Service,JiaYueWindPowerCdqResultCoverGF0002Service jiaYueWindPowerCdqResultCoverGF0002Service,JiaYueWindPowerCdqResultCoverGF0012Service jiaYueWindPowerCdqResultCoverGF0012Service,JiaYueWindPowerCdqResultCoverGF0013Service jiaYueWindPowerCdqResultCoverGF0013Service){
         this.parsingChannelService = parsingChannelService;
         this.downloadService = downloadService;
         this.jiaYueWindPowerCdqResultCoverFD0001Service = jiaYueWindPowerCdqResultCoverFD0001Service;
@@ -57,6 +61,12 @@ public class ParsingJob {
         this.jiaYueWindPowerCdqResultCoverFD0005Service = jiaYueWindPowerCdqResultCoverFD0005Service;
         this.jiaYueWindPowerCdqResultCoverFD0006Service = jiaYueWindPowerCdqResultCoverFD0006Service;
         this.jiaYueWindPowerCdqResultCoverFD0007Service = jiaYueWindPowerCdqResultCoverFD0007Service;
+        this.jiaYueWindPowerCdqResultCoverFD0009Service = jiaYueWindPowerCdqResultCoverFD0009Service;
+        this.jiaYueWindPowerCdqResultCoverFD0017Service = jiaYueWindPowerCdqResultCoverFD0017Service;
+        this.jiaYueWindPowerCdqResultCoverFD0018Service = jiaYueWindPowerCdqResultCoverFD0018Service;
+        this.jiaYueWindPowerCdqResultCoverFD0019Service = jiaYueWindPowerCdqResultCoverFD0019Service;
+        this.jiaYueWindPowerCdqResultCoverFD0020Service = jiaYueWindPowerCdqResultCoverFD0020Service;
+        this.jiaYueWindPowerCdqResultCoverFD0021Service = jiaYueWindPowerCdqResultCoverFD0021Service;
         this.jiaYueWindPowerCdqResultCoverFD0029Service = jiaYueWindPowerCdqResultCoverFD0029Service;
         this.jiaYueWindPowerCdqResultCoverFD0030Service = jiaYueWindPowerCdqResultCoverFD0030Service;
         this.jiaYueWindPowerCdqResultCoverFD0031Service = jiaYueWindPowerCdqResultCoverFD0031Service;
@@ -108,6 +118,12 @@ public class ParsingJob {
         jiaYueWindPowerCdqResultCoverFD0005Service.executeForecast();
         jiaYueWindPowerCdqResultCoverFD0006Service.executeForecast();
         jiaYueWindPowerCdqResultCoverFD0007Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0009Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0017Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0018Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0019Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0020Service.executeForecast();
+        jiaYueWindPowerCdqResultCoverFD0021Service.executeForecast();
         jiaYueWindPowerCdqResultCoverFD0029Service.executeForecast();
         jiaYueWindPowerCdqResultCoverFD0030Service.executeForecast();
         jiaYueWindPowerCdqResultCoverFD0031Service.executeForecast();

+ 7 - 1
ipp-client/src/main/java/com/jiayue/ipfcst/client/Schedule/Task.java

@@ -195,7 +195,13 @@ public class Task {
             if (Constant.filedownLoadList.size() > 0) {
                 for (String fpath : Constant.filedownLoadList) {
                     int startIndex = fpath.indexOf("J0");
-                    int endIndex = startIndex + 6;
+                    int endIndex = 0;
+                    if (fpath.contains("-A")) {
+                        endIndex = startIndex + 8;
+                    } else {
+                        endIndex = startIndex + 6;
+                    }
+
                     String result = fpath.substring(startIndex, endIndex);
                     UtilTools.mvFile(fpath, fxglFilePath + File.separator + result + File.separator + "new");
                 }

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0009.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0009;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0009 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0009> {
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0009> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0009> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0009 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0017.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0017;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0017 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0017> {
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0017> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0017> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0017 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0018.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0018;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0018 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0018> {
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0018> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0018> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0018 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0019.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0019;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0019 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0019> {
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0019> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0019> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0019 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0020.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0020;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0020 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0020> {
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0020> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0020> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0020 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 38 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerCdqResultCoverMapperFD0021.java

@@ -0,0 +1,38 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0021;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_cdq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerCdqResultCoverMapperFD0021 extends BaseMapper<JiaYueWindPowerCdqResultCoverFD0021> {
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_wind_power_cdq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_cdq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerCdqResultCoverFD0021> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_wind_power_cdq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    int deleteByDateTime(@Param("startTime") LocalDateTime startTime, @Param("endTime") LocalDateTime endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_cdq_result WHERE DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerCdqResultCoverFD0021> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_cdq_result WHERE PRE_DATE_TIME = #{dateSubString} ORDER BY CREATE_TIME DESC LIMIT 1")
+    JiaYueWindPowerCdqResultCoverFD0021 selectByDataDate(@Param("dateSubString") String dateSubString);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0009.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0009;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0009 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0009> {
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0009> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0009_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0009> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0009> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0009> selectByDataDate(@Param("date") String date);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0017.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0017;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0017 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0017> {
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0017> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0017_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0017> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0017> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0017> selectByDataDate(@Param("date") String date);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0018.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0018;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0018 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0018> {
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0018> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0018_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0018> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0018> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0018> selectByDataDate(@Param("date") String date);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0019.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0019;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0019 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0019> {
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0019> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0019_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0019> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0019> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0019> selectByDataDate(@Param("date") String date);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0020.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0020;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0020 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0020> {
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0020> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0020_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0020> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0020> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0020> selectByDataDate(@Param("date") String date);
+
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerDqResultCoverMapperFD0021.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0021;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_zdata_wind_power_dq_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerDqResultCoverMapperFD0021 extends BaseMapper<JiaYueWindPowerDqResultCoverFD0021> {
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_wind_power_dq_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_dq_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerDqResultCoverFD0021> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_wind_power_dq_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+    @Select("SELECT *\n" +
+            "FROM (\n" +
+            "    SELECT *\n" +
+            "    FROM jiayue_FD0021_zdata_wind_power_dq_result\n" +
+            "    WHERE PRE_DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}\n" +
+            "    ORDER BY CREATE_TIME DESC\n" +
+            "    LIMIT 40\n" +
+            ") AS subquery\n" +
+            "ORDER BY PRE_DATE_TIME ASC;")
+    List<JiaYueWindPowerDqResultCoverFD0021> selectByTimeAndObjId(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_dq_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerDqResultCoverFD0021> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime, @Param("objId") String objId);
+
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_wind_power_dq_result WHERE DATA_TIME = '05:00:00' AND  DATA_DATE = #{date} ORDER BY CREATE_TIME LIMIT 96")
+    List<JiaYueWindPowerDqResultCoverFD0021> selectByDataDate(@Param("date") String date);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0009.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0009;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0009 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0009> {
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0009> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0009_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0009_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0009> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0017.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0017;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0017 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0017> {
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0017> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0017_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0017_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0017> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0018.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0018;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0018 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0018> {
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0018> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0018_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0018_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0018> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0019.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0019;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0019 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0019> {
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0019> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0019_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0019_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0019> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0020.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0020;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0020 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0020> {
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0020> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0020_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0020_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0020> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 37 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/JiaYueWindPowerNwpResultCoverMapperFD0021.java

@@ -0,0 +1,37 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0021;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * jiayue_FD0001_zdata_nwp_result
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface JiaYueWindPowerNwpResultCoverMapperFD0021 extends BaseMapper<JiaYueWindPowerNwpResultCoverFD0021> {
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_nwp_result")
+    int deleteAll();
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_nwp_result WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<JiaYueWindPowerNwpResultCoverFD0021> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+
+    @Delete("DELETE FROM jiayue_FD0021_zdata_nwp_result where DATA_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId} AND DATA_DATE BETWEEN #{dateDateStart} AND #{dateDateEnd}")
+    int deleteByDateTime(@Param("startTime") Time startTime, @Param("endTime") Time endTime, @Param("objId") String objId,@Param("dateDateStart") Date dateDateStart, @Param("dateDateEnd") Date dateDateEnd);
+
+
+    @Select("SELECT * FROM jiayue_FD0021_zdata_nwp_result WHERE DATA_DATE = #{fileDate} AND DATA_TIME = #{fileTime} AND OBJ_ID = #{objId}")
+    List<JiaYueWindPowerNwpResultCoverFD0021> selectByDataDateDateTime(@Param("fileDate") String fileDate, @Param("fileTime") String fileTime,@Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0009Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0009;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0009Mapper extends BaseMapper<WindPowerReal15MinFD0009> {
+
+    @Delete("DELETE FROM zdata_FD0009_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0009_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0009> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0009_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0009> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0017Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0017;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0017Mapper extends BaseMapper<WindPowerReal15MinFD0017> {
+
+    @Delete("DELETE FROM zdata_FD0017_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0017_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0017> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0017_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0017> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0018Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0018;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0018Mapper extends BaseMapper<WindPowerReal15MinFD0018> {
+
+    @Delete("DELETE FROM zdata_FD0018_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0018_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0018> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0018_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0018> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0019Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0019;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0019Mapper extends BaseMapper<WindPowerReal15MinFD0019> {
+
+    @Delete("DELETE FROM zdata_FD0019_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0019_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0019> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0019_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0019> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0020Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0020;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0020Mapper extends BaseMapper<WindPowerReal15MinFD0020> {
+
+    @Delete("DELETE FROM zdata_FD0020_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0020_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0020> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0020_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0020> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 31 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/mapper/WindPowerReal15MinFD0021Mapper.java

@@ -0,0 +1,31 @@
+package com.jiayue.ipfcst.client.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0021;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * zdata_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Mapper
+public interface WindPowerReal15MinFD0021Mapper extends BaseMapper<WindPowerReal15MinFD0021> {
+
+    @Delete("DELETE FROM zdata_FD0021_wind_power_real_15min")
+    int deleteAll();
+
+    @Select("SELECT * FROM zdata_FD0021_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime}")
+    List<WindPowerReal15MinFD0021> selectByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime);
+
+    @Select("SELECT * FROM zdata_FD0021_wind_power_real_15min WHERE DATE_TIME BETWEEN #{startTime} AND #{endTime} AND OBJ_ID = #{objId}")
+    List<WindPowerReal15MinFD0021> selectByTimeAndObjId(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("objId") String objId);
+
+}

+ 178 - 19
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/GenerateBackPassDataService.java

@@ -7,7 +7,6 @@ import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.jiayue.ipfcst.client.service.impl.JiaYueWindPowerDqResultFD0002CoverServiceImpl;
 import com.jiayue.ipfcst.client.utils.GzipUtil;
 import com.jiayue.ipfcst.client.utils.JsonBeanUtil;
 import com.jiayue.ipfcst.client.utils.TimeUtils;
@@ -26,8 +25,6 @@ import java.io.*;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.text.SimpleDateFormat;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.util.*;
 import java.util.Date;
@@ -57,6 +54,18 @@ public class GenerateBackPassDataService {
 
     private final WindPowerReal15MinFD0007Service windPowerReal15MinFD0007Service;
 
+    private final WindPowerReal15MinFD0009Service windPowerReal15MinFD0009Service;
+
+    private final WindPowerReal15MinFD0017Service windPowerReal15MinFD0017Service;
+
+    private final WindPowerReal15MinFD0018Service windPowerReal15MinFD0018Service;
+
+    private final WindPowerReal15MinFD0019Service windPowerReal15MinFD0019Service;
+
+    private final WindPowerReal15MinFD0020Service windPowerReal15MinFD0020Service;
+
+    private final WindPowerReal15MinFD0021Service windPowerReal15MinFD0021Service;
+
     private final WindPowerReal15MinFD0029Service windPowerReal15MinFD0029Service;
 
     private final WindPowerReal15MinFD0030Service windPowerReal15MinFD0030Service;
@@ -133,7 +142,7 @@ public class GenerateBackPassDataService {
     private final JiaYueWindPowerCdqResultCoverGF0013Service jiaYueWindPowerCdqResultCoverGF0013Service;
 
     public GenerateBackPassDataService(PvPowerReal15MinGF0001Service pvPowerReal15MinGF0001Service,PvPowerReal15MinGF0002Service pvPowerReal15MinGF0002Service,PvPowerReal15MinGF0012Service pvPowerReal15MinGF0012Service,PvPowerReal15MinGF0013Service pvPowerReal15MinGF0013Service,WindPowerReal15MinFD0001Service windPowerReal15MinFD0001Service,WindPowerReal15MinFD0002Service windPowerReal15MinFD0002Service,WindPowerReal15MinFD0003Service windPowerReal15MinFD0003Service,WindPowerReal15MinFD0004Service windPowerReal15MinFD0004Service,WindPowerReal15MinFD0005Service windPowerReal15MinFD0005Service,
-                                       WindPowerReal15MinFD0006Service windPowerReal15MinFD0006Service,WindPowerReal15MinFD0007Service windPowerReal15MinFD0007Service,WindPowerReal15MinFD0029Service windPowerReal15MinFD0029Service,WindPowerReal15MinFD0030Service windPowerReal15MinFD0030Service,WindPowerReal15MinFD0031Service windPowerReal15MinFD0031Service,JiaYueWindPowerDqResultCoverGF0001Service jiaYueWindPowerDqResultCoverGF0001Service,JiaYueWindPowerDqResultCoverGF0002Service jiaYueWindPowerDqResultCoverGF0002Service,JiaYueWindPowerDqResultCoverGF0012Service jiaYueWindPowerDqResultCoverGF0012Service,JiaYueWindPowerDqResultCoverGF0013Service jiaYueWindPowerDqResultCoverGF0013Service,JiaYueWindPowerDqResultCoverFD0001Service jiaYueWindPowerDqResultCoverFD0001Service,JiaYueWindPowerDqResultCoverFD0002Service jiaYueWindPowerDqResultCoverFD0002Service,
+                                       WindPowerReal15MinFD0006Service windPowerReal15MinFD0006Service,WindPowerReal15MinFD0007Service windPowerReal15MinFD0007Service,WindPowerReal15MinFD0009Service windPowerReal15MinFD0009Service,WindPowerReal15MinFD0017Service windPowerReal15MinFD0017Service,WindPowerReal15MinFD0018Service windPowerReal15MinFD0018Service,WindPowerReal15MinFD0019Service windPowerReal15MinFD0019Service,WindPowerReal15MinFD0020Service windPowerReal15MinFD0020Service,WindPowerReal15MinFD0021Service windPowerReal15MinFD0021Service,WindPowerReal15MinFD0029Service windPowerReal15MinFD0029Service,WindPowerReal15MinFD0030Service windPowerReal15MinFD0030Service,WindPowerReal15MinFD0031Service windPowerReal15MinFD0031Service,JiaYueWindPowerDqResultCoverGF0001Service jiaYueWindPowerDqResultCoverGF0001Service,JiaYueWindPowerDqResultCoverGF0002Service jiaYueWindPowerDqResultCoverGF0002Service,JiaYueWindPowerDqResultCoverGF0012Service jiaYueWindPowerDqResultCoverGF0012Service,JiaYueWindPowerDqResultCoverGF0013Service jiaYueWindPowerDqResultCoverGF0013Service,JiaYueWindPowerDqResultCoverFD0001Service jiaYueWindPowerDqResultCoverFD0001Service,JiaYueWindPowerDqResultCoverFD0002Service jiaYueWindPowerDqResultCoverFD0002Service,
                                        JiaYueWindPowerDqResultCoverFD0003Service jiaYueWindPowerDqResultCoverFD0003Service,JiaYueWindPowerDqResultCoverFD0004Service jiaYueWindPowerDqResultCoverFD0004Service,JiaYueWindPowerDqResultCoverFD0005Service jiaYueWindPowerDqResultCoverFD0005Service,JiaYueWindPowerDqResultCoverFD0006Service jiaYueWindPowerDqResultCoverFD0006Service,
                                        JiaYueWindPowerDqResultCoverFD0007Service jiaYueWindPowerDqResultCoverFD0007Service,JiaYueWindPowerDqResultCoverFD0029Service jiaYueWindPowerDqResultCoverFD0029Service,JiaYueWindPowerDqResultCoverFD0030Service jiaYueWindPowerDqResultCoverFD0030Service,JiaYueWindPowerDqResultCoverFD0031Service jiaYueWindPowerDqResultCoverFD0031Service,JiaYueWindPowerCdqResultCoverGF0001Service jiaYueWindPowerCdqResultCoverGF0001Service,JiaYueWindPowerCdqResultCoverGF0002Service jiaYueWindPowerCdqResultCoverGF0002Service,JiaYueWindPowerCdqResultCoverGF0012Service jiaYueWindPowerCdqResultCoverGF0012Service,JiaYueWindPowerCdqResultCoverGF0013Service jiaYueWindPowerCdqResultCoverGF0013Service,JiaYueWindPowerCdqResultCoverFD0001Service jiaYueWindPowerCdqResultCoverFD0001Service,JiaYueWindPowerCdqResultCoverFD0002Service jiaYueWindPowerCdqResultCoverFD0002Service,
                                        JiaYueWindPowerCdqResultCoverFD0003Service jiaYueWindPowerCdqResultCoverFD0003Service,JiaYueWindPowerCdqResultCoverFD0004Service jiaYueWindPowerCdqResultCoverFD0004Service,JiaYueWindPowerCdqResultCoverFD0005Service jiaYueWindPowerCdqResultCoverFD0005Service,JiaYueWindPowerCdqResultCoverFD0006Service jiaYueWindPowerCdqResultCoverFD0006Service,
@@ -145,6 +154,12 @@ public class GenerateBackPassDataService {
         this.windPowerReal15MinFD0005Service = windPowerReal15MinFD0005Service;
         this.windPowerReal15MinFD0006Service = windPowerReal15MinFD0006Service;
         this.windPowerReal15MinFD0007Service = windPowerReal15MinFD0007Service;
+        this.windPowerReal15MinFD0009Service = windPowerReal15MinFD0009Service;
+        this.windPowerReal15MinFD0017Service = windPowerReal15MinFD0017Service;
+        this.windPowerReal15MinFD0018Service = windPowerReal15MinFD0018Service;
+        this.windPowerReal15MinFD0019Service = windPowerReal15MinFD0019Service;
+        this.windPowerReal15MinFD0020Service = windPowerReal15MinFD0020Service;
+        this.windPowerReal15MinFD0021Service = windPowerReal15MinFD0021Service;
         this.windPowerReal15MinFD0029Service = windPowerReal15MinFD0029Service;
         this.windPowerReal15MinFD0030Service = windPowerReal15MinFD0030Service;
         this.windPowerReal15MinFD0031Service = windPowerReal15MinFD0031Service;
@@ -186,7 +201,7 @@ public class GenerateBackPassDataService {
      *  每天凌晨一点零五分生成回传短期、超短期。实际功率数据
      * @return
      */
-    @Scheduled(cron = "0 5 1,12,18 * * *")
+    @Scheduled(cron = "0 35 1,13,18 * * *")
     @Async
     public Map<String, Object> generateQRCode() {
         Map<String, Object> map = new HashMap<>();
@@ -223,6 +238,30 @@ public class GenerateBackPassDataService {
             electricField7.setStationCode("J00931");
             electricField7.setSign("FD0007");
 
+            ElectricField electricField9 = new ElectricField();
+            electricField9.setStationCode("J01118");
+            electricField9.setSign("FD0009");
+
+            ElectricField electricField17 = new ElectricField();
+            electricField17.setStationCode("J01123");
+            electricField17.setSign("FD0017");
+
+            ElectricField electricField18 = new ElectricField();
+            electricField18.setStationCode("J01122");
+            electricField18.setSign("FD0018");
+
+            ElectricField electricField19 = new ElectricField();
+            electricField19.setStationCode("J01119");
+            electricField19.setSign("FD0019");
+
+            ElectricField electricField20 = new ElectricField();
+            electricField20.setStationCode("J01120");
+            electricField20.setSign("FD0020");
+
+            ElectricField electricField21 = new ElectricField();
+            electricField21.setStationCode("J01121");
+            electricField21.setSign("FD0021");
+
             ElectricField electricField29 = new ElectricField();
             electricField29.setStationCode("J01034");
             electricField29.setSign("FD0029");
@@ -258,6 +297,12 @@ public class GenerateBackPassDataService {
             electricFieldList.add(electricField5);
             electricFieldList.add(electricField6);
             electricFieldList.add(electricField7);
+            electricFieldList.add(electricField9);
+            electricFieldList.add(electricField17);
+            electricFieldList.add(electricField18);
+            electricFieldList.add(electricField19);
+            electricFieldList.add(electricField20);
+            electricFieldList.add(electricField21);
             electricFieldList.add(electricField29);
             electricFieldList.add(electricField30);
             electricFieldList.add(electricField31);
@@ -292,7 +337,7 @@ public class GenerateBackPassDataService {
 //                    map = generateQR(electricFieldList.get(j), dateList.get(i));
                     map = generateQR(electricFieldList.get(j));
                     toJson(map);
-//                    Thread.sleep(1000);
+                    Thread.sleep(1000);
                 }
 //            }
             log.info("任务执行完成!");
@@ -349,20 +394,20 @@ public class GenerateBackPassDataService {
 
         try {
             //各个二维码显示设置
-            Map<String, List<String>> dqMap = new TreeMap<>();
-            Map<String, List<String>> cdqMap = new HashMap<>();
+//            Map<String, List<String>> dqMap = new TreeMap<>();
+//            Map<String, List<String>> cdqMap = new HashMap<>();
             Map<String, List<String>> rpMap = new HashMap<>();
 
             //超短期 stationData-QR    T00003-ust-点位
-            List<String> ust = generateUltraShortTermContent(startTime.getTime(), startTime.getTime() + 3600 * 24 * 1000L - 1000, electricField);
-            cdqMap.put("超短期第1点数据", ust);
-
-
-            //短期
-            List<String> st = generateShortTermContent(startTime.getTime()- 3600 * 24 * 1000L, endTime.getTime()- 3600 * 24 * 1000L, electricField);
-            //二维码名字
-            StringBuilder name = new StringBuilder("E1短期");
-            dqMap.put(name.toString(), st);
+//            List<String> ust = generateUltraShortTermContent(startTime.getTime(), startTime.getTime() + 3600 * 24 * 1000L - 1000, electricField);
+//            cdqMap.put("超短期第1点数据", ust);
+//
+//
+//            //短期
+//            List<String> st = generateShortTermContent(startTime.getTime()- 3600 * 24 * 1000L, endTime.getTime()- 3600 * 24 * 1000L, electricField);
+//            //二维码名字
+//            StringBuilder name = new StringBuilder("E1短期");
+//            dqMap.put(name.toString(), st);
 
 
             //实际功率stationData-QR    T00003-rp
@@ -370,8 +415,8 @@ public class GenerateBackPassDataService {
             rpMap.put("实际功率", rp);
 
 
-            map.put("ultraShortTerm", cdqMap);
-            map.put("shortTerm", dqMap);
+//            map.put("ultraShortTerm", cdqMap);
+//            map.put("shortTerm", dqMap);
             map.put("realPower", rpMap);
         } catch (Exception e) {
             e.printStackTrace();
@@ -409,6 +454,12 @@ public class GenerateBackPassDataService {
         List<WindPowerReal15MinFD0005> windPowerReal15MinFD0005List = new ArrayList<>();
         List<WindPowerReal15MinFD0006> windPowerReal15MinFD0006List = new ArrayList<>();
         List<WindPowerReal15MinFD0007> windPowerReal15MinFD0007List = new ArrayList<>();
+        List<WindPowerReal15MinFD0009> windPowerReal15MinFD0009List = new ArrayList<>();
+        List<WindPowerReal15MinFD0017> windPowerReal15MinFD0017List = new ArrayList<>();
+        List<WindPowerReal15MinFD0018> windPowerReal15MinFD0018List = new ArrayList<>();
+        List<WindPowerReal15MinFD0019> windPowerReal15MinFD0019List = new ArrayList<>();
+        List<WindPowerReal15MinFD0020> windPowerReal15MinFD0020List = new ArrayList<>();
+        List<WindPowerReal15MinFD0021> windPowerReal15MinFD0021List = new ArrayList<>();
         List<WindPowerReal15MinFD0029> windPowerReal15MinFD0029List = new ArrayList<>();
         List<WindPowerReal15MinFD0030> windPowerReal15MinFD0030List = new ArrayList<>();
         List<WindPowerReal15MinFD0031> windPowerReal15MinFD0031List = new ArrayList<>();
@@ -439,6 +490,24 @@ public class GenerateBackPassDataService {
             case "FD0007":
                 windPowerReal15MinFD0007List = windPowerReal15MinFD0007Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
                 break;
+            case "FD0009":
+                windPowerReal15MinFD0009List = windPowerReal15MinFD0009Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
+            case "FD0017":
+                windPowerReal15MinFD0017List = windPowerReal15MinFD0017Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
+            case "FD0018":
+                windPowerReal15MinFD0018List = windPowerReal15MinFD0018Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
+            case "FD0019":
+                windPowerReal15MinFD0019List = windPowerReal15MinFD0019Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
+            case "FD0020":
+                windPowerReal15MinFD0020List = windPowerReal15MinFD0020Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
+            case "FD0021":
+                windPowerReal15MinFD0021List = windPowerReal15MinFD0021Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
+                break;
             case "FD0029":
                 windPowerReal15MinFD0029List = windPowerReal15MinFD0029Service.getAll(new Date(startTime), new Date(startTime + 24 * 60 * 60 * 1000L - 1000));
                 break;
@@ -572,6 +641,96 @@ public class GenerateBackPassDataService {
                     instContent.append(PLACE);
                 }
             }
+            if (electricField.getSign().equals("FD0009")) {
+                List<WindPowerReal15MinFD0009> filterList = windPowerReal15MinFD0009List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0009 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
+            if (electricField.getSign().equals("FD0017")) {
+                List<WindPowerReal15MinFD0017> filterList = windPowerReal15MinFD0017List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0017 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
+            if (electricField.getSign().equals("FD0018")) {
+                List<WindPowerReal15MinFD0018> filterList = windPowerReal15MinFD0018List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0018 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
+            if (electricField.getSign().equals("FD0019")) {
+                List<WindPowerReal15MinFD0019> filterList = windPowerReal15MinFD0019List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0019 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
+            if (electricField.getSign().equals("FD0020")) {
+                List<WindPowerReal15MinFD0020> filterList = windPowerReal15MinFD0020List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0020 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
+            if (electricField.getSign().equals("FD0021")) {
+                List<WindPowerReal15MinFD0021> filterList = windPowerReal15MinFD0021List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
+                BigDecimal avg = new BigDecimal(0);
+                //取前15分钟的平均值 13:30取13:16-13:30的平均值
+                for (WindPowerReal15MinFD0021 p : filterList) {
+                    avg = avg.add(new BigDecimal(p.getActivePower()));
+                }
+                if (!filterList.isEmpty()) {
+                    content.append(avg.divide(new BigDecimal(filterList.size()), 2, RoundingMode.HALF_UP)).append("|");
+                    instContent.append(filterList.get(0).getActivePower()).append("|");
+                } else {
+                    content.append(PLACE);
+                    instContent.append(PLACE);
+                }
+            }
             if (electricField.getSign().equals("FD0029")) {
                 List<WindPowerReal15MinFD0029> filterList = windPowerReal15MinFD0029List.stream().filter(p -> p.getDateTime().atZone(ZoneId.systemDefault()).toEpochSecond() * 1000L == finalTime).collect(Collectors.toList());
                 BigDecimal avg = new BigDecimal(0);

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0009Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0009;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0009Service extends IService<JiaYueWindPowerCdqResultCoverFD0009> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0009> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0009> findByDataDate(Date startTime);
+
+}

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0017Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0017;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0017Service extends IService<JiaYueWindPowerCdqResultCoverFD0017> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0017> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0017> findByDataDate(Date startTime);
+
+}

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0018Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0018;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0018Service extends IService<JiaYueWindPowerCdqResultCoverFD0018> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0018> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0018> findByDataDate(Date startTime);
+
+}

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0019Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0019;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0019Service extends IService<JiaYueWindPowerCdqResultCoverFD0019> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0019> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0019> findByDataDate(Date startTime);
+
+}

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0020Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0020;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0020Service extends IService<JiaYueWindPowerCdqResultCoverFD0020> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0020> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0020> findByDataDate(Date startTime);
+
+}

+ 53 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerCdqResultCoverFD0021Service.java

@@ -0,0 +1,53 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerCdqResultCoverFD0021;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerCdqResultCoverFD0021Service extends IService<JiaYueWindPowerCdqResultCoverFD0021> {
+     /**
+      * 查询所有数据(远端)
+      * @return
+      */
+     List<JiaYueWindPowerCdqResultCoverFD0021> get();
+
+    /**
+     * 查询所有数据插入到本地
+      * @param jiaYueWindPowerCdqResultCovers
+     * @return
+     */
+     int put(List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCovers);
+
+//    /**
+//     * 查询所有数据(本地)
+//     * @return
+//     */
+//    List<JiaYueWindPowerCdqResultCover> getAll();
+
+    /**
+     *  删除所有数据(本地)
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     *  储存解析超短期数据
+     */
+
+    void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCoverList, String stationCode);
+
+    /**
+     *  执行超短期数据预测
+     */
+    void executeForecast();
+
+    void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode);
+
+    List<JiaYueWindPowerCdqResultCoverFD0021> findByDataDate(Date startTime);
+
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0009Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0009;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0009Service extends IService<JiaYueWindPowerDqResultCoverFD0009> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0009> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0009> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0009> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0009> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0009> findByDataDate(Date startTime);
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0017Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0017;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0017Service extends IService<JiaYueWindPowerDqResultCoverFD0017> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0017> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0017> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0017> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0017> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0017> findByDataDate(Date startTime);
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0018Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0018;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0018Service extends IService<JiaYueWindPowerDqResultCoverFD0018> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0018> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0018> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0018> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0018> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0018> findByDataDate(Date startTime);
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0019Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0019;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0019Service extends IService<JiaYueWindPowerDqResultCoverFD0019> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0019> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0019> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0019> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0019> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0019> findByDataDate(Date startTime);
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0020Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0020;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0020Service extends IService<JiaYueWindPowerDqResultCoverFD0020> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0020> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0020> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0020> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0020> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0020> findByDataDate(Date startTime);
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerDqResultCoverFD0021Service.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0021;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerDqResultCoverFD0021Service extends IService<JiaYueWindPowerDqResultCoverFD0021> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0021> get();
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0021> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerDqResultCovers
+     * @return
+     */
+    int put(List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCovers);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0021> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析短期数据
+     */
+
+    void saveDq(List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList, String stationCode);
+
+    /**
+     * @param stationCode
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    List<JiaYueWindPowerDqResultCoverFD0021> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime);
+
+    List<JiaYueWindPowerDqResultCoverFD0021> findByDataDate(Date startTime);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0009Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0009;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0009Service extends IService<JiaYueWindPowerNwpResultCoverFD0009> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0009> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0009> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0009> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0017Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0017;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0017Service extends IService<JiaYueWindPowerNwpResultCoverFD0017> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0017> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0017> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0017> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0018Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0018;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0018Service extends IService<JiaYueWindPowerNwpResultCoverFD0018> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0018> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0018> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0018> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0019Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0019;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0019Service extends IService<JiaYueWindPowerNwpResultCoverFD0019> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0019> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0019> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0019> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0020Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0020;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0020Service extends IService<JiaYueWindPowerNwpResultCoverFD0020> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0020> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0020> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0020> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 52 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/JiaYueWindPowerNwpResultCoverFD0021Service.java

@@ -0,0 +1,52 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0021;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public interface JiaYueWindPowerNwpResultCoverFD0021Service extends IService<JiaYueWindPowerNwpResultCoverFD0021> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0021> get();
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param jiaYueWindPowerNwpResultCoverList
+     * @return
+     */
+    int put(List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0021> getAll();
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    /**
+     * 储存解析nwp数据
+     */
+
+    void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList, String stationCode);
+
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<JiaYueWindPowerNwpResultCoverFD0021> getByDataDateAndDateTime(String fileDate, String fileTime, String objId);
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0009Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0009;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0009Service extends IService<WindPowerReal15MinFD0009> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0009> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0009> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0009> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0009> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0009> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0017Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0017;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0017Service extends IService<WindPowerReal15MinFD0017> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0017> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0017> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0017> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0017> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0017> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0018Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0018;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0018Service extends IService<WindPowerReal15MinFD0018> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0018> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0018> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0018> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0018> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0018> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0019Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0019;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0019Service extends IService<WindPowerReal15MinFD0019> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0019> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0019> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0019> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0019> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0019> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0020Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0020;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0020Service extends IService<WindPowerReal15MinFD0020> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0020> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0020> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0020> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0020> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0020> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 51 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/WindPowerReal15MinFD0021Service.java

@@ -0,0 +1,51 @@
+package com.jiayue.ipfcst.client.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0021;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public interface WindPowerReal15MinFD0021Service extends IService<WindPowerReal15MinFD0021> {
+    /**
+     * 查询所有数据(远端)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0021> get(Date startTime, Date endTime);
+
+    /**
+     * 查询所有数据插入到本地
+     *
+     * @param windPowerReal15MinList
+     * @return
+     */
+    int put(List<WindPowerReal15MinFD0021> windPowerReal15MinList);
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0021> getAll();
+
+    /**
+     * 查询所有数据(本地)
+     *
+     * @return
+     */
+    List<WindPowerReal15MinFD0021> getAll(Date startTime, Date endTime);
+
+    /**
+     * 删除所有数据(本地)
+     *
+     * @return
+     */
+    int deleteAll();
+
+    List<WindPowerReal15MinFD0021> findByObjIdAndDateTime(String ObjId, Date startTime, Date endTime);
+
+
+}

+ 60 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/an/DownloadService.java

@@ -110,6 +110,60 @@ public class DownloadService {
         parsingUrl7.setStationCode("J00931");
         parsingUrl7.setId("722af308253fcd6eff67959c7f76eaf7");
         parsingUrl7.setDelFlag("0");
+        // todo
+        ParsingUrl parsingUrl9 = new ParsingUrl();
+        parsingUrl9.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl9.setForecastManufactor("SYJY");
+        parsingUrl9.setUrl("/home/syjy/F_data/new/J01118");
+        parsingUrl9.setUrlStatus("1");
+        parsingUrl9.setStationCode("J01118");
+        parsingUrl9.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl9.setDelFlag("0");
+
+        ParsingUrl parsingUrl17 = new ParsingUrl();
+        parsingUrl17.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl17.setForecastManufactor("SYJY");
+        parsingUrl17.setUrl("/home/syjy/F_data/new/J01123");
+        parsingUrl17.setUrlStatus("1");
+        parsingUrl17.setStationCode("J01123");
+        parsingUrl17.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl17.setDelFlag("0");
+
+        ParsingUrl parsingUrl18 = new ParsingUrl();
+        parsingUrl18.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl18.setForecastManufactor("SYJY");
+        parsingUrl18.setUrl("/home/syjy/F_data/new/J01122");
+        parsingUrl18.setUrlStatus("1");
+        parsingUrl18.setStationCode("J01122");
+        parsingUrl18.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl18.setDelFlag("0");
+
+        ParsingUrl parsingUrl19 = new ParsingUrl();
+        parsingUrl19.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl19.setForecastManufactor("SYJY");
+        parsingUrl19.setUrl("/home/syjy/F_data/new/J01119");
+        parsingUrl19.setUrlStatus("1");
+        parsingUrl19.setStationCode("J01119");
+        parsingUrl19.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl19.setDelFlag("0");
+
+        ParsingUrl parsingUrl20 = new ParsingUrl();
+        parsingUrl20.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl20.setForecastManufactor("SYJY");
+        parsingUrl20.setUrl("/home/syjy/F_data/new/J01120");
+        parsingUrl20.setUrlStatus("1");
+        parsingUrl20.setStationCode("J01120");
+        parsingUrl20.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl20.setDelFlag("0");
+
+        ParsingUrl parsingUrl21 = new ParsingUrl();
+        parsingUrl21.setCId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl21.setForecastManufactor("SYJY");
+        parsingUrl21.setUrl("/home/syjy/F_data/new/J01121");
+        parsingUrl21.setUrlStatus("1");
+        parsingUrl21.setStationCode("J01121");
+        parsingUrl21.setId("722af308253fcd6eff67959c7f76eaf7");
+        parsingUrl21.setDelFlag("0");
 
         ParsingUrl parsingUrl29 = new ParsingUrl();
         parsingUrl29.setCId("722af308253fcd6eff67959c7f76eaf7");
@@ -183,6 +237,12 @@ public class DownloadService {
         parsingUrls.add(parsingUrl5);
         parsingUrls.add(parsingUrl6);
         parsingUrls.add(parsingUrl7);
+        parsingUrls.add(parsingUrl9);
+        parsingUrls.add(parsingUrl17);
+        parsingUrls.add(parsingUrl18);
+        parsingUrls.add(parsingUrl19);
+        parsingUrls.add(parsingUrl20);
+        parsingUrls.add(parsingUrl21);
         parsingUrls.add(parsingUrl29);
         parsingUrls.add(parsingUrl30);
         parsingUrls.add(parsingUrl31);

+ 18 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/ElectricFieldServiceImpl.java

@@ -91,6 +91,24 @@ public class ElectricFieldServiceImpl extends ServiceImpl<ElectricFieldMapper, E
             case "J00931":
                 sign = "FD0007";
                 break;
+            case "J01118":
+                sign = "FD0009";
+                break;
+            case "J01123":
+                sign = "FD0017";
+                break;
+            case "J01122":
+                sign = "FD0018";
+                break;
+            case "J01119":
+                sign = "FD0019";
+                break;
+            case "J01120":
+                sign = "FD0020";
+                break;
+            case "J01121":
+                sign = "FD0021";
+                break;
             case "J01034":
                 sign = "FD0029";
                 break;

+ 431 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0009ServiceImpl.java

@@ -0,0 +1,431 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0009;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0009ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0009, JiaYueWindPowerCdqResultCoverFD0009> implements JiaYueWindPowerCdqResultCoverFD0009Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0009 jiaYueWindPowerCdqResultCoverMapperFD0009;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0009Service windPowerReal15MinFD0009Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0009Service jiaYueWindPowerDqResultCoverFD0009Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0009ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0009 jiaYueWindPowerCdqResultCoverMapperFD0009, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0009Service windPowerReal15MinFD0009Service, JiaYueWindPowerDqResultCoverFD0009Service jiaYueWindPowerDqResultCoverFD0009Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0009 = jiaYueWindPowerCdqResultCoverMapperFD0009;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0009Service = windPowerReal15MinFD0009Service;
+        this.jiaYueWindPowerDqResultCoverFD0009Service = jiaYueWindPowerDqResultCoverFD0009Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0009> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0009.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCoverFD0009List) {
+        if (jiaYueWindPowerCdqResultCoverFD0009List != null && jiaYueWindPowerCdqResultCoverFD0009List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0009List, jiaYueWindPowerCdqResultCoverFD0009List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0009List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0009.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(48));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("山东省德州市齐河县大黄乡杨庄村48MW风电场");
+        electricField3.setStationCode("J01118");
+        electricField3.setSign("FD0009");
+        electricField3.setNetSubstationName("J01118");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverFD0009List = jiaYueWindPowerDqResultCoverFD0009Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0009List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCoverFD0009List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0009 jiaYueWindPowerCdqResultCoverFD0009;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0009> windPowerReal15MinList = windPowerReal15MinFD0009Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0009> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0009> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0009Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0009::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0009 = new JiaYueWindPowerCdqResultCoverFD0009();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0009.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0009.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0009.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0009.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0009.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0009.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0009.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0009.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0009.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0009.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0009.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0009.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0009List.add(jiaYueWindPowerCdqResultCoverFD0009);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0009 = new JiaYueWindPowerCdqResultCoverFD0009();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0009.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0009.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0009.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0009.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0009.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0009.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0009.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0009.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0009List.add(jiaYueWindPowerCdqResultCoverFD0009);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0009List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0009List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0009.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0009> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0009> jiaYueWindPowerCdqResultCoverFD0009List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0009 jiaYueWindPowerCdqResultCoverFD0009 = jiaYueWindPowerCdqResultCoverMapperFD0009.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0009){
+                jiaYueWindPowerCdqResultCoverFD0009List.add(jiaYueWindPowerCdqResultCoverFD0009);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0009List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 432 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0017ServiceImpl.java

@@ -0,0 +1,432 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0017;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0017ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0017, JiaYueWindPowerCdqResultCoverFD0017> implements JiaYueWindPowerCdqResultCoverFD0017Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0017 jiaYueWindPowerCdqResultCoverMapperFD0017;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0017Service windPowerReal15MinFD0017Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0017Service jiaYueWindPowerDqResultCoverFD0017Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0017ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0017 jiaYueWindPowerCdqResultCoverMapperFD0017, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0017Service windPowerReal15MinFD0017Service, JiaYueWindPowerDqResultCoverFD0017Service jiaYueWindPowerDqResultCoverFD0017Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0017 = jiaYueWindPowerCdqResultCoverMapperFD0017;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0017Service = windPowerReal15MinFD0017Service;
+        this.jiaYueWindPowerDqResultCoverFD0017Service = jiaYueWindPowerDqResultCoverFD0017Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0017> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0017.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCoverFD0017List) {
+        if (jiaYueWindPowerCdqResultCoverFD0017List != null && jiaYueWindPowerCdqResultCoverFD0017List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0017List, jiaYueWindPowerCdqResultCoverFD0017List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0017List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0017.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(99));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("云南省楚雄彝族自治州元谋县大卡莫村99MW风电场");
+        // todo
+        electricField3.setStationCode("J01123");
+        electricField3.setSign("FD0017");
+        electricField3.setNetSubstationName("J01123");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverFD0017List = jiaYueWindPowerDqResultCoverFD0017Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0017List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCoverFD0017List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0017 jiaYueWindPowerCdqResultCoverFD0017;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0017> windPowerReal15MinList = windPowerReal15MinFD0017Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0017> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0017> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0017Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0017::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0017 = new JiaYueWindPowerCdqResultCoverFD0017();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0017.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0017.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0017.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0017.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0017.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0017.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0017.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0017.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0017.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0017.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0017.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0017.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0017List.add(jiaYueWindPowerCdqResultCoverFD0017);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0017 = new JiaYueWindPowerCdqResultCoverFD0017();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0017.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0017.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0017.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0017.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0017.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0017.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0017.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0017.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0017List.add(jiaYueWindPowerCdqResultCoverFD0017);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0017List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0017List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0017.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0017> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0017> jiaYueWindPowerCdqResultCoverFD0017List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0017 jiaYueWindPowerCdqResultCoverFD0017 = jiaYueWindPowerCdqResultCoverMapperFD0017.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0017){
+                jiaYueWindPowerCdqResultCoverFD0017List.add(jiaYueWindPowerCdqResultCoverFD0017);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0017List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 433 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0018ServiceImpl.java

@@ -0,0 +1,433 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0017;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0018;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0018ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0018, JiaYueWindPowerCdqResultCoverFD0018> implements JiaYueWindPowerCdqResultCoverFD0018Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0018 jiaYueWindPowerCdqResultCoverMapperFD0018;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0018Service windPowerReal15MinFD0018Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0018Service jiaYueWindPowerDqResultCoverFD0018Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0018ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0018 jiaYueWindPowerCdqResultCoverMapperFD0018, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0018Service windPowerReal15MinFD0018Service, JiaYueWindPowerDqResultCoverFD0018Service jiaYueWindPowerDqResultCoverFD0018Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0018 = jiaYueWindPowerCdqResultCoverMapperFD0018;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0018Service = windPowerReal15MinFD0018Service;
+        this.jiaYueWindPowerDqResultCoverFD0018Service = jiaYueWindPowerDqResultCoverFD0018Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0018> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0018.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCoverFD0018List) {
+        if (jiaYueWindPowerCdqResultCoverFD0018List != null && jiaYueWindPowerCdqResultCoverFD0018List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0018List, jiaYueWindPowerCdqResultCoverFD0018List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0018List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0018.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(49.5));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("云南楚雄彝族自治州禄丰市松子沟村49.5MW风电场");
+        // todo
+        electricField3.setStationCode("J01122");
+        electricField3.setSign("FD0018");
+        electricField3.setNetSubstationName("J01122");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverFD0018List = jiaYueWindPowerDqResultCoverFD0018Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0018List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCoverFD0018List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0018 jiaYueWindPowerCdqResultCoverFD0018;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0018> windPowerReal15MinList = windPowerReal15MinFD0018Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0018> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0018> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0018Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0018::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0018 = new JiaYueWindPowerCdqResultCoverFD0018();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0018.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0018.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0018.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0018.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0018.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0018.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0018.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0018.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0018.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0018.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0018.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0018.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0018List.add(jiaYueWindPowerCdqResultCoverFD0018);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0018 = new JiaYueWindPowerCdqResultCoverFD0018();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0018.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0018.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0018.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0018.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0018.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0018.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0018.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0018.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0018List.add(jiaYueWindPowerCdqResultCoverFD0018);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0018List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0018List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0018.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0018> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0018> jiaYueWindPowerCdqResultCoverFD0018List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0018 jiaYueWindPowerCdqResultCoverFD0018 = jiaYueWindPowerCdqResultCoverMapperFD0018.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0018){
+                jiaYueWindPowerCdqResultCoverFD0018List.add(jiaYueWindPowerCdqResultCoverFD0018);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0018List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 432 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0019ServiceImpl.java

@@ -0,0 +1,432 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0019;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0019ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0019, JiaYueWindPowerCdqResultCoverFD0019> implements JiaYueWindPowerCdqResultCoverFD0019Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0019 jiaYueWindPowerCdqResultCoverMapperFD0019;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0019Service windPowerReal15MinFD0019Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0019Service jiaYueWindPowerDqResultCoverFD0019Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0019ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0019 jiaYueWindPowerCdqResultCoverMapperFD0019, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0019Service windPowerReal15MinFD0019Service, JiaYueWindPowerDqResultCoverFD0019Service jiaYueWindPowerDqResultCoverFD0019Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0019 = jiaYueWindPowerCdqResultCoverMapperFD0019;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0019Service = windPowerReal15MinFD0019Service;
+        this.jiaYueWindPowerDqResultCoverFD0019Service = jiaYueWindPowerDqResultCoverFD0019Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0019> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0019.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCoverFD0019List) {
+        if (jiaYueWindPowerCdqResultCoverFD0019List != null && jiaYueWindPowerCdqResultCoverFD0019List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0019List, jiaYueWindPowerCdqResultCoverFD0019List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0019List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0019.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(188));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("云南省楚雄彝族自治州禄丰市325县道国家电投大荒山188MW风电场");
+        // todo
+        electricField3.setStationCode("J01119");
+        electricField3.setSign("FD0019");
+        electricField3.setNetSubstationName("J01119");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverFD0019List = jiaYueWindPowerDqResultCoverFD0019Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0019List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCoverFD0019List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0019 jiaYueWindPowerCdqResultCoverFD0019;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0019> windPowerReal15MinList = windPowerReal15MinFD0019Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0019> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0019> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0019Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0019::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0019 = new JiaYueWindPowerCdqResultCoverFD0019();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0019.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0019.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0019.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0019.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0019.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0019.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0019.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0019.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0019.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0019.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0019.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0019.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0019List.add(jiaYueWindPowerCdqResultCoverFD0019);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0019 = new JiaYueWindPowerCdqResultCoverFD0019();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0019.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0019.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0019.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0019.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0019.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0019.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0019.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0019.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0019List.add(jiaYueWindPowerCdqResultCoverFD0019);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0019List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0019List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0019.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0019> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0019> jiaYueWindPowerCdqResultCoverFD0019List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0019 jiaYueWindPowerCdqResultCoverFD0019 = jiaYueWindPowerCdqResultCoverMapperFD0019.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0019){
+                jiaYueWindPowerCdqResultCoverFD0019List.add(jiaYueWindPowerCdqResultCoverFD0019);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0019List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 432 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0020ServiceImpl.java

@@ -0,0 +1,432 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0020;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0020ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0020, JiaYueWindPowerCdqResultCoverFD0020> implements JiaYueWindPowerCdqResultCoverFD0020Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0020 jiaYueWindPowerCdqResultCoverMapperFD0020;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0020Service windPowerReal15MinFD0020Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0020Service jiaYueWindPowerDqResultCoverFD0020Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0020ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0020 jiaYueWindPowerCdqResultCoverMapperFD0020, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0020Service windPowerReal15MinFD0020Service, JiaYueWindPowerDqResultCoverFD0020Service jiaYueWindPowerDqResultCoverFD0020Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0020 = jiaYueWindPowerCdqResultCoverMapperFD0020;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0020Service = windPowerReal15MinFD0020Service;
+        this.jiaYueWindPowerDqResultCoverFD0020Service = jiaYueWindPowerDqResultCoverFD0020Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0020> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0020.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCoverFD0020List) {
+        if (jiaYueWindPowerCdqResultCoverFD0020List != null && jiaYueWindPowerCdqResultCoverFD0020List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0020List, jiaYueWindPowerCdqResultCoverFD0020List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0020List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0020.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(98));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("云南省楚雄彝族自治州禄丰市何家山98MW风电场");
+        // todo
+        electricField3.setStationCode("J01120");
+        electricField3.setSign("FD0020");
+        electricField3.setNetSubstationName("J01120");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverFD0020List = jiaYueWindPowerDqResultCoverFD0020Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0020List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCoverFD0020List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0020 jiaYueWindPowerCdqResultCoverFD0020;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0020> windPowerReal15MinList = windPowerReal15MinFD0020Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0020> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0020> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0020Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0020::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0020 = new JiaYueWindPowerCdqResultCoverFD0020();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0020.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0020.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0020.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0020.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0020.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0020.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0020.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0020.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0020.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0020.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0020.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0020.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0020List.add(jiaYueWindPowerCdqResultCoverFD0020);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0020 = new JiaYueWindPowerCdqResultCoverFD0020();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0020.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0020.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0020.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0020.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0020.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0020.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0020.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0020.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0020List.add(jiaYueWindPowerCdqResultCoverFD0020);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0020List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0020List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0020.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0020> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0020> jiaYueWindPowerCdqResultCoverFD0020List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0020 jiaYueWindPowerCdqResultCoverFD0020 = jiaYueWindPowerCdqResultCoverMapperFD0020.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0020){
+                jiaYueWindPowerCdqResultCoverFD0020List.add(jiaYueWindPowerCdqResultCoverFD0020);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0020List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 432 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerCdqResultCoverFD0021ServiceImpl.java

@@ -0,0 +1,432 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerCdqResultCoverMapperFD0021;
+import com.jiayue.ipfcst.client.service.*;
+import com.jiayue.ipfcst.common.core.util.DateMomentUtil;
+import com.jiayue.ipfcst.common.core.util.DateTimeUtil;
+import com.jiayue.ipp.common.data.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateUtils;
+import org.springframework.stereotype.Service;
+
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.time.Instant;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class JiaYueWindPowerCdqResultCoverFD0021ServiceImpl extends ServiceImpl<JiaYueWindPowerCdqResultCoverMapperFD0021, JiaYueWindPowerCdqResultCoverFD0021> implements JiaYueWindPowerCdqResultCoverFD0021Service {
+    private final JiaYueWindPowerCdqResultCoverMapperFD0021 jiaYueWindPowerCdqResultCoverMapperFD0021;
+
+    private final ElectricFieldService electricFieldService;
+
+    private final SysParameterService sysParameterService;
+
+    private final WindPowerReal15MinFD0021Service windPowerReal15MinFD0021Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0021Service jiaYueWindPowerDqResultCoverFD0021Service;
+
+    private final WindFarmInfoEncryptionService windFarmInfoEncryptionService;
+
+    private final OverhaulPlanService overhaulPlanService;
+
+
+    public JiaYueWindPowerCdqResultCoverFD0021ServiceImpl(OverhaulPlanService overhaulPlanService, WindFarmInfoEncryptionService windFarmInfoEncryptionService, JiaYueWindPowerCdqResultCoverMapperFD0021 jiaYueWindPowerCdqResultCoverMapperFD0021, ElectricFieldService electricFieldService, SysParameterService sysParameterService, WindPowerReal15MinFD0021Service windPowerReal15MinFD0021Service, JiaYueWindPowerDqResultCoverFD0021Service jiaYueWindPowerDqResultCoverFD0021Service){
+        this.jiaYueWindPowerCdqResultCoverMapperFD0021 = jiaYueWindPowerCdqResultCoverMapperFD0021;
+        this.electricFieldService = electricFieldService;
+        this.sysParameterService = sysParameterService;
+        this.windPowerReal15MinFD0021Service = windPowerReal15MinFD0021Service;
+        this.jiaYueWindPowerDqResultCoverFD0021Service = jiaYueWindPowerDqResultCoverFD0021Service;
+        this.windFarmInfoEncryptionService = windFarmInfoEncryptionService;
+        this.overhaulPlanService = overhaulPlanService;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerCdqResultCoverFD0021> get() {
+        List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCovers = jiaYueWindPowerCdqResultCoverMapperFD0021.selectList(null);
+        return jiaYueWindPowerCdqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCoverFD0021List) {
+        if (jiaYueWindPowerCdqResultCoverFD0021List != null && jiaYueWindPowerCdqResultCoverFD0021List.size() > 0) {
+            this.saveBatch(jiaYueWindPowerCdqResultCoverFD0021List, jiaYueWindPowerCdqResultCoverFD0021List.size());
+        }
+        return jiaYueWindPowerCdqResultCoverFD0021List.size();
+    }
+
+//    @Override
+//    public List<JiaYueWindPowerCdqResultCover> getAll() {
+//        List<JiaYueWindPowerCdqResultCover> jiaYueWindPowerCdqResultCovers =  jiaYueWindPowerCdqResultCoverMapper.selectList(null);
+//        return  jiaYueWindPowerCdqResultCovers;
+//    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+        return jiaYueWindPowerCdqResultCoverMapperFD0021.deleteAll();
+    }
+
+
+    /**
+     * 执行超短期预测
+     */
+    public void executeForecast() {
+
+        List<ElectricField> electricFieldList = new ArrayList<>();
+//        ElectricField electricField1 = new ElectricField();
+//        electricField1.setBelongForecastManufactor("SYJY");
+//        electricField1.setCapacity(new BigDecimal(30.0000));
+//        electricField1.setElectricFieldTypeEnum("2");
+//        electricField1.setForecastManufactor("SYJY");
+//        electricField1.setId("138c6aebdf6ddc792495bc35fa3e4adb");
+//        electricField1.setName("天津中能融合测试站A");
+//        electricField1.setStationCode("J00770");
+//        electricField1.setSign("FD0001");
+//        electricField1.setNetSubstationName("J00770");
+
+//        ElectricField electricField2 = new ElectricField();
+//        electricField2.setBelongForecastManufactor("SYJY");
+//        electricField2.setCapacity(new BigDecimal(12.0000));
+//        electricField2.setElectricFieldTypeEnum("2");
+//        electricField2.setForecastManufactor("SYJY");
+//        electricField2.setId("30a9f02678beb7101e628d7c7e22c5d6");
+//        electricField2.setName("天津中能融合测试站C");
+//        electricField2.setStationCode("J00772");
+//        electricField2.setSign("FD0003");
+//        electricField2.setNetSubstationName("J00772");
+
+        ElectricField electricField3 = new ElectricField();
+        electricField3.setBelongForecastManufactor("SYJY");
+        electricField3.setCapacity(new BigDecimal(49.5));
+        electricField3.setElectricFieldTypeEnum("2");
+        electricField3.setForecastManufactor("SYJY");
+        electricField3.setId("d712c1ef348714a5afafcf130c256cc9");
+        electricField3.setName("云南省楚雄彝族自治州禄丰市纱帽山村49.5MW风电场");
+        // todo
+        electricField3.setStationCode("J01121");
+        electricField3.setSign("FD0021");
+        electricField3.setNetSubstationName("J01121");
+
+//        electricFieldList.add(electricField1);
+//        electricFieldList.add(electricField2);
+        electricFieldList.add(electricField3);
+
+        electricFieldList.forEach(e -> {
+            String stationCode = e.getSign();
+            // 根据场站类型执行相应超短期预测
+            try {
+                // 获取查询时间,从当前时间所处时间点标记时间开始查询,截至到96个时间点对应的标记时间
+                String cdqUpMin = sysParameterService.getSysParameterAndStationCode("CDQ_UP_MIN", "0", stationCode);
+                Long calTime = DateMomentUtil.getMomentTime(System.currentTimeMillis() + Integer.parseInt(cdqUpMin) * 1000 * 60, 2, 15 * 60 * 1000L);
+                Long startTime = calTime + 15 * 1000 * 60L;
+                String llcdq_point = sysParameterService.getSysParameterAndStationCode("FILE_LLCDQ_POINT", "40", stationCode);
+                Integer forecastPoints = Integer.parseInt(llcdq_point);
+                Integer forecastMinutes = (forecastPoints - 1) * 15;
+                // 结束时间增加15分钟为了防止文件先生成,实时表中最后一个时间点没有点位的问题
+                Long endTime = DateUtils.addMinutes(new Date(startTime), forecastMinutes + 1).getTime();
+
+                // 查询该时间段内的短期预测功率
+                List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverFD0021List = jiaYueWindPowerDqResultCoverFD0021Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(startTime), new Date(endTime));
+
+
+//            List<ForecastPowerShortTerm> addForecastPowerShortTermList = new ArrayList<>();
+//            // 判断短期数据是否缺点
+//            for (Long tempTime = startTime; tempTime <= endTime; tempTime = tempTime + 15 * 60 * 1000L) {
+//                if (forecastPowerShortTermsMap.get(tempTime) == null) {
+//                    // 缺失时间点
+//                    ForecastPowerShortTerm forecastPowerShortTerms = null;
+//                    if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateSolarPowerShortTerm(tempTime, openCapacityMap.get(tempTime), electricField);
+//                    } else {
+//                        forecastPowerShortTerms = forecastPowerShortTermService.generateWindPowerShortTerm(tempTime, openCapacityMap.get(tempTime));
+//                    }
+//                    addForecastPowerShortTermList.add(forecastPowerShortTerms);
+//                }
+//            }
+//            if (!addForecastPowerShortTermList.isEmpty()) {
+//                // 保存短期预测
+//                this.forecastPowerShortTermRepository.saveAll(addForecastPowerShortTermList);
+//                // 将补齐的预测功率追加到查询预测功率结果集中
+//                forecastPowerShortTermList.addAll(addForecastPowerShortTermList);
+//            }
+
+                log.info("执行超短期预测生成。。。。。。{}", stationCode);
+//                if (ElectricFieldTypeEnum.E1.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+//                    // 光伏电站
+//                    this.executeForecastForlight(forecastPowerShortTermList, electricField.getCapacity());
+//                } else if (ElectricFieldTypeEnum.E2.compareTo(electricField.getElectricFieldTypeEnum()) == 0) {
+                // 风力电场
+                this.executeForecastForWind(jiaYueWindPowerDqResultCoverFD0021List, e.getCapacity(), e.getStationCode());
+//                } else {
+//                    log.error("场站类型非法!");
+//                }
+
+            } catch (Exception ex) {
+                log.error("系统运行错误!", ex);
+            }
+        });
+    }
+
+
+    /**
+     * 执行风电场超短期预测
+     *
+     * @param jiaYueWindPowerDqResultCoverList 短期预测结果集
+     * @param capacity                         装机容量
+     */
+    @WR("W")
+    public void executeForecastForWind(final List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList, final BigDecimal capacity, String stationCode) {
+
+        List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCoverFD0021List = new ArrayList<>();
+        JiaYueWindPowerCdqResultCoverFD0021 jiaYueWindPowerCdqResultCoverFD0021;
+        //获取系统参数cdqjsfs,超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式
+        String cdqjsfs = sysParameterService.getSysParameterAndStationCode("cdqjsfs", "1", stationCode);
+        log.info("参数cdqjsfs值为:" + cdqjsfs + ",超短期计算方式,0为默认乘系数的方式,1为根据可用功率计算的方式。");
+        BigDecimal stPower, ustPower, ustPowers;
+        // 查询当前时间点标记时间前10分钟的可用功率
+        Date currentTime = new Date(System.currentTimeMillis());
+        Date startTime = DateUtils.addMinutes(currentTime, -10);
+        Date endTime = DateUtils.addMinutes(currentTime, 1);
+        // 场站编号转换为FD000?
+        String objId = electricFieldService.numberToIdentification(stationCode);
+        List<WindPowerReal15MinFD0021> windPowerReal15MinList = windPowerReal15MinFD0021Service.findByObjIdAndDateTime(objId, startTime, endTime);
+        List<WindPowerReal15MinFD0021> filterList = windPowerReal15MinList.stream().filter(t -> Float.compare(Float.valueOf(t.getActivePower()), Float.valueOf("-1")) > 0).collect(Collectors.toList());
+        String coe = sysParameterService.getSysParameterAndStationCode("CDQ_COE", "1.05", stationCode);
+
+        if (filterList.size() > 0) {
+            // 获取当前时刻对应的短期
+            List<JiaYueWindPowerDqResultCoverFD0021> currentForecastPowerShortTermList;
+            Float currentForecastPowerValue = 0f;
+            try {
+                Long currentMoment = DateMomentUtil.getMomentTime(currentTime.getTime(), 1, 15 * 60 * 1000L);
+                currentForecastPowerShortTermList = jiaYueWindPowerDqResultCoverFD0021Service.findByObjIdAndStartTimeAndEndTime(stationCode, new Date(currentMoment), new Date(currentMoment));
+                if (currentForecastPowerShortTermList.size() > 0) {
+                    currentForecastPowerValue = currentForecastPowerShortTermList.get(0).getActivePower();
+                } else {
+                    // 当前时间没有对应的短期,用实际功率最近的一个替换
+                    filterList.sort(Comparator.comparing(WindPowerReal15MinFD0021::getDateTime).reversed());
+                    currentForecastPowerValue = filterList.get(0).getActivePower().floatValue();
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+
+            BigDecimal sumAbleValue = filterList.stream().map(s -> new BigDecimal(s.getActivePower())).reduce(BigDecimal.ZERO, BigDecimal::add);
+            BigDecimal averageAbleValue = sumAbleValue.divide(new BigDecimal(filterList.size()), 2, BigDecimal.ROUND_HALF_UP);
+            //可用-短期差值
+            BigDecimal deviationValue = averageAbleValue.subtract(new BigDecimal(currentForecastPowerValue));
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                jiaYueWindPowerCdqResultCoverFD0021 = new JiaYueWindPowerCdqResultCoverFD0021();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0021.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0021.setDataDate(new Date());
+                }
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0021.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0021.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setOpenCap(jiaYueWindPowerDqResultCoverList.get(i).getOpenCap());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0021.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0021.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));                //短期
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                //短期*系数
+                ustPowers = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                // 如果短期预测小于等于0,则超短期为0
+                if (stPower.floatValue() <= 0) {
+                    jiaYueWindPowerCdqResultCoverFD0021.setActivePower(0.0f);
+                } else {
+                    BigDecimal xzjdq = deviationValue.add(stPower).setScale(2, BigDecimal.ROUND_HALF_UP);
+                    String cdqjsfsZbxz = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbxz", "0.4", stationCode);
+                    log.debug("参数cdqjsfsZbxz值为:" + cdqjsfsZbxz + ",超短期计算方式,可用和短期的差值加短期占比。");
+                    String cdqjsfsZbdq = sysParameterService.getSysParameterAndStationCode("cdqjsfsZbdq", "0.6", stationCode);
+                    log.debug("参数cdqjsfsZbdq值为:" + cdqjsfsZbdq + ",超短期计算方式,短期占比。");
+                    ustPower = xzjdq.multiply(new BigDecimal(cdqjsfsZbxz)).setScale(2, BigDecimal.ROUND_HALF_UP).add(stPower.multiply(new BigDecimal(cdqjsfsZbdq)).setScale(2, BigDecimal.ROUND_HALF_UP));
+
+                    String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+                    String[] aa = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPowers.floatValue()).split(":");
+                    if (new BigDecimal(value[0]).doubleValue() > capacity.doubleValue()) {
+                        // 如果超短期结果超出装机容量,则超短期结果为装机容量
+                        jiaYueWindPowerCdqResultCoverFD0021.setActivePower(capacity.floatValue());
+                    } else if (new BigDecimal(value[0]).doubleValue()< 0) {
+                        // 如果超短期结果小于0,则超短期结果为0
+                        jiaYueWindPowerCdqResultCoverFD0021.setActivePower(0f);
+                    } else {
+                        if (cdqjsfs.equals("1")) {
+                            jiaYueWindPowerCdqResultCoverFD0021.setActivePower(new BigDecimal(value[0]).floatValue());
+                        } else {
+                            jiaYueWindPowerCdqResultCoverFD0021.setActivePower(new BigDecimal(aa[0]).floatValue());
+                        }
+                    }
+                    jiaYueWindPowerCdqResultCoverFD0021.setOpenCap(new BigDecimal(value[1]).floatValue());
+                }
+
+                jiaYueWindPowerCdqResultCoverFD0021List.add(jiaYueWindPowerCdqResultCoverFD0021);
+            }
+        } else {
+            log.info("库中没有可用,本次可用计算数据采用短期*系数的方式生成数据");
+            // 短期乘以系数
+            for (int i = 0; i < jiaYueWindPowerDqResultCoverList.size(); i++) {
+                stPower = new BigDecimal(jiaYueWindPowerDqResultCoverList.get(i).getActivePower());
+                ustPower = stPower.multiply(new BigDecimal(coe)).setScale(2, BigDecimal.ROUND_HALF_UP);
+                jiaYueWindPowerCdqResultCoverFD0021 = new JiaYueWindPowerCdqResultCoverFD0021();
+                Long date = null;
+                try {
+                    date = DateMomentUtil.getMomentTime(System.currentTimeMillis(), 2, 15 * 60 * 1000L);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+
+                Boolean is = this.isMidnight(date);
+
+                if (is == true) {
+                    jiaYueWindPowerCdqResultCoverFD0021.setDataDate(this.nextDay(new Date()));
+                } else {
+                    jiaYueWindPowerCdqResultCoverFD0021.setDataDate(new Date());
+                }
+                String[] value = this.openCap(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime(),objId,ustPower.floatValue()).split(":");
+
+                Date nowDate = DateTimeUtil.getMomentTimeFor15Minute(date);
+                Time nowTime = this.convertUtilDateToMySQLTime(nowDate);
+                jiaYueWindPowerCdqResultCoverFD0021.setDataTime(nowTime);
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataType(jiaYueWindPowerDqResultCoverList.get(i).getDataType());
+                jiaYueWindPowerCdqResultCoverFD0021.setPreDateTime(jiaYueWindPowerDqResultCoverList.get(i).getPreDateTime());
+//                jiaYueWindPowerCdqResultCoverFD0007.setDataFlg(jiaYueWindPowerDqResultCoverList.get(i).getDataFlg());
+                jiaYueWindPowerCdqResultCoverFD0021.setActivePower(new BigDecimal(value[0]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0021.setObjId(jiaYueWindPowerDqResultCoverList.get(i).getObjId());
+                jiaYueWindPowerCdqResultCoverFD0021.setOpenCap(new BigDecimal(value[1]).floatValue());
+                jiaYueWindPowerCdqResultCoverFD0021.setCreateTime(LocalDateTime.ofInstant(new Date().toInstant(), ZoneId.systemDefault()));
+                jiaYueWindPowerCdqResultCoverFD0021List.add(jiaYueWindPowerCdqResultCoverFD0021);
+            }
+        }
+
+        if (jiaYueWindPowerCdqResultCoverFD0021List.size() > 0) {
+            this.saveCdq(jiaYueWindPowerCdqResultCoverFD0021List, stationCode);
+        }
+    }
+
+    @Override
+    @WR("W")
+    public void saveCdq(List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCoverList, String stationCode) {
+        this.saveBatch(jiaYueWindPowerCdqResultCoverList, jiaYueWindPowerCdqResultCoverList.size());
+    }
+
+    @Override
+    public void deleteByDateTime(LocalDateTime startTime, LocalDateTime endTime, String stationCode) {
+        jiaYueWindPowerCdqResultCoverMapperFD0021.deleteByDateTime(startTime, endTime, stationCode);
+    }
+
+    /**
+     * 将Date格式转换为Time格式
+     *
+     * @param utilDate
+     * @return
+     */
+    public static Time convertUtilDateToMySQLTime(Date utilDate) {
+        // 使用 SimpleDateFormat 提取时间部分
+        SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss");
+        String timeString = timeFormat.format(utilDate);
+        // 将提取的时间部分转换为 MySQL TIME 类型
+        return Time.valueOf(timeString);
+    }
+
+    @Override
+    public List<JiaYueWindPowerCdqResultCoverFD0021> findByDataDate(Date startTime) {
+
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        List<JiaYueWindPowerCdqResultCoverFD0021> jiaYueWindPowerCdqResultCoverFD0021List = new ArrayList<>();
+
+        for ( long time = startTime.getTime(); time < startTime.getTime() + 24 * 60 * 60 * 1000L - 1000;  time = time + 15 * 60 * 1000L) {
+            Date date = new Date(time);
+            String dateSubString = simpleDateFormat.format(date);
+            JiaYueWindPowerCdqResultCoverFD0021 jiaYueWindPowerCdqResultCoverFD0021 = jiaYueWindPowerCdqResultCoverMapperFD0021.selectByDataDate(dateSubString);
+            if (null != jiaYueWindPowerCdqResultCoverFD0021){
+                jiaYueWindPowerCdqResultCoverFD0021List.add(jiaYueWindPowerCdqResultCoverFD0021);
+            }
+        }
+        return jiaYueWindPowerCdqResultCoverFD0021List;
+    }
+
+
+
+    /**
+     * 判断时间戳是否是0点0分
+     *
+     * @param timestamp
+     * @return
+     */
+    public boolean isMidnight(long timestamp) {
+        Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("Asia/Shanghai"));
+        calendar.setTimeInMillis(timestamp);
+
+        boolean isMidnight = // 小时为0
+                calendar.get(Calendar.HOUR_OF_DAY) == 0&&
+                calendar.get(Calendar.MINUTE) == 0 // 分钟为0
+                        && calendar.get(Calendar.SECOND) == 0; // 秒为0
+        return isMidnight;
+    }
+
+    public Date nextDay(Date date){
+        Calendar calendar = new GregorianCalendar();
+        calendar.setTime(date);
+        calendar.add(calendar.DATE, 1);
+        date = calendar.getTime();
+        return date;
+    }
+
+    public String openCap(LocalDateTime localDateTime,String objId,float bigDecimal){
+        // 查询场站并网容量
+        WindFarmInfoEncryption windFarmInfoEncryption = windFarmInfoEncryptionService.getCap(objId);
+        float cap = windFarmInfoEncryption.getCap();
+        BigDecimal capValue = new BigDecimal(cap);
+        Instant incomingTime = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
+        Instant queryTime = null;
+
+        // 查询检修计划
+        List<OverhaulPlan> overhaulPlanList = overhaulPlanService.getOverhaulPlan(localDateTime, objId);
+        if (null != overhaulPlanList && overhaulPlanList.size() > 0) {
+            for (OverhaulPlan overhaulPlan : overhaulPlanList) {
+                // 判断手动停止时间是否在预测数据时间之后
+                if (null != overhaulPlan.getMcTime()) {
+                    queryTime = overhaulPlan.getMcTime().atZone(ZoneId.systemDefault()).toInstant();
+                    if (queryTime.isAfter(incomingTime)){
+                        BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                        bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                        cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                    }
+                }else {
+                    BigDecimal bigDecimal1 = overhaulPlan.getOverhaulCapactity().divide(capValue, 2, RoundingMode.HALF_UP);
+                    bigDecimal =  new BigDecimal(bigDecimal).subtract(bigDecimal1.multiply(new BigDecimal(bigDecimal))).setScale(2,RoundingMode.HALF_UP).floatValue();
+                    cap = cap - overhaulPlan.getOverhaulCapactity().floatValue();
+                }
+            }
+        }
+        String str = bigDecimal + ":" + cap;
+        return str;
+    }
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0009CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0009;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0009Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0009;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0009CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0009, JiaYueWindPowerDqResultCoverFD0009> implements JiaYueWindPowerDqResultCoverFD0009Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0009 jiaYueWindPowerDqResultCoverMapperFD0009;
+
+    public JiaYueWindPowerDqResultFD0009CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0009 jiaYueWindPowerDqResultCoverMapperFD0009){
+        this.jiaYueWindPowerDqResultCoverMapperFD0009 = jiaYueWindPowerDqResultCoverMapperFD0009;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0009> get() {
+        List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0009.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0009> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0009.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0009> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0009.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0009.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0009> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0009.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0009> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0009.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0017CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0017;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0017Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0017;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0017CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0017, JiaYueWindPowerDqResultCoverFD0017> implements JiaYueWindPowerDqResultCoverFD0017Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0017 jiaYueWindPowerDqResultCoverMapperFD0017;
+
+    public JiaYueWindPowerDqResultFD0017CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0017 jiaYueWindPowerDqResultCoverMapperFD0017){
+        this.jiaYueWindPowerDqResultCoverMapperFD0017 = jiaYueWindPowerDqResultCoverMapperFD0017;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0017> get() {
+        List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0017.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0017> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0017.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0017> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0017.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0017.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0017> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0017.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0017> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0017.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0018CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0018;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0018Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0018;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0018CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0018, JiaYueWindPowerDqResultCoverFD0018> implements JiaYueWindPowerDqResultCoverFD0018Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0018 jiaYueWindPowerDqResultCoverMapperFD0018;
+
+    public JiaYueWindPowerDqResultFD0018CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0018 jiaYueWindPowerDqResultCoverMapperFD0018){
+        this.jiaYueWindPowerDqResultCoverMapperFD0018 = jiaYueWindPowerDqResultCoverMapperFD0018;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0018> get() {
+        List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0018.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0018> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0018.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0018> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0018.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0018.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0018> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0018.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0018> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0018.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0019CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0019;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0019Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0019;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0019CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0019, JiaYueWindPowerDqResultCoverFD0019> implements JiaYueWindPowerDqResultCoverFD0019Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0019 jiaYueWindPowerDqResultCoverMapperFD0019;
+
+    public JiaYueWindPowerDqResultFD0019CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0019 jiaYueWindPowerDqResultCoverMapperFD0019){
+        this.jiaYueWindPowerDqResultCoverMapperFD0019 = jiaYueWindPowerDqResultCoverMapperFD0019;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0019> get() {
+        List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0019.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0019> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0019.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0019> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0019.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0019.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0019> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0019.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0019> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0019.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0020CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0020;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0020Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0020;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0020CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0020, JiaYueWindPowerDqResultCoverFD0020> implements JiaYueWindPowerDqResultCoverFD0020Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0020 jiaYueWindPowerDqResultCoverMapperFD0020;
+
+    public JiaYueWindPowerDqResultFD0020CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0020 jiaYueWindPowerDqResultCoverMapperFD0020){
+        this.jiaYueWindPowerDqResultCoverMapperFD0020 = jiaYueWindPowerDqResultCoverMapperFD0020;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0020> get() {
+        List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0020.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0020> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0020.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0020> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0020.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0020.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0020> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0020.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0020> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0020.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 95 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerDqResultFD0021CoverServiceImpl.java

@@ -0,0 +1,95 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerDqResultCoverMapperFD0021;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerDqResultCoverFD0021Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerDqResultCoverFD0021;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerDqResultFD0021CoverServiceImpl extends ServiceImpl<JiaYueWindPowerDqResultCoverMapperFD0021, JiaYueWindPowerDqResultCoverFD0021> implements JiaYueWindPowerDqResultCoverFD0021Service {
+    private final JiaYueWindPowerDqResultCoverMapperFD0021 jiaYueWindPowerDqResultCoverMapperFD0021;
+
+    public JiaYueWindPowerDqResultFD0021CoverServiceImpl(JiaYueWindPowerDqResultCoverMapperFD0021 jiaYueWindPowerDqResultCoverMapperFD0021){
+        this.jiaYueWindPowerDqResultCoverMapperFD0021 = jiaYueWindPowerDqResultCoverMapperFD0021;
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0021> get() {
+        List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0021.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0021> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0021.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<JiaYueWindPowerDqResultCoverFD0021> getAll() {
+        List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverMapperFD0021.selectList(null);
+        return jiaYueWindPowerDqResultCovers;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerDqResultCoverMapperFD0021.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveDq(List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList, String stationCode) {
+        Time startTime = jiaYueWindPowerDqResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerDqResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerDqResultCoverList.get(jiaYueWindPowerDqResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerDqResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerDqResultCoverList, jiaYueWindPowerDqResultCoverList.size());
+    }
+
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerDqResultCoverFD0021> findByObjIdAndStartTimeAndEndTime(String stationCode, Date startTime, Date endTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        String endTimeStr = simpleDateFormat.format(endTime);
+
+
+        List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0021.selectByTimeAndObjId(startTimeStr, endTimeStr, stationCode);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+    @Override
+    public List<JiaYueWindPowerDqResultCoverFD0021> findByDataDate(Date startTime) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
+        String startTimeStr = simpleDateFormat.format(startTime);
+        List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverList = jiaYueWindPowerDqResultCoverMapperFD0021.selectByDataDate(startTimeStr);
+        return jiaYueWindPowerDqResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0009CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0009;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0009Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0009;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0009CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0009, JiaYueWindPowerNwpResultCoverFD0009> implements JiaYueWindPowerNwpResultCoverFD0009Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0009 jiaYueWindPowerNwpResultCoverMapperFD0009;
+
+    public JiaYueWindPowerNwpResultFD0009CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0009 jiaYueWindPowerNwpResultCoverMapperFD0009){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0009 = jiaYueWindPowerNwpResultCoverMapperFD0009;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0009> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0009.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0009> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0009.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0009.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0009> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0009.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0017CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0017;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0017Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0017;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0017CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0017, JiaYueWindPowerNwpResultCoverFD0017> implements JiaYueWindPowerNwpResultCoverFD0017Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0017 jiaYueWindPowerNwpResultCoverMapperFD0017;
+
+    public JiaYueWindPowerNwpResultFD0017CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0017 jiaYueWindPowerNwpResultCoverMapperFD0017){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0017 = jiaYueWindPowerNwpResultCoverMapperFD0017;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0017> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0017.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0017> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0017.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0017.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0017> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0017.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0018CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0018;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0018Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0018;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0018CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0018, JiaYueWindPowerNwpResultCoverFD0018> implements JiaYueWindPowerNwpResultCoverFD0018Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0018 jiaYueWindPowerNwpResultCoverMapperFD0018;
+
+    public JiaYueWindPowerNwpResultFD0018CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0018 jiaYueWindPowerNwpResultCoverMapperFD0018){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0018 = jiaYueWindPowerNwpResultCoverMapperFD0018;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0018> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0018.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0018> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0018.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0018.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0018> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0018.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0019CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0019;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0019Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0019;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0019CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0019, JiaYueWindPowerNwpResultCoverFD0019> implements JiaYueWindPowerNwpResultCoverFD0019Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0019 jiaYueWindPowerNwpResultCoverMapperFD0019;
+
+    public JiaYueWindPowerNwpResultFD0019CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0019 jiaYueWindPowerNwpResultCoverMapperFD0019){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0019 = jiaYueWindPowerNwpResultCoverMapperFD0019;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0019> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0019.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0019> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0019.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0019.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0019> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0019.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0020CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0020;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0020Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0020;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0020CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0020, JiaYueWindPowerNwpResultCoverFD0020> implements JiaYueWindPowerNwpResultCoverFD0020Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0020 jiaYueWindPowerNwpResultCoverMapperFD0020;
+
+    public JiaYueWindPowerNwpResultFD0020CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0020 jiaYueWindPowerNwpResultCoverMapperFD0020){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0020 = jiaYueWindPowerNwpResultCoverMapperFD0020;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0020> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0020.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0020> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0020.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0020.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0020> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0020.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 74 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/JiaYueWindPowerNwpResultFD0021CoverServiceImpl.java

@@ -0,0 +1,74 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.JiaYueWindPowerNwpResultCoverMapperFD0021;
+import com.jiayue.ipfcst.client.service.JiaYueWindPowerNwpResultCoverFD0021Service;
+import com.jiayue.ipp.common.data.entity.JiaYueWindPowerNwpResultCoverFD0021;
+import org.springframework.stereotype.Service;
+
+import java.sql.Time;
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class JiaYueWindPowerNwpResultFD0021CoverServiceImpl extends ServiceImpl<JiaYueWindPowerNwpResultCoverMapperFD0021, JiaYueWindPowerNwpResultCoverFD0021> implements JiaYueWindPowerNwpResultCoverFD0021Service {
+
+    private final JiaYueWindPowerNwpResultCoverMapperFD0021 jiaYueWindPowerNwpResultCoverMapperFD0021;
+
+    public JiaYueWindPowerNwpResultFD0021CoverServiceImpl(JiaYueWindPowerNwpResultCoverMapperFD0021 jiaYueWindPowerNwpResultCoverMapperFD0021){
+        this.jiaYueWindPowerNwpResultCoverMapperFD0021 = jiaYueWindPowerNwpResultCoverMapperFD0021;
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0021> get() {
+        List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0021.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int put(List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerDqResultCovers) {
+        if (jiaYueWindPowerDqResultCovers != null && jiaYueWindPowerDqResultCovers.size() > 0) {
+            this.saveBatch(jiaYueWindPowerDqResultCovers, jiaYueWindPowerDqResultCovers.size());
+        }
+        return jiaYueWindPowerDqResultCovers.size();
+    }
+
+    @Override
+    @WR("R")
+    public List<JiaYueWindPowerNwpResultCoverFD0021> getAll() {
+        List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0021.selectList(null);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+    @Override
+    @WR("R")
+    public int deleteAll() {
+        return jiaYueWindPowerNwpResultCoverMapperFD0021.deleteAll();
+    }
+
+
+    @Override
+    @WR("W")
+    public void saveNwp(List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList, String stationCode) {
+
+        Time startTime = jiaYueWindPowerNwpResultCoverList.get(0).getDataTime();
+        Time endTime = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataTime();
+
+        Date dateDateStart = jiaYueWindPowerNwpResultCoverList.get(0).getDataDate();
+        Date dateDateEnd = jiaYueWindPowerNwpResultCoverList.get(jiaYueWindPowerNwpResultCoverList.size() - 1).getDataDate();
+
+//        jiaYueWindPowerNwpResultCoverMapper.deleteByDateTime(startTime,endTime,stationCode,dateDateStart,dateDateEnd);
+        this.saveBatch(jiaYueWindPowerNwpResultCoverList, jiaYueWindPowerNwpResultCoverList.size());
+    }
+
+    @Override
+    @WR("W")
+    public List<JiaYueWindPowerNwpResultCoverFD0021> getByDataDateAndDateTime(String fileDate, String fileTime, String objId) {
+        List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverList = jiaYueWindPowerNwpResultCoverMapperFD0021.selectByDataDateDateTime(fileDate, fileTime, objId);
+        return jiaYueWindPowerNwpResultCoverList;
+    }
+
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0009ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0009Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0009Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0009;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0009ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0009Mapper, WindPowerReal15MinFD0009> implements WindPowerReal15MinFD0009Service {
+    private final WindPowerReal15MinFD0009Mapper windPowerReal15MinFD0009Mapper;
+
+    public WindPowerReal15MinFD0009ServiceImpl(WindPowerReal15MinFD0009Mapper windPowerReal15MinFD0009Mapper){
+        this.windPowerReal15MinFD0009Mapper = windPowerReal15MinFD0009Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0009> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0009> windPowerReal15MinList =  windPowerReal15MinFD0009Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0009> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0009> getAll() {
+        List<WindPowerReal15MinFD0009> windPowerReal15MinList =  windPowerReal15MinFD0009Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0009> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0009> windPowerReal15MinList =  windPowerReal15MinFD0009Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0009Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0009> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0009> windPowerReal15MinList = windPowerReal15MinFD0009Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0017ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0017Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0017Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0017;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0017ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0017Mapper, WindPowerReal15MinFD0017> implements WindPowerReal15MinFD0017Service {
+    private final WindPowerReal15MinFD0017Mapper windPowerReal15MinFD0017Mapper;
+
+    public WindPowerReal15MinFD0017ServiceImpl(WindPowerReal15MinFD0017Mapper windPowerReal15MinFD0017Mapper){
+        this.windPowerReal15MinFD0017Mapper = windPowerReal15MinFD0017Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0017> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0017> windPowerReal15MinList =  windPowerReal15MinFD0017Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0017> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0017> getAll() {
+        List<WindPowerReal15MinFD0017> windPowerReal15MinList =  windPowerReal15MinFD0017Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0017> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0017> windPowerReal15MinList =  windPowerReal15MinFD0017Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0017Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0017> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0017> windPowerReal15MinList = windPowerReal15MinFD0017Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0018ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0018Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0018Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0018;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0018ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0018Mapper, WindPowerReal15MinFD0018> implements WindPowerReal15MinFD0018Service {
+    private final WindPowerReal15MinFD0018Mapper windPowerReal15MinFD0018Mapper;
+
+    public WindPowerReal15MinFD0018ServiceImpl(WindPowerReal15MinFD0018Mapper windPowerReal15MinFD0018Mapper){
+        this.windPowerReal15MinFD0018Mapper = windPowerReal15MinFD0018Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0018> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0018> windPowerReal15MinList =  windPowerReal15MinFD0018Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0018> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0018> getAll() {
+        List<WindPowerReal15MinFD0018> windPowerReal15MinList =  windPowerReal15MinFD0018Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0018> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0018> windPowerReal15MinList =  windPowerReal15MinFD0018Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0018Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0018> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0018> windPowerReal15MinList = windPowerReal15MinFD0018Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0019ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0019Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0019Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0019;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0019ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0019Mapper, WindPowerReal15MinFD0019> implements WindPowerReal15MinFD0019Service {
+    private final WindPowerReal15MinFD0019Mapper windPowerReal15MinFD0019Mapper;
+
+    public WindPowerReal15MinFD0019ServiceImpl(WindPowerReal15MinFD0019Mapper windPowerReal15MinFD0019Mapper){
+        this.windPowerReal15MinFD0019Mapper = windPowerReal15MinFD0019Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0019> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0019> windPowerReal15MinList =  windPowerReal15MinFD0019Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0019> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0019> getAll() {
+        List<WindPowerReal15MinFD0019> windPowerReal15MinList =  windPowerReal15MinFD0019Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0019> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0019> windPowerReal15MinList =  windPowerReal15MinFD0019Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0019Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0019> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0019> windPowerReal15MinList = windPowerReal15MinFD0019Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0020ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0020Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0020Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0020;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0020ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0020Mapper, WindPowerReal15MinFD0020> implements WindPowerReal15MinFD0020Service {
+    private final WindPowerReal15MinFD0020Mapper windPowerReal15MinFD0020Mapper;
+
+    public WindPowerReal15MinFD0020ServiceImpl(WindPowerReal15MinFD0020Mapper windPowerReal15MinFD0020Mapper){
+        this.windPowerReal15MinFD0020Mapper = windPowerReal15MinFD0020Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0020> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0020> windPowerReal15MinList =  windPowerReal15MinFD0020Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0020> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0020> getAll() {
+        List<WindPowerReal15MinFD0020> windPowerReal15MinList =  windPowerReal15MinFD0020Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0020> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0020> windPowerReal15MinList =  windPowerReal15MinFD0020Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0020Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0020> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0020> windPowerReal15MinList = windPowerReal15MinFD0020Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 63 - 0
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/WindPowerReal15MinFD0021ServiceImpl.java

@@ -0,0 +1,63 @@
+package com.jiayue.ipfcst.client.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.ipfcst.client.aop.WR;
+import com.jiayue.ipfcst.client.mapper.WindPowerReal15MinFD0021Mapper;
+import com.jiayue.ipfcst.client.service.WindPowerReal15MinFD0021Service;
+import com.jiayue.ipp.common.data.entity.WindPowerReal15MinFD0021;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+@Service
+public class WindPowerReal15MinFD0021ServiceImpl extends ServiceImpl<WindPowerReal15MinFD0021Mapper, WindPowerReal15MinFD0021> implements WindPowerReal15MinFD0021Service {
+    private final WindPowerReal15MinFD0021Mapper windPowerReal15MinFD0021Mapper;
+
+    public WindPowerReal15MinFD0021ServiceImpl(WindPowerReal15MinFD0021Mapper windPowerReal15MinFD0021Mapper){
+        this.windPowerReal15MinFD0021Mapper = windPowerReal15MinFD0021Mapper;
+    }
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0021> get(Date startTime, Date endTime) {
+     List<WindPowerReal15MinFD0021> windPowerReal15MinList =  windPowerReal15MinFD0021Mapper.selectByTime(startTime, endTime);
+         return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int put(List<WindPowerReal15MinFD0021> windPowerReal15MinList) {
+        if (windPowerReal15MinList != null && windPowerReal15MinList.size() > 0){
+            this.saveBatch(windPowerReal15MinList,windPowerReal15MinList.size());
+        }
+        return windPowerReal15MinList.size();
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0021> getAll() {
+        List<WindPowerReal15MinFD0021> windPowerReal15MinList =  windPowerReal15MinFD0021Mapper.selectList(null);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public List<WindPowerReal15MinFD0021> getAll(Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0021> windPowerReal15MinList =  windPowerReal15MinFD0021Mapper.selectByTime(startTime,endTime);
+        return  windPowerReal15MinList;
+    }
+
+    @Override
+//    @WR("R")
+    public int deleteAll() {
+
+       return windPowerReal15MinFD0021Mapper.deleteAll();
+    }
+
+    @Override
+    @WR("W")
+    public List<WindPowerReal15MinFD0021> findByObjIdAndDateTime(String objId, Date startTime, Date endTime) {
+        List<WindPowerReal15MinFD0021> windPowerReal15MinList = windPowerReal15MinFD0021Mapper.selectByTimeAndObjId(startTime,endTime,objId);
+        return windPowerReal15MinList;
+    }
+}

+ 87 - 2
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/an/ParsingDqInfoServiceImpl.java

@@ -61,6 +61,18 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
 
     private final JiaYueWindPowerDqResultCoverFD0007Service jiaYueWindPowerDqResultCoverFD0007Service;
 
+    private final JiaYueWindPowerDqResultCoverFD0009Service jiaYueWindPowerDqResultCoverFD0009Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0017Service jiaYueWindPowerDqResultCoverFD0017Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0018Service jiaYueWindPowerDqResultCoverFD0018Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0019Service jiaYueWindPowerDqResultCoverFD0019Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0020Service jiaYueWindPowerDqResultCoverFD0020Service;
+
+    private final JiaYueWindPowerDqResultCoverFD0021Service jiaYueWindPowerDqResultCoverFD0021Service;
+
     private final JiaYueWindPowerDqResultCoverFD0029Service jiaYueWindPowerDqResultCoverFD0029Service;
 
     private final JiaYueWindPowerDqResultCoverFD0030Service jiaYueWindPowerDqResultCoverFD0030Service;
@@ -84,7 +96,7 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
     private final PhotovoltaicFarmInfoService photovoltaicFarmInfoService;
 
 
-    public ParsingDqInfoServiceImpl(OverhaulPlanService overhaulPlanService,JiaYueWindPowerDqResultCoverFD0001Service jiaYueWindPowerDqResultCoverFD0001Service,JiaYueWindPowerDqResultCoverFD0002Service jiaYueWindPowerDqResultCoverFD0002Service,JiaYueWindPowerDqResultCoverFD0003Service jiaYueWindPowerDqResultCoverFD0003Service,JiaYueWindPowerDqResultCoverFD0004Service jiaYueWindPowerDqResultCoverFD0004Service,JiaYueWindPowerDqResultCoverFD0005Service jiaYueWindPowerDqResultCoverFD0005Service,JiaYueWindPowerDqResultCoverFD0006Service jiaYueWindPowerDqResultCoverFD0006Service,JiaYueWindPowerDqResultCoverFD0007Service jiaYueWindPowerDqResultCoverFD0007Service,JiaYueWindPowerDqResultCoverFD0029Service jiaYueWindPowerDqResultCoverFD0029Service,JiaYueWindPowerDqResultCoverFD0030Service jiaYueWindPowerDqResultCoverFD0030Service,JiaYueWindPowerDqResultCoverFD0031Service jiaYueWindPowerDqResultCoverFD0031Service,ElectricFieldService electricFieldService,JiaYueWindPowerDqResultCoverMapper jiaYueWindPowerDqResultCoverMapper,WindFarmInfoEncryptionService windFarmInfoEncryptionService,JiaYueWindPowerDqResultCoverGF0001Service jiaYueWindPowerDqResultCoverGF0001Service,JiaYueWindPowerDqResultCoverGF0002Service jiaYueWindPowerDqResultCoverGF0002Service,JiaYueWindPowerDqResultCoverGF0012Service jiaYueWindPowerDqResultCoverGF0012Service,JiaYueWindPowerDqResultCoverGF0013Service jiaYueWindPowerDqResultCoverGF0013Service,PhotovoltaicFarmInfoService photovoltaicFarmInfoService){
+    public ParsingDqInfoServiceImpl(OverhaulPlanService overhaulPlanService,JiaYueWindPowerDqResultCoverFD0001Service jiaYueWindPowerDqResultCoverFD0001Service,JiaYueWindPowerDqResultCoverFD0002Service jiaYueWindPowerDqResultCoverFD0002Service,JiaYueWindPowerDqResultCoverFD0003Service jiaYueWindPowerDqResultCoverFD0003Service,JiaYueWindPowerDqResultCoverFD0004Service jiaYueWindPowerDqResultCoverFD0004Service,JiaYueWindPowerDqResultCoverFD0005Service jiaYueWindPowerDqResultCoverFD0005Service,JiaYueWindPowerDqResultCoverFD0006Service jiaYueWindPowerDqResultCoverFD0006Service,JiaYueWindPowerDqResultCoverFD0007Service jiaYueWindPowerDqResultCoverFD0007Service,JiaYueWindPowerDqResultCoverFD0009Service jiaYueWindPowerDqResultCoverFD0009Service,JiaYueWindPowerDqResultCoverFD0021Service jiaYueWindPowerDqResultCoverFD0021Service,JiaYueWindPowerDqResultCoverFD0017Service jiaYueWindPowerDqResultCoverFD0017Service,JiaYueWindPowerDqResultCoverFD0018Service jiaYueWindPowerDqResultCoverFD0018Service,JiaYueWindPowerDqResultCoverFD0019Service jiaYueWindPowerDqResultCoverFD0019Service,JiaYueWindPowerDqResultCoverFD0020Service jiaYueWindPowerDqResultCoverFD0020Service,JiaYueWindPowerDqResultCoverFD0029Service jiaYueWindPowerDqResultCoverFD0029Service,JiaYueWindPowerDqResultCoverFD0030Service jiaYueWindPowerDqResultCoverFD0030Service,JiaYueWindPowerDqResultCoverFD0031Service jiaYueWindPowerDqResultCoverFD0031Service,ElectricFieldService electricFieldService,JiaYueWindPowerDqResultCoverMapper jiaYueWindPowerDqResultCoverMapper,WindFarmInfoEncryptionService windFarmInfoEncryptionService,JiaYueWindPowerDqResultCoverGF0001Service jiaYueWindPowerDqResultCoverGF0001Service,JiaYueWindPowerDqResultCoverGF0002Service jiaYueWindPowerDqResultCoverGF0002Service,JiaYueWindPowerDqResultCoverGF0012Service jiaYueWindPowerDqResultCoverGF0012Service,JiaYueWindPowerDqResultCoverGF0013Service jiaYueWindPowerDqResultCoverGF0013Service,PhotovoltaicFarmInfoService photovoltaicFarmInfoService){
         this.overhaulPlanService = overhaulPlanService;
         this.jiaYueWindPowerDqResultCoverFD0001Service = jiaYueWindPowerDqResultCoverFD0001Service;
         this.jiaYueWindPowerDqResultCoverFD0002Service = jiaYueWindPowerDqResultCoverFD0002Service;
@@ -93,6 +105,12 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
         this.jiaYueWindPowerDqResultCoverFD0005Service = jiaYueWindPowerDqResultCoverFD0005Service;
         this.jiaYueWindPowerDqResultCoverFD0006Service = jiaYueWindPowerDqResultCoverFD0006Service;
         this.jiaYueWindPowerDqResultCoverFD0007Service = jiaYueWindPowerDqResultCoverFD0007Service;
+        this.jiaYueWindPowerDqResultCoverFD0009Service = jiaYueWindPowerDqResultCoverFD0009Service;
+        this.jiaYueWindPowerDqResultCoverFD0017Service = jiaYueWindPowerDqResultCoverFD0017Service;
+        this.jiaYueWindPowerDqResultCoverFD0018Service = jiaYueWindPowerDqResultCoverFD0018Service;
+        this.jiaYueWindPowerDqResultCoverFD0019Service = jiaYueWindPowerDqResultCoverFD0019Service;
+        this.jiaYueWindPowerDqResultCoverFD0020Service = jiaYueWindPowerDqResultCoverFD0020Service;
+        this.jiaYueWindPowerDqResultCoverFD0021Service = jiaYueWindPowerDqResultCoverFD0021Service;
         this.jiaYueWindPowerDqResultCoverFD0029Service = jiaYueWindPowerDqResultCoverFD0029Service;
         this.jiaYueWindPowerDqResultCoverFD0030Service = jiaYueWindPowerDqResultCoverFD0030Service;
         this.jiaYueWindPowerDqResultCoverFD0031Service = jiaYueWindPowerDqResultCoverFD0031Service;
@@ -128,6 +146,12 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
             List<JiaYueWindPowerDqResultCoverFD0005> jiaYueWindPowerDqResultCoverFD0005List = new ArrayList<>();
             List<JiaYueWindPowerDqResultCoverFD0006> jiaYueWindPowerDqResultCoverFD0006List = new ArrayList<>();
             List<JiaYueWindPowerDqResultCoverFD0007> jiaYueWindPowerDqResultCoverFD0007List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0009> jiaYueWindPowerDqResultCoverFD0009List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0017> jiaYueWindPowerDqResultCoverFD0017List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0018> jiaYueWindPowerDqResultCoverFD0018List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0019> jiaYueWindPowerDqResultCoverFD0019List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0020> jiaYueWindPowerDqResultCoverFD0020List = new ArrayList<>();
+            List<JiaYueWindPowerDqResultCoverFD0021> jiaYueWindPowerDqResultCoverFD0021List = new ArrayList<>();
             List<JiaYueWindPowerDqResultCoverFD0029> jiaYueWindPowerDqResultCoverFD0029List = new ArrayList<>();
             List<JiaYueWindPowerDqResultCoverFD0030> jiaYueWindPowerDqResultCoverFD0030List = new ArrayList<>();
             List<JiaYueWindPowerDqResultCoverFD0031> jiaYueWindPowerDqResultCoverFD0031List = new ArrayList<>();
@@ -141,7 +165,8 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
             parsingDqInfo.setDataType("m");
             parsingDqInfo.setFileName("DQ_");
             parsingDqInfo.setGenDate("");
-            parsingDqInfo.setStationCode("J00770,J00941,J00942,J00988,J00929,J00930,J00931,J01033,J01034,J01043,J01056,J01057,J01061,J01062");
+
+            parsingDqInfo.setStationCode("J00770,J00941,J00942,J00988,J00929,J00930,J00931,J01033,J01034,J01043,J01056,J01057,J01061,J01062,J01118,J01123,J01122,J01119,J01120,J01121");
             parsingDqInfo.setDelFlag("0");
             parsingDqInfo.setForecastTime("1<=>2<=>date=<=>yyyy-MM-dd");
             parsingDqInfo.setFpValue("3-1538<=>5");
@@ -199,6 +224,24 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
                 if (parsingUrl.getStationCode().equals("J00931")) {
                     jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0007Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                 }
+                if (parsingUrl.getStationCode().equals("J01118")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0009Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01123")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0017Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01122")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0018Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01119")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0019Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01120")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0020Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01121")) {
+                    jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0021Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
                 if (parsingUrl.getStationCode().equals("J01034")) {
                     jiaYueWindPowerDqResultCovers = jiaYueWindPowerDqResultCoverFD0029Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                 }
@@ -287,6 +330,30 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
                                         jiaYueWindPowerDqResultCoverFD0007List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
                                                 new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0007()));
                                     }
+                                    if (parsingUrl.getStationCode().equals("J01118")) {
+                                        jiaYueWindPowerDqResultCoverFD0009List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0009()));
+                                    }
+                                    if (parsingUrl.getStationCode().equals("J01123")) {
+                                        jiaYueWindPowerDqResultCoverFD0017List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0017()));
+                                    }
+                                    if (parsingUrl.getStationCode().equals("J01122")) {
+                                        jiaYueWindPowerDqResultCoverFD0018List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0018()));
+                                    }
+                                    if (parsingUrl.getStationCode().equals("J01119")) {
+                                        jiaYueWindPowerDqResultCoverFD0019List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0019()));
+                                    }
+                                    if (parsingUrl.getStationCode().equals("J01120")) {
+                                        jiaYueWindPowerDqResultCoverFD0020List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0020()));
+                                    }
+                                    if (parsingUrl.getStationCode().equals("J01121")) {
+                                        jiaYueWindPowerDqResultCoverFD0021List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
+                                                new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0021()));
+                                    }
                                     if (parsingUrl.getStationCode().equals("J01034")) {
                                         jiaYueWindPowerDqResultCoverFD0029List.add(this.jiaYueWindPowerDqResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), bigDecimal.floatValue(),
                                                 new Date().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime(), da, timeString, new JiaYueWindPowerDqResultCoverFD0029()));
@@ -345,6 +412,24 @@ public class ParsingDqInfoServiceImpl extends ServiceImpl<ParsingDqInfoMapper, P
                                 if (parsingUrl.getStationCode().equals("J00931")) {
                                     jiaYueWindPowerDqResultCoverFD0007Service.saveDq(jiaYueWindPowerDqResultCoverFD0007List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                                 }
+                                if (parsingUrl.getStationCode().equals("J01118")) {
+                                    jiaYueWindPowerDqResultCoverFD0009Service.saveDq(jiaYueWindPowerDqResultCoverFD0009List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01123")) {
+                                    jiaYueWindPowerDqResultCoverFD0017Service.saveDq(jiaYueWindPowerDqResultCoverFD0017List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01122")) {
+                                    jiaYueWindPowerDqResultCoverFD0018Service.saveDq(jiaYueWindPowerDqResultCoverFD0018List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01119")) {
+                                    jiaYueWindPowerDqResultCoverFD0019Service.saveDq(jiaYueWindPowerDqResultCoverFD0019List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01120")) {
+                                    jiaYueWindPowerDqResultCoverFD0020Service.saveDq(jiaYueWindPowerDqResultCoverFD0020List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01121")) {
+                                    jiaYueWindPowerDqResultCoverFD0021Service.saveDq(jiaYueWindPowerDqResultCoverFD0021List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                                }
                                 if (parsingUrl.getStationCode().equals("J01034")) {
                                     jiaYueWindPowerDqResultCoverFD0029Service.saveDq(jiaYueWindPowerDqResultCoverFD0029List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                                 }

+ 79 - 1
ipp-client/src/main/java/com/jiayue/ipfcst/client/service/impl/an/ParsingNwpInfoServiceImpl.java

@@ -64,6 +64,18 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
 
     private final JiaYueWindPowerNwpResultCoverFD0007Service jiaYueWindPowerNwpResultCoverFD0007Service;
 
+    private final JiaYueWindPowerNwpResultCoverFD0009Service jiaYueWindPowerNwpResultCoverFD0009Service;
+
+    private final JiaYueWindPowerNwpResultCoverFD0017Service jiaYueWindPowerNwpResultCoverFD0017Service;
+
+    private final JiaYueWindPowerNwpResultCoverFD0018Service jiaYueWindPowerNwpResultCoverFD0018Service;
+
+    private final JiaYueWindPowerNwpResultCoverFD0019Service jiaYueWindPowerNwpResultCoverFD0019Service;
+
+    private final JiaYueWindPowerNwpResultCoverFD0020Service jiaYueWindPowerNwpResultCoverFD0020Service;
+
+    private final JiaYueWindPowerNwpResultCoverFD0021Service jiaYueWindPowerNwpResultCoverFD0021Service;
+
     private final JiaYueWindPowerNwpResultCoverFD0029Service jiaYueWindPowerNwpResultCoverFD0029Service;
 
     private final JiaYueWindPowerNwpResultCoverFD0030Service jiaYueWindPowerNwpResultCoverFD0030Service;
@@ -104,7 +116,7 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
             parsingNwpInfo1.setId("a6bef32fab9fb298528851f1d85c77f2");
             parsingNwpInfo1.setDataType("m");
             parsingNwpInfo1.setFileName("NWP_");
-            parsingNwpInfo1.setStationCode("J00770,J00941,J00942,J00988,J00929,J00930,J00931,J01033,J01034,J01043,J01056,J01057,J01061,J01062");
+            parsingNwpInfo1.setStationCode("J00770,J00941,J00942,J00988,J00929,J00930,J00931,J01033,J01034,J01043,J01056,J01057,J01061,J01062,J01118,J01123,J01122,J01119,J01120,J01121");
             parsingNwpInfo1.setDelFlag("0");
             parsingNwpInfo1.setPreTime("1<=>2<=>date=<=>yyyy-MM-dd");
 //            parsingNwpInfo1.setScDate();
@@ -143,6 +155,12 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
             List<JiaYueWindPowerNwpResultCoverFD0005> jiaYueWindPowerNwpResultCoverFD0005List = new ArrayList<>();
             List<JiaYueWindPowerNwpResultCoverFD0006> jiaYueWindPowerNwpResultCoverFD0006List = new ArrayList<>();
             List<JiaYueWindPowerNwpResultCoverFD0007> jiaYueWindPowerNwpResultCoverFD0007List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0009> jiaYueWindPowerNwpResultCoverFD0009List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0017> jiaYueWindPowerNwpResultCoverFD0017List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0018> jiaYueWindPowerNwpResultCoverFD0018List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0019> jiaYueWindPowerNwpResultCoverFD0019List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0020> jiaYueWindPowerNwpResultCoverFD0020List = new ArrayList<>();
+            List<JiaYueWindPowerNwpResultCoverFD0021> jiaYueWindPowerNwpResultCoverFD0021List = new ArrayList<>();
             List<JiaYueWindPowerNwpResultCoverFD0029> jiaYueWindPowerNwpResultCoverFD0029List = new ArrayList<>();
             List<JiaYueWindPowerNwpResultCoverFD0030> jiaYueWindPowerNwpResultCoverFD0030List = new ArrayList<>();
             List<JiaYueWindPowerNwpResultCoverFD0031> jiaYueWindPowerNwpResultCoverFD0031List = new ArrayList<>();
@@ -208,6 +226,24 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
                 if (parsingUrl.getStationCode().equals("J00931")) {
                     jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0007Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                 }
+                if (parsingUrl.getStationCode().equals("J01118")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0009Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01123")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0017Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01122")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0018Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01119")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0019Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01120")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0020Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
+                if (parsingUrl.getStationCode().equals("J01121")) {
+                    jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0021Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                }
                 if (parsingUrl.getStationCode().equals("J01034")) {
                     jiaYueWindPowerNwpResultCovers = jiaYueWindPowerNwpResultCoverFD0029Service.getByDataDateAndDateTime(fileDate, fileTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                 }
@@ -311,6 +347,30 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
                                     jiaYueWindPowerNwpResultCoverFD0007List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
                                             , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0007()));
                                 }
+                                if (parsingUrl.getStationCode().equals("J01118")) {
+                                    jiaYueWindPowerNwpResultCoverFD0009List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0009()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01123")) {
+                                    jiaYueWindPowerNwpResultCoverFD0017List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0017()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01122")) {
+                                    jiaYueWindPowerNwpResultCoverFD0018List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0018()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01119")) {
+                                    jiaYueWindPowerNwpResultCoverFD0019List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0019()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01120")) {
+                                    jiaYueWindPowerNwpResultCoverFD0020List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0020()));
+                                }
+                                if (parsingUrl.getStationCode().equals("J01121")) {
+                                    jiaYueWindPowerNwpResultCoverFD0021List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
+                                            , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0021()));
+                                }
                                 if (parsingUrl.getStationCode().equals("J01034")) {
                                     jiaYueWindPowerNwpResultCoverFD0029List.add(this.jiaYueWindPowerNwpResultCover(combinedDateTime, electricFieldService.numberToIdentification(parsingUrl.getStationCode()), da, timeStr, pressures, rhs
                                             , swrs, result, ws10s, wd10s, ws30s, wd30s, ws50s, wd50s, ws70s, wd70s, ws80s, wd80s, ws90s, wd90s, ws100s, wd100s, ws170s, wd170s, i, new JiaYueWindPowerNwpResultCoverFD0029()));
@@ -362,6 +422,24 @@ public class ParsingNwpInfoServiceImpl extends ServiceImpl<ParsingNwpInfoMapper,
                             if (parsingUrl.getStationCode().equals("J00931")) {
                                 jiaYueWindPowerNwpResultCoverFD0007Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0007List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                             }
+                            if (parsingUrl.getStationCode().equals("J01118")) {
+                                jiaYueWindPowerNwpResultCoverFD0009Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0009List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
+                            if (parsingUrl.getStationCode().equals("J01123")) {
+                                jiaYueWindPowerNwpResultCoverFD0017Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0017List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
+                            if (parsingUrl.getStationCode().equals("J01122")) {
+                                jiaYueWindPowerNwpResultCoverFD0018Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0018List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
+                            if (parsingUrl.getStationCode().equals("J01119")) {
+                                jiaYueWindPowerNwpResultCoverFD0019Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0019List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
+                            if (parsingUrl.getStationCode().equals("J01120")) {
+                                jiaYueWindPowerNwpResultCoverFD0020Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0020List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
+                            if (parsingUrl.getStationCode().equals("J01121")) {
+                                jiaYueWindPowerNwpResultCoverFD0021Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0021List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
+                            }
                             if (parsingUrl.getStationCode().equals("J01034")) {
                                 jiaYueWindPowerNwpResultCoverFD0029Service.saveNwp(jiaYueWindPowerNwpResultCoverFD0029List, electricFieldService.numberToIdentification(parsingUrl.getStationCode()));
                             }

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0009.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0009_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0009_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0009 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0017.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0017_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0017_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0017 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0018.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0018_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0018_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0018 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0019.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0019_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0019_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0019 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0020.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0020_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0020_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0020 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 82 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerCdqResultCoverFD0021.java

@@ -0,0 +1,82 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0021_zdata_wind_power_cdq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0021_zdata_wind_power_cdq_result")
+public class JiaYueWindPowerCdqResultCoverFD0021 {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @TableId(value = "id",type = IdType.INPUT)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0009.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0009_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0009_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0009 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0017.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0017_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0017_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0017 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0018.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0018_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0018_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0018 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0019.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0019_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0019_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0019 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0020.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0020_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0020_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0020 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 84 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerDqResultCoverFD0021.java

@@ -0,0 +1,84 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0021_zdata_wind_power_dq_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0021_zdata_wind_power_dq_result")
+public class JiaYueWindPowerDqResultCoverFD0021 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+//
+//
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     *  开机容量
+     */
+    private Float openCap;
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0009.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0009_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0009_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0009 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0017.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0009_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0017_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0017 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0018.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0018_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0018_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0018 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0019.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0019_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0019_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0019 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0020.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0019_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0020_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0020 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 180 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/JiaYueWindPowerNwpResultCoverFD0021.java

@@ -0,0 +1,180 @@
+package com.jiayue.ipp.common.data.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.sql.Time;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * jiayue_FD0019_zdata_nwp_result
+ *
+ *  @author fxy
+ *  @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("jiayue_FD0021_zdata_nwp_result")
+public class JiaYueWindPowerNwpResultCoverFD0021 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+//    /**
+//     *  数据类型
+//     */
+//    private String dataType;
+
+
+//    /**
+//     *  预测类型
+//     */
+//    private String dataFlg;
+
+    /**
+     *  起报日期
+     */
+    private Date dataDate;
+
+
+    /**
+     *  起报时间
+     */
+    private Time dataTime;
+
+    /**
+     *  预测时间
+     */
+    private LocalDateTime preDateTime;
+
+    /**
+     *  温度
+     */
+    private BigDecimal t;
+
+    /**
+     *  湿度
+     */
+    private BigDecimal h;
+
+    /**
+     *  短波辐射
+     */
+    private BigDecimal swr;
+
+    /**
+     *  气压
+     */
+    private BigDecimal p;
+
+
+    /**
+     *  10米风速
+     */
+    private BigDecimal ws_10;
+
+    /**
+     *  30米风速
+     */
+    private BigDecimal ws_30;
+
+    /**
+     *  50米风速
+     */
+    private BigDecimal ws_50;
+
+    /**
+     *  70米风速
+     */
+    private BigDecimal ws_70;
+
+    /**
+     *  80米风速
+     */
+    private BigDecimal ws_80;
+
+    /**
+     *  90米风速
+     */
+    private BigDecimal ws_90;
+
+    /**
+     *  100米风速
+     */
+    private BigDecimal ws_100;
+
+    /**
+     *  170米风速
+     */
+    private BigDecimal ws_170;
+
+    /**
+     *  10米风向
+     */
+    private BigDecimal wd_10;
+
+    /**
+     *  30米风向
+     */
+    private BigDecimal wd_30;
+
+    /**
+     *  50米风向
+     */
+    private BigDecimal wd_50;
+
+    /**
+     *  70米风向
+     */
+    private BigDecimal wd_70;
+
+    /**
+     *  80米风向
+     */
+    private BigDecimal wd_80;
+
+    /**
+     *  90米风向
+     */
+    private BigDecimal wd_90;
+
+    /**
+     *  100米风向
+     */
+    private BigDecimal wd_100;
+
+    /**
+     *  170米风向
+     */
+    private BigDecimal wd_170;
+
+
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 62 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0009.java

@@ -0,0 +1,62 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * zdata_FD0009_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("zdata_FD0009_wind_power_real_15min")
+public class WindPowerReal15MinFD0009 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+    /**
+     *  数据类型
+     */
+    private String dataType;
+
+
+    /**
+     *  日期
+     */
+    private LocalDateTime dateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 62 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0017.java

@@ -0,0 +1,62 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * zdata_FD0017_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("zdata_FD0017_wind_power_real_15min")
+public class WindPowerReal15MinFD0017 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+    /**
+     *  数据类型
+     */
+    private String dataType;
+
+
+    /**
+     *  日期
+     */
+    private LocalDateTime dateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

+ 62 - 0
ipp-common/ipp-common-data/src/main/java/com/jiayue/ipp/common/data/entity/WindPowerReal15MinFD0018.java

@@ -0,0 +1,62 @@
+package com.jiayue.ipp.common.data.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * zdata_FD0018_wind_power_real_15min
+ *
+ * @author fxy
+ * @date 2023-08-01 15:48:48
+ */
+@Data
+@TableName("zdata_FD0018_wind_power_real_15min")
+public class WindPowerReal15MinFD0018 implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+
+//    /**
+//     * 主键ID
+//     */
+//    @Id
+//    @GeneratedValue(strategy = GenerationType.IDENTITY)
+//    private BigInteger id;
+
+
+    /**
+     *  对象标识
+     */
+    private String objId;
+
+
+    /**
+     *  数据类型
+     */
+    private String dataType;
+
+
+    /**
+     *  日期
+     */
+    private LocalDateTime dateTime;
+
+    /**
+     *  值
+     */
+    private Float activePower;
+
+    /**
+     *  入库时间
+     */
+    private LocalDateTime createTime;
+
+
+    /**
+     *  更新时间
+     */
+    private LocalDateTime updateTime;
+
+}

Some files were not shown because too many files changed in this diff