Browse Source

故障分析统计

shilin 3 years ago
parent
commit
68391187dc
100 changed files with 6203 additions and 12 deletions
  1. 7 0
      .idea/codeStyles/Project.xml
  2. 5 0
      .idea/codeStyles/codeStyleConfig.xml
  3. 15 3
      .idea/compiler.xml
  4. 28 8
      .idea/encodings.xml
  5. 5 0
      .idea/misc.xml
  6. 124 0
      .idea/uiDesigner.xml
  7. 1 1
      .idea/vcs.xml
  8. 28 0
      common/src/main/java/com/gyee/common/model/StringUtils.java
  9. BIN
      common/target/classes/com/gyee/common/model/StringUtils.class
  10. BIN
      histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/init/CacheContext.class
  11. BIN
      histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/service/benchmarking/BenchmarkingHistroyService.class
  12. BIN
      histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/service/specific/SpecificService.class
  13. BIN
      histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/util/realtimesource/MongoEdosUtil.class
  14. BIN
      histroy/benchmarking-histroy/target/classes/com/gyee/benchmarkinghistroy/init/CacheContext.class
  15. BIN
      histroy/benchmarking-histroy/target/classes/com/gyee/benchmarkinghistroy/service/BenchmarkingHistroyService.class
  16. BIN
      histroy/healthmanagement-histroy-hb/target/classes/com/gyee/healthmanagementhistroy/service/evaluate/EvaluateService.class
  17. BIN
      histroy/healthmanagement-histroy-hb/target/classes/com/gyee/healthmanagementhistroy/service/healthreport/HealthReportService.class
  18. 89 0
      realtime/failurestatistics-server/pom.xml
  19. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/FailurestatisticsMain.java
  20. 150 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/config/GeneratorCodeConfig.java
  21. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EarlywarningmainController.java
  22. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EarlywarningsubController.java
  23. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EquipmentdayinfoController.java
  24. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EquipmentmodelController.java
  25. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/FailurestatisticsmainController.java
  26. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/FailurestatisticssubController.java
  27. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartpowerstatticsmainController.java
  28. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartpowerstatticssubController.java
  29. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartstatisticsmainController.java
  30. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartstatisticssubController.java
  31. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/ParttemperaturemainController.java
  32. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/ParttemperaturesubController.java
  33. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindpowerstationtestingpointController.java
  34. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointController.java
  35. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointaiController.java
  36. 20 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointdiController.java
  37. 167 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/CacheContext.java
  38. 211 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/Constant.java
  39. 26 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/InitialConfig.java
  40. 44 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EarlywarningmainMapper.java
  41. 30 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EarlywarningsubMapper.java
  42. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EquipmentmodelMapper.java
  43. 44 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/FailurestatisticsmainMapper.java
  44. 29 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/FailurestatisticssubMapper.java
  45. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/LineMapper.java
  46. 30 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartpowerstatticsmainMapper.java
  47. 28 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartpowerstatticssubMapper.java
  48. 30 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartstatisticsmainMapper.java
  49. 28 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartstatisticssubMapper.java
  50. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ParttemperaturemainMapper.java
  51. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ParttemperaturesubMapper.java
  52. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ProjectMapper.java
  53. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/Windpowerinfoday3Mapper.java
  54. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerinfodayMapper.java
  55. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerstationMapper.java
  56. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerstationtestingpointMapper.java
  57. 17 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbineMapper.java
  58. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbinetestingpointaiMapper.java
  59. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbinetestingpointdiMapper.java
  60. 290 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Earlywarningmain.java
  61. 57 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Earlywarningsub.java
  62. 66 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Equipmentmodel.java
  63. 291 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Failurestatisticsmain.java
  64. 57 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Failurestatisticssub.java
  65. 53 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Line.java
  66. 51 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partpowerstatticsmain.java
  67. 57 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partpowerstatticssub.java
  68. 306 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partstatisticsmain.java
  69. 55 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partstatisticssub.java
  70. 49 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Parttemperaturemain.java
  71. 55 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Parttemperaturesub.java
  72. 70 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Project.java
  73. 574 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerinfoday.java
  74. 172 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerinfoday3.java
  75. 87 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerstation.java
  76. 75 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerstationtestingpoint.java
  77. 65 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbine.java
  78. 80 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbinetestingpointai.java
  79. 81 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbinetestingpointdi.java
  80. 586 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/EarlywarningService.java
  81. 596 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/FailurestatisticsService.java
  82. 452 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/PartpowerstatticsService.java
  83. 31 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEarlywarningmainService.java
  84. 22 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEarlywarningsubService.java
  85. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEquipmentmodelService.java
  86. 35 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IFailurestatisticsmainService.java
  87. 22 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IFailurestatisticssubService.java
  88. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/ILineService.java
  89. 22 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartpowerstatticsmainService.java
  90. 22 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartpowerstatticssubService.java
  91. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartstatisticsmainService.java
  92. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartstatisticssubService.java
  93. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IParttemperaturemainService.java
  94. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IParttemperaturesubService.java
  95. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IProjectService.java
  96. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerinfoday3Service.java
  97. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerinfodayService.java
  98. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerstationService.java
  99. 16 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerstationtestingpointService.java
  100. 0 0
      realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindturbineService.java

+ 7 - 0
.idea/codeStyles/Project.xml

@@ -0,0 +1,7 @@
+<component name="ProjectCodeStyleConfiguration">
+  <code_scheme name="Project" version="173">
+    <ScalaCodeStyleSettings>
+      <option name="MULTILINE_STRING_CLOSING_QUOTES_ON_NEW_LINE" value="true" />
+    </ScalaCodeStyleSettings>
+  </code_scheme>
+</component>

+ 5 - 0
.idea/codeStyles/codeStyleConfig.xml

@@ -0,0 +1,5 @@
+<component name="ProjectCodeStyleConfiguration">
+  <state>
+    <option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
+  </state>
+</component>

+ 15 - 3
.idea/compiler.xml

@@ -2,14 +2,26 @@
 <project version="4">
   <component name="CompilerConfiguration">
     <annotationProcessing>
+      <profile default="true" name="Default" enabled="true" />
       <profile name="Maven default annotation processors profile" enabled="true">
         <sourceOutputDir name="target/generated-sources/annotations" />
         <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
         <outputRelativeToContentRoot value="true" />
-        <module name="histroy" />
-        <module name="realtime" />
-        <module name="web" />
+        <module name="adapter-td-hb" />
+        <module name="analysis-histroy-hb" />
+        <module name="benchmarking-web-hb" />
+        <module name="failurestatistics-server" />
         <module name="benchmarking" />
+        <module name="benchmarking-histroy-hb" />
+        <module name="monitor-web" />
+        <module name="benchmarking-web" />
+        <module name="healthmanagement-histroy" />
+        <module name="healthmanagement-histroy-hb" />
+        <module name="consumer" />
+        <module name="analysis-web-hb" />
+        <module name="benchmarking-histroy" />
+        <module name="algorithm-web" />
+        <module name="common" />
       </profile>
     </annotationProcessing>
   </component>

+ 28 - 8
.idea/encodings.xml

@@ -1,13 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="Encoding">
-    <file url="file://$PROJECT_DIR$/histroy/src/main/java" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/histroy/src/main/resources" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/realtime/src/main/java" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/realtime/src/main/resources" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/web/benchmarking/src/main/java" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/web/benchmarking/src/main/resources" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/web/src/main/java" charset="UTF-8" />
-    <file url="file://$PROJECT_DIR$/web/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/common/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/common/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/analysis-histroy-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/analysis-histroy-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/benchmarking-histroy-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/benchmarking-histroy-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/benchmarking-histroy/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/benchmarking-histroy/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/healthmanagement-histroy-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/healthmanagement-histroy-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/healthmanagement-histroy/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/histroy/healthmanagement-histroy/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/realtime/failurestatistics-server/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/realtime/failurestatistics-server/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/adapter-td-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/adapter-td-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/algorithm-web/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/algorithm-web/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/analysis-web-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/analysis-web-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/benchmarking-web-hb/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/benchmarking-web-hb/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/benchmarking-web/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/benchmarking-web/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/consumer/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/consumer/src/main/resources" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/monitor-web/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/web/monitor-web/src/main/resources" charset="UTF-8" />
   </component>
 </project>

+ 5 - 0
.idea/misc.xml

@@ -1,5 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
+  <component name="EntryPointsManager">
+    <list size="1">
+      <item index="0" class="java.lang.String" itemvalue="org.apache.ibatis.annotations.Select" />
+    </list>
+  </component>
   <component name="ExternalStorageConfigurationManager" enabled="true" />
   <component name="MavenProjectsManager">
     <option name="originalFiles">

+ 124 - 0
.idea/uiDesigner.xml

@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
+    </group>
+  </component>
+</project>

+ 1 - 1
.idea/vcs.xml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="VcsDirectoryMappings">
-    <mapping directory="$PROJECT_DIR$/.." vcs="Git" />
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
   </component>
 </project>

+ 28 - 0
common/src/main/java/com/gyee/common/model/StringUtils.java

@@ -445,4 +445,32 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils
         String uuid = UUID.randomUUID().toString().trim().replaceAll("-", "");
         return uuid;
     }
+
+    /**
+     * 是否为空串
+     *
+     * @param obj
+     * @return
+     */
+    public static boolean empty(Object obj) {
+        if (obj == null)
+            return true;
+        String str;
+        if (obj instanceof String) {
+            str = (String) obj;
+        } else {
+            str = obj.toString();
+        }
+        return str.length() == 0;
+    }
+
+    /**
+     * 是否不为空串
+     *
+     * @param obj
+     * @return
+     */
+    public static boolean notEmp(Object obj) {
+        return !empty(obj);
+    }
 }

BIN
common/target/classes/com/gyee/common/model/StringUtils.class


BIN
histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/init/CacheContext.class


BIN
histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/service/benchmarking/BenchmarkingHistroyService.class


BIN
histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/service/specific/SpecificService.class


BIN
histroy/benchmarking-histroy-hb/target/classes/com/gyee/benchmarkinghistroy/util/realtimesource/MongoEdosUtil.class


BIN
histroy/benchmarking-histroy/target/classes/com/gyee/benchmarkinghistroy/init/CacheContext.class


BIN
histroy/benchmarking-histroy/target/classes/com/gyee/benchmarkinghistroy/service/BenchmarkingHistroyService.class


BIN
histroy/healthmanagement-histroy-hb/target/classes/com/gyee/healthmanagementhistroy/service/evaluate/EvaluateService.class


BIN
histroy/healthmanagement-histroy-hb/target/classes/com/gyee/healthmanagementhistroy/service/healthreport/HealthReportService.class


+ 89 - 0
realtime/failurestatistics-server/pom.xml

@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>realtime</artifactId>
+        <groupId>com.gyee</groupId>
+        <version>1.0-SNAPSHOT</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>failurestatistics-server</artifactId>
+
+
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-actuator</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <optional>true</optional>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-generator</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.freemarker</groupId>
+            <artifactId>freemarker</artifactId>
+            <version>2.3.28</version>
+        </dependency>
+        <!--mysql-connector-java-->
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.oracle</groupId>
+            <artifactId>ojdbc6</artifactId>
+            <version>11.2.0.3</version>
+        </dependency>
+        <dependency>
+            <groupId>com.gyee</groupId>
+            <artifactId>common</artifactId>
+            <version>${project.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+            <version>1.2.17</version>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-configuration-processor</artifactId>
+            <optional>true</optional>
+        </dependency>
+    </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>repackage</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+
+</project>

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/FailurestatisticsMain.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * @ClassName : FailurestatisticsMain
+ **/
+@SpringBootApplication
+@MapperScan("com.gyee.failurestatistics.mapper")
+public class FailurestatisticsMain {
+    public static void main(String[] args) {
+        SpringApplication.run(FailurestatisticsMain.class, args);
+    }
+}

+ 150 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/config/GeneratorCodeConfig.java

@@ -0,0 +1,150 @@
+package com.gyee.failurestatistics.config;
+
+
+import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.generator.AutoGenerator;
+import com.baomidou.mybatisplus.generator.config.*;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
+
+import java.util.Scanner;
+
+/**
+ *@ClassName GeneratorCodeConfig
+ *@Description 自动生成mybatisplus的相关代码
+ *@Author 谢生杰
+ *@Date 2020/9/25 18:26
+ *@Version 1.0
+ **/
+public class GeneratorCodeConfig {
+    public static String scanner(String tip) {
+        Scanner scanner = new Scanner(System.in);
+        StringBuilder help = new StringBuilder();
+        help.append("请输入" + tip + ":");
+        System.out.println(help.toString());
+        if (scanner.hasNext()) {
+            String ipt = scanner.next();
+            if (StringUtils.isNotEmpty(ipt)) {
+                return ipt;
+            }
+        }
+        throw new MybatisPlusException("请输入正确的" + tip + "!");
+    }
+
+    public static void main(String[] args) {
+        // 代码生成器
+        AutoGenerator mpg = new AutoGenerator();
+
+        // 全局配置
+        GlobalConfig gc = new GlobalConfig();
+        String projectPath = System.getProperty("user.dir");
+        gc.setOutputDir(projectPath + "/src/main/java");
+        gc.setAuthor("石林");
+        gc.setOpen(false);
+        //实体属性 Swagger2 注解
+        gc.setSwagger2(false);
+        mpg.setGlobalConfig(gc);
+
+        // 数据源配置
+        DataSourceConfig dsc = new DataSourceConfig();
+
+//        dsc.setUrl("jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true");
+//        dsc.setDriverName("com.mysql.jdbc.Driver");
+//        dsc.setUsername("root");
+//        dsc.setPassword("root");
+//        mpg.setDataSource(dsc);
+
+        dsc.setDriverName("oracle.jdbc.driver.OracleDriver");
+        dsc.setUsername("gdprod");
+        dsc.setPassword("gd123");
+        dsc.setUrl("jdbc:oracle:thin:@10.0.118.71:1521:gdsj");
+        mpg.setDataSource(dsc);
+
+//        dsc.setDriverName("com.cloudera.impala.jdbc41.Driver");
+//        dsc.setUrl("jdbc:impala://192.168.1.67:21050/gyee_test");
+//        mpg.setDataSource(dsc);
+
+
+
+        // 包配置
+        PackageConfig pc = new PackageConfig();
+//        pc.setModuleName(scanner("模块名"));
+        pc.setParent("com.gyee.failurestatistics");
+        pc.setEntity("model.auto");
+        pc.setMapper("mapper.auto");
+        pc.setService("service.auto");
+        pc.setServiceImpl("service.auto.impl");
+        pc.setController("controller.auto");
+        mpg.setPackageInfo(pc);
+
+        // 自定义配置
+//        InjectionConfig cfg = new InjectionConfig() {
+//            @Override
+//            public void initMap() {
+//                // to do nothing
+//            }
+//        };
+
+        // 如果模板引擎是 freemarker
+//        String templatePath = "/templates/mapper.xml.ftl";
+        // 如果模板引擎是 velocity
+        // String templatePath = "/templates/mapper.xml.vm";
+
+        // 自定义输出配置
+//        List<FileOutConfig> focList = new ArrayList<>();
+        // 自定义配置会被优先输出
+//        focList.add(new FileOutConfig(templatePath) {
+//            @Override
+//            public String outputFile(TableInfo tableInfo) {
+//                // 自定义输出文件名 , 如果你 Entity 设置了前后缀、此处注意 xml 的名称会跟着发生变化!!
+//                return projectPath + "/src/main/resources/mapper/" + pc.getModuleName()
+//                        + "/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML;
+//            }
+//        });
+        /*
+        cfg.setFileCreate(new IFileCreate() {
+            @Override
+            public boolean isCreate(ConfigBuilder configBuilder, FileType fileType, String filePath) {
+                // 判断自定义文件夹是否需要创建
+                checkDir("调用默认方法创建的目录");
+                return false;
+            }
+        });
+        */
+//        cfg.setFileOutConfigList(focList);
+//        mpg.setCfg(cfg);
+
+        // 配置模板
+        TemplateConfig templateConfig = new TemplateConfig();
+
+        // 配置自定义输出模板
+        //指定自定义模板路径,注意不要带上.ftl/.vm, 会根据使用的模板引擎自动识别
+        // templateConfig.setEntity("templates/entity2.java");
+        // templateConfig.setService();
+        // templateConfig.setController();
+
+        templateConfig.setXml(null);
+        mpg.setTemplate(templateConfig);
+
+        // 策略配置
+        StrategyConfig strategy = new StrategyConfig();
+        strategy.setNaming(NamingStrategy.underline_to_camel);
+        strategy.setColumnNaming(NamingStrategy.underline_to_camel);
+        strategy.setSuperEntityClass("com.baomidou.mybatisplus.extension.activerecord.Model");
+        strategy.setEntityLombokModel(true);
+        strategy.setRestControllerStyle(true);
+
+        strategy.setEntityLombokModel(true);
+        // 公共父类
+//        strategy.setSuperControllerClass("com.baomidou.ant.common.BaseController");
+        // 写于父类中的公共字段
+//        strategy.setSuperEntityColumns("id");
+        strategy.setInclude(scanner("表名,多个英文逗号分割").split(","));
+        strategy.setControllerMappingHyphenStyle(true);
+        strategy.setTablePrefix(pc.getModuleName() + "_");
+        mpg.setStrategy(strategy);
+        mpg.setTemplateEngine(new FreemarkerTemplateEngine());
+        mpg.execute();
+    }
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EarlywarningmainController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//earlywarningmain")
+public class EarlywarningmainController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EarlywarningsubController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//earlywarningsub")
+public class EarlywarningsubController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EquipmentdayinfoController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-09-29
+ */
+@RestController
+@RequestMapping("//equipmentdayinfo")
+public class EquipmentdayinfoController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/EquipmentmodelController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-11
+ */
+@RestController
+@RequestMapping("//equipmentmodel")
+public class EquipmentmodelController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/FailurestatisticsmainController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//failurestatisticsmain")
+public class FailurestatisticsmainController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/FailurestatisticssubController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//failurestatisticssub")
+public class FailurestatisticssubController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartpowerstatticsmainController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//partpowerstatticsmain")
+public class PartpowerstatticsmainController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartpowerstatticssubController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//partpowerstatticssub")
+public class PartpowerstatticssubController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartstatisticsmainController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//partstatisticsmain")
+public class PartstatisticsmainController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/PartstatisticssubController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//partstatisticssub")
+public class PartstatisticssubController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/ParttemperaturemainController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//parttemperaturemain")
+public class ParttemperaturemainController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/ParttemperaturesubController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//parttemperaturesub")
+public class ParttemperaturesubController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindpowerstationtestingpointController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//windpowerstationtestingpoint")
+public class WindpowerstationtestingpointController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-09-29
+ */
+@RestController
+@RequestMapping("//windturbinetestingpoint")
+public class WindturbinetestingpointController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointaiController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//windturbinetestingpointai")
+public class WindturbinetestingpointaiController {
+
+}

+ 20 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/controller/auto/WindturbinetestingpointdiController.java

@@ -0,0 +1,20 @@
+package com.gyee.failurestatistics.controller.auto;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@RestController
+@RequestMapping("//windturbinetestingpointdi")
+public class WindturbinetestingpointdiController {
+
+}

+ 167 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/CacheContext.java

@@ -0,0 +1,167 @@
+package com.gyee.failurestatistics.init;
+
+
+import com.gyee.failurestatistics.model.auto.*;
+import com.gyee.failurestatistics.service.auto.*;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.CommandLineRunner;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @ClassName : CacheContext
+ * @Author : xieshengjie
+ * @Date: 2021/9/29 17:33
+ * @Description : 初始化
+ */
+@Component
+public class CacheContext implements CommandLineRunner {
+
+
+    private static final Logger log = LoggerFactory.getLogger(CacheContext.class);
+
+    @Autowired
+    private IWindturbineService windturbineService;
+    @Autowired
+    private IWindpowerstationService windpowerstationService;
+    @Autowired
+    private IProjectService projectService;
+    @Autowired
+    private ILineService lineService;
+    @Autowired
+    private IEquipmentmodelService equipmentmodelService;
+    @Autowired
+    private IWindturbinetestingpointaiService windturbineTestingAiService;
+    @Autowired
+    private IWindpowerstationtestingpointService windpowerstationtestingpointService;
+
+    public static Map<String, Windturbine> wtmap = new HashMap<String, Windturbine>(); // 风电机MAP
+
+
+    public static Map<String, Windpowerstation> wpmap = new HashMap<>();
+
+    public static List<Windpowerstation> wpls = new ArrayList<Windpowerstation>(); // 风电场LIST集合
+
+    public static List<Windturbine> wtls = new ArrayList<Windturbine>(); // 风电机LIST集合
+
+    public static Map<String, Map<String, Windturbinetestingpointai>> wtpAimap = new HashMap<>();// 风电机测点AI表
+
+    public static Map<String,Map<String, Windpowerstationtestingpoint>> wppointmap =new HashMap<>();
+
+    public static List<Project> projects = new ArrayList<>();
+
+    public static List<Line> lines = new ArrayList<>();
+
+    public static Map<String, List<Windturbine>> wtsmap = new HashMap<String, List<Windturbine>>(); // 风电场MAP风电机LIST集合
+
+    public static List<Equipmentmodel> mlls = new ArrayList<Equipmentmodel>();// 风电机模型LIST集合
+    public static Map<String, Equipmentmodel> mlmap = new HashMap<String, Equipmentmodel>();// 风电机模型
+    @Override
+    public void run(String... args) throws Exception {
+
+        log.info("-------------------------------缓存开始--------------------------------------");
+
+        wpls = windpowerstationService.list();
+        wpls.stream().filter(i->i.getId().endsWith("FDC")).forEach(i->{
+            wpmap.put(i.getId(),i);
+        });
+
+        projects = projectService.list();
+
+        lines = lineService.list();
+
+        wtls = windturbineService.list();
+
+        mlls = equipmentmodelService.list();
+        if (!mlls.isEmpty()) {
+            for (Equipmentmodel model : mlls) {
+                mlmap.put(model.getId(), model);
+            }
+        }
+
+
+        if (!wtls.isEmpty()) {
+            List<Windturbine> list = null;
+            for (Windturbine wt : wtls) {
+                wtmap.put(wt.getId(), wt);
+                if (wtsmap.containsKey(wt.getWindpowerstationid())) {
+                    list = wtsmap.get(wt.getWindpowerstationid());
+                    list.add(wt);
+                } else {
+                    list = new ArrayList<Windturbine>();
+                    list.add(wt);
+                    wtsmap.put(wt.getWindpowerstationid(), list);
+                }
+            }
+        }
+        List<Windturbinetestingpointai> WindturbinetestingpointaiList = windturbineTestingAiService.list();
+        Map<String, Windturbinetestingpointai> map = null;
+
+        if(WindturbinetestingpointaiList != null && !WindturbinetestingpointaiList.isEmpty()){
+            for(Windturbinetestingpointai mp : WindturbinetestingpointaiList){
+                if(wtpAimap.containsKey(mp.getWindturbineid())){
+                    map = wtpAimap.get(mp.getWindturbineid());
+                    map.put(mp.getUniformcode(), mp);
+                }else{
+                    map = new HashMap<String, Windturbinetestingpointai>();
+                    map.put(mp.getUniformcode(), mp);
+                    wtpAimap.put(mp.getWindturbineid(), map);
+                }
+            }
+        }
+
+
+        List<Windpowerstationtestingpoint> wplist = windpowerstationtestingpointService.list();
+        for (Windpowerstationtestingpoint Windpowerstationtestingpoint : wplist) {
+            if (wppointmap.containsKey(Windpowerstationtestingpoint.getWindpowerstationid())){
+                wppointmap.get(Windpowerstationtestingpoint.getWindpowerstationid()).put(Windpowerstationtestingpoint.getUniformcode(),Windpowerstationtestingpoint);
+            }else{
+                Map<String,Windpowerstationtestingpoint> wpmap = new HashMap<>();
+                wpmap.put(Windpowerstationtestingpoint.getUniformcode(),Windpowerstationtestingpoint);
+                wppointmap.put(Windpowerstationtestingpoint.getWindpowerstationid(),wpmap);
+            }
+        }
+
+        log.info("-------------------------------缓存结束--------------------------------------");
+    }
+//  取redis
+//    private Logger logger = LoggerFactory.getLogger(CacheContext.class);
+//    @Resource
+//    private IWindturbinetestingpointService windturbinetestingpointService;
+//    @Resource
+//    private RedisService redisService;
+//
+//    public static Map<String, Map<String, Windturbinetestingpoint>> wtpAimap = new HashMap<>();// 风电机测点表
+//
+//    @Override
+//    public void run(String... args) {
+//        logger.info("--------------------------------缓存开始--------------------------------");
+//        if (redisService.hasKey("WT")){
+//            String wt = redisService.get("WT");
+//            wtpAimap = (Map<String, Map<String, Windturbinetestingpoint>>) JSONUtils.parse(wt);
+//        }else {
+//            List<Windturbinetestingpoint> windturbinetestingpointList = windturbinetestingpointService.list();
+//            Map<String, Windturbinetestingpoint> map = null;
+//
+//            if(windturbinetestingpointList != null && !windturbinetestingpointList.isEmpty()){
+//                for(Windturbinetestingpoint mp : windturbinetestingpointList){
+//                    if(wtpAimap.containsKey(mp.getWindturbineid())){
+//                        map = wtpAimap.get(mp.getWindturbineid());
+//                        map.put(mp.getUniformcode(), mp);
+//                    }else{
+//                        map = new HashMap<String, Windturbinetestingpoint>();
+//                        map.put(mp.getUniformcode(), mp);
+//                        wtpAimap.put(mp.getWindturbineid(), map);
+//                    }
+//                }
+//            }
+//        }
+//        logger.info("--------------------------------缓存结束--------------------------------");
+//    }
+}

+ 211 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/Constant.java

@@ -0,0 +1,211 @@
+package com.gyee.failurestatistics.init;
+
+/**
+ * 
+ * 
+ * 项目名称:nxfd 类名称:Constant 类描述: 创建人:石林 创建时间:2014-3-4 上午10:07:03 修改人:shilinno1
+ * 修改时间:2014-3-4 上午10:07:03 修改备注:
+ * 
+ * @version
+ * 
+ */
+public class Constant {
+    /**
+     * EdnaAPI 时间间隔
+     */
+    public static final Long EDNAAPI_PRIED = 30l;
+    public static final Long TOP_PRIED = 1800l;
+
+    public static final String TPOINT_ALL_RFDL = "RFDL"; // 汇总日发电量
+    public static final String TPOINT_ALL_YFDL = "YFDL"; // 汇总月发电量
+    public static final String TPOINT_ALL_NFDL = "NFDL"; // 汇总年发电量
+    public static final String TPOINT_ALL_SJGL = "RPJGL"; // 汇总日实际功率
+    public static final String TPOINT_ALL_PJFS = "RPJFS"; // 汇总日平均风速
+
+    public static final String TPOINT_WP_FGLYC = "FCFGCDQ0001,FCFGCDQ0003,FCFGCDQ0005,FCFGCDQ0007,FCFGCDQ0009,FCFGCDQ0011,FCFGCDQ0013,FCFGCDQ0015";
+    public static final String TPOINT_WP_FGLYC2 = "FCFGCDQ0002,FCFGCDQ0004,FCFGCDQ0006,FCFGCDQ0008,FCFGCDQ0010,FCFGCDQ0012,FCFGCDQ0014,FCFGCDQ0016";
+    public static final String TPOINT_WP_FGLYC24 = "FCFGCDQ0004,FCFGCDQ0008,FCFGCDQ0012,FCFGCDQ0016";
+    public static final String ycPoints2 = "FCFGCDQ0001,FCFGCDQ0002,FCFGCDQ0003,FCFGCDQ0004,FCFGCDQ0005,FCFGCDQ0006,FCFGCDQ0007,FCFGCDQ0008,FCFGCDQ0009,FCFGCDQ0010,FCFGCDQ0011,FCFGCDQ0012,FCFGCDQ0013,FCFGCDQ0014,FCFGCDQ0015,FCFGCDQ0016";
+    public static final String TPOINT_WP_YCGL = "RPJGL"; // 风场预测功率短期次天00:00:00
+    public static final String TPOINT_WP_PJFS = "RPJFS"; // 电场日平均风速
+
+    public static final String TPOINT_WP_SWDL = "SWDLB"; // 风场上网电量
+    public static final String TPOINT_WP_GWDL = "GWGWB"; // 风场购网电量
+    public static final String TPOINT_WP_NWGWDL = "NWGWB"; // 农网购网电量
+    /**
+     * 空气温度
+     */
+    public static final String TPOINT_WP_FCCFTWD = "FCCFTWD";// 温度
+
+    public static int WAITING_STATUS = 0;// 待机
+    public static int RUN_STATUS = 1;// 并网
+    public static int FAULT_STATUS = 2;// 故障停机
+    public static int INTERRUPTION_STATUS = 3;// 通讯中断
+    public static int MAINTENANCE_STATUS = 4;// 维护停机
+    public static String FAULT_NAME = "故障";
+    public static String MAINTENANCE_NAME = "维护";
+    public static String WAITING_NAME = "待机";
+    public static String RUN_NAME = "运行";
+    public static String INTERRUPTION_NAME = "离线";
+
+    public static final String TPOINT_WP_SJGL = "SSZGL"; // 日实际功率
+    public static final String TPOINT_WP_SFDL = "SFDL";// 总发电量(升压站)
+    public static final String TPOINT_WP_SSFS = "SSFS"; // 实时平均风速
+    public static final String TPOINT_WP_RFDL = "RFDLB"; // 日发电量
+    public static final String TPOINT_WP_YFDL = "YFDLB"; // 月发电量
+    public static final String TPOINT_WP_NFDL = "NFDLB"; // 年发电量
+
+    public static final String TPOINT_WT_RFDL = "RFDL";// 风机日发电量与SCADA日风场发电量
+    public static final String TPOINT_WT_DCRFDL = "AI064";// 导出单机发电量
+    public static final String TPOINT_WT_YFDL = "YFDL";// 风机月发电量
+    public static final String TPOINT_WT_NFDL = "NFDL";// 风机年发电量
+
+    public static final String TPOINT_WT_RFDL2 = "RFDLREAD";// 逆变器日发电量
+
+    public static final String TPOINT_WT_XDTS = "XDTS";// 限电台数
+    public static final String TPOINT_WT_YXTS = "YXTS";// 运行台数
+    public static final String TPOINT_WT_DJTS = "DJTS"; // 待机台数
+    public static final String TPOINT_WT_WHTJ = "WHTJ";// 维护台数
+    public static final String TPOINT_WT_GZTJ = "GZTJ";// 故障台数
+    public static final String TPOINT_WT_TXZD = "TXZD";// 离线台数
+
+    public static final String TPOINT_WT_U1YZDL = "AI061";// U1项绕组电流
+    public static final String TPOINT_WT_U2YZDL = "AI062";// U2项绕组电流
+    public static final String TPOINT_WT_U3YZDL = "AI063";// U3项绕组电流
+    public static final String TPOINT_WT_U1YZDY = "AI058";// U1项绕组电压
+    public static final String TPOINT_WT_U2YZDY = "AI059";// U2项绕组电压
+    public static final String TPOINT_WT_U3YZDY = "AI060";// U3项绕组电压
+    public static final String TPOINT_WT_FDJZS = "AI128";// 发电机转速
+    public static final String TPOINT_WT_U1YZWD = "AI045";// U1绕组温度
+    public static final String TPOINT_WT_V1YZWD = "AI047";// V1绕组温度
+    public static final String TPOINT_WT_W1YZWD = "AI049";// W1绕组温度
+    public static final String TPOINT_WT_YLZS = "AI012";// 叶轮转速
+    public static final String TPOINT_WT_FJJJJ = "AI085";// 风机浆距角
+	public static final String TPOINT_WT_DWZWD = "AI038";// 齿轮箱轴1温度
+    public static final String TPOINT_WT_GWZWD = "AI039";// 齿轮箱轴2温度
+    public static final String TPOINT_WT_CLXWD = "AI041";// 齿轮箱油温
+    public static final String TPOINT_WT_BJJD1 = "AI076";// 变桨角度1
+    public static final String TPOINT_WT_PHWZ = "AI034";// 偏航位置
+    public static final String TPOINT_WT_PJFS = "RPJFS"; // 日平均风速
+    public static final String TPOINT_WT_FJGL = "AI130";// 风机功率
+    public static final String TPOINT_WT_PJGL = "RPJGL";// 风机平均功率
+    public static final String TPOINT_WT_GLYS = "AI067";// 功率因数
+    public static final String TPOINT_WT_JCWWD = "AI056";// 机舱外温度
+    public static final String TPOINT_WT_JCWD = "AI057";// 机舱温度
+    public static final String TPOINT_WT_TDGWD = "AI069";// 塔底柜温度
+    public static final String TPOINT_WT_JCGWD = "AI069";// 机舱柜温度
+    public static final String TPOINT_WT_FJFX = "AI008";// 风机风向
+    public static final String TPOINT_WT_DFJD = "AI036";// 对风角度
+    public static final String TPOINT_WT_FJPL = "AI068";// 风机频率
+    public static final String TPOINT_WT_WGGL = "AI131";// 无功功率
+    public static final String TPOINT_WT_FJKYL = "AI001";// 风机可用率
+    public static final String TPOINT_WT_FJZSXZ = "AI051";// 风机转速限值
+    public static final String TPOINT_WT_FJSSFS = "AI022";// 风机实时风速
+
+    public static final String TPOINT_WT_FDJZCAWD = "AI052";// 发电机轴承A温度
+    public static final String TPOINT_WT_FDJZCBWD = "AI053";// 发电机轴承B温度
+
+    public static final String TPOINT_WT_FJGLKZXZ = "AI426";// UP97 取值 功率控制限值
+    public static final String TPOINT_WT_LLGL = "BZGL";// 风机理论功率
+    public static final String TPOINT_WT_YFGL = "ZSGL";// 风机应发功率
+    public static final String TPOINT_WT_RFDLBZ = "RFDLZS";// 日理论发电量
+
+    // public static final String TPOINT_WT_RFDLBZ = "RFDLLL";//日理论发电量
+
+    public static final String TPOINT_WT_RFDLZS = "RFDLZS";// 日应发电量
+
+    public static final String TPOINT_WT_NBQJLDY = "AIG061";// 逆变器交流电压
+    public static final String TPOINT_WT_NBQJLDL = "AIG060";// 逆变器交流电流
+    public static final String TPOINT_WT_NBQZLDY = "AIG081";// 逆变器直流电压
+    public static final String TPOINT_WT_NBQZLDL = "AIG078";// 逆变器直流电流
+
+    public static final String TPOINT_WT_NBQPL = "AIG073";// 逆变器频率
+    public static final String TPOINT_WT_NBQGLYSSZ = "AIG069";// 功率因数设置
+    public static final String TPOINT_WT_NBQGLYSSZ2 = "AIG104";// 功率因数设置
+    public static final String TPOINT_WT_NBQZFDL = "AIG064";// 逆变相总发电量
+    public static final String TPOINT_WT_NBQKQWD = "AIG071";// 逆变器空气温度
+    public static final String TPOINT_WT_NBQXL = "AIG072";// 逆变器效率
+
+    public static final String RFDLD = "RFDLD"; // 日理论发电量
+    public static final String RFDLE = "RFDLE"; // 日应发发电量
+    public static final String FJZT = "FJZT"; // 风场状态
+
+    public static final String ZBZGL = "ZBZGL";// 理论功率
+    public static final String ZSGLZZSGL = "ZZSGL";// 应发功率
+
+    public static final String RLZSSDL = "RLZSSDL"; // 日场内受累检修
+    public static final String RSZSSDL = "RSZSSDL"; // 日场内受累故障
+    public static final String RWZSSDL = "RWZSSDL"; // 日场外受累电网
+    public static final String RTZSSDL = "RTZSSDL"; // 日场外受累天气
+
+    public static final String YLZSSDL = "YLZSSDL"; // 月场内受累检修
+    public static final String YSZSSDL = "YSZSSDL"; // 月场内受累故障
+    public static final String YWZSSDL = "YWZSSDL"; // 月场外受累电网
+    public static final String YTZSSDL = "YTZSSDL"; // 月场外受累天气
+
+    public static final String NLZSSDL = "NLZSSDL"; // 年场内受累检修
+    public static final String NSZSSDL = "NSZSSDL"; // 年场内受累故障
+    public static final String NWZSSDL = "NWZSSDL"; // 年场外受累电网
+    public static final String NTZSSDL = "NTZSSDL"; // 年场外受累天气
+
+    public static final String RQFSSDL = "RQFSSDL"; // 日欠发损失电量
+    public static final String RGZSSDL = "RGZSSDL"; // 日故障损失电量
+    public static final String RJXSSDL = "RJXSSDL"; // 日检修损失电量
+    public static final String RXDSSDL = "RXDSSDL"; // 日限电损失电量
+
+    public static final String YQFSSDL = "YQFSSDL"; // 月欠发损失电量
+    public static final String YGZSSDL = "YGZSSDL"; // 月故障损失电量
+    public static final String YJXSSDL = "YJXSSDL"; // 月检修损失电量
+    public static final String YXDSSDL = "YXDSSDL"; // 月限电损失电量
+
+    public static final String NQFSSDL = "NQFSSDL"; // 年欠发损失电量
+    public static final String NGZSSDL = "NGZSSDL"; // 年故障损失电量
+    public static final String NJXSSDL = "NJXSSDL"; // 年检修损失电量
+    public static final String NXDSSDL = "NXDSSDL"; // 年限电损失电量
+
+    public static final String FCCFTFS10 = "FCCFTFS10";// 测风塔10米风速
+    public static final String FCCFTFS30 = "FCCFTFS30";// 测风塔30米风速
+    public static final String FCCFTFS50 = "FCCFTFS50";// 测风塔50米风速
+    public static final String FCCFTFS60 = "FCCFTFS60";// 测风塔60米风速
+    public static final String FCCFTFS70 = "FCCFTFS70";// 测风塔70米风速
+    public static final String FCCFTFS80 = "FCCFTFS80";// 测风塔80米风速
+
+    public static final String FCCFTFX10 = "FCCFTFX10";// 测风塔10米风向
+    public static final String FCCFTFX30 = "FCCFTFX30";// 测风塔30米风向
+    public static final String FCCFTFX50 = "FCCFTFX50";// 测风塔50米风向
+    public static final String FCCFTFX60 = "FCCFTFX60";// 测风塔60米风向
+    public static final String FCCFTFX70 = "FCCFTFX70";// 测风塔70米风向
+    public static final String FCCFTFX80 = "FCCFTFX80";// 测风塔80米风向
+
+    public static final String FCCFTWD = "FCCFTWD";// 测风塔温度
+    public static final String FCCFTSD = "FCCFTSD";// 测风塔湿度
+    public static final String FCCFTYQ = "FCCFTYQ";// 测风塔压强
+    
+    public static final String FJJKJL = "JKJL001";//风机健康状态值
+    public static final String CLXJKJL = "JKJL002";//齿轮箱健康状态值
+    public static final String FDJJKJL = "JKJL003";//发电机健康状态值
+    public static final String BJJKJL = "JKJL004";//变浆健康值
+    public static final String ZKJKJL = "JKJL005";//主控健康状态值
+    
+    public static final String FJLHSL = "JKSLLH001";//风机良好健康状态数量
+    public static final String FJZCSL = "JKSLHG001";//风机正常健康状态数量
+    public static final String FJZYSL = "JKSLZY001";//风机注意健康状态数量
+    public static final String FJYZSL = "JKSLYZ001";//风机严重健康状态数量
+    
+    public static final String YCFJJKZT4HOUR = "JKYC001";//风机健康状态未来4小时
+    public static final String YCFJJKZT1DAY = "JKYC006";//风机健康状态未来1天
+    public static final String YCFJJKZT3DAY = "JKYC011";//风机健康状态未来3天
+    public static final String YCFJJKZT7DAY = "JKYC016";//风机健康状态未来7天
+    public static final String YCFJJKZT1MONTH = "JKYC021";//风机健康状态未来1个月
+    
+    public static final String FJJKZZ = "JKZT100";//风机健康总状态得分
+    
+    public static final String FJJKZT = "JKZT001";//风机健康状态
+    public static final String CLXJKZT = "JKZT002";//齿轮箱健康状态
+    public static final String FDJJKZT = "JKZT003";//发电机健康状态
+    public static final String BJJKZT = "JKZT004";//变浆健康
+    public static final String ZKJKZT = "JKZT005";//主控健康状态
+    
+    
+    
+}

+ 26 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/init/InitialConfig.java

@@ -0,0 +1,26 @@
+package com.gyee.failurestatistics.init;
+
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+/**
+ * 读取项目相关配置
+ * 
+ * @author gyee
+ */
+@Component
+@ConfigurationProperties(prefix = "edos")
+public class InitialConfig
+{
+
+    /**数据适配器网址 **/
+    private static String baseurl;
+
+    public static String getBaseurl() {
+        return baseurl;
+    }
+
+    public  void setBaseurl(String baseurl) {
+        InitialConfig.baseurl = baseurl;
+    }
+}

File diff suppressed because it is too large
+ 44 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EarlywarningmainMapper.java


+ 30 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EarlywarningsubMapper.java

@@ -0,0 +1,30 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Earlywarningsub;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Earlywarningsub;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface EarlywarningsubMapper extends BaseMapper<Earlywarningsub> {
+
+
+    @Delete(" delete from Earlywarningsub where recodedate=#{recodedate} ")
+    public int deleteEarlywarningsub(@Param(value = "recodedate") Date recodedate);
+
+
+    @Insert("  INSERT INTO Earlywarningsub(id,tid,recodedate,wpid,wpname,wtid,wtname,name,eventid) VALUES(#{id,jdbcType=VARCHAR},#{tid,jdbcType=VARCHAR},#{recodedate},#{wpid,jdbcType=VARCHAR},#{wpname,jdbcType=VARCHAR},#{wtid,jdbcType=VARCHAR},#{wtname,jdbcType=VARCHAR},#{name,jdbcType=VARCHAR},#{eventid,jdbcType=VARCHAR})  ")
+    public int insertEarlywarningsub(Earlywarningsub earlywarningsub);
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/EquipmentmodelMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Equipmentmodel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-11
+ */
+public interface EquipmentmodelMapper extends BaseMapper<Equipmentmodel> {
+
+}

File diff suppressed because it is too large
+ 44 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/FailurestatisticsmainMapper.java


+ 29 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/FailurestatisticssubMapper.java

@@ -0,0 +1,29 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Failurestatisticsmain;
+import com.gyee.failurestatistics.model.auto.Failurestatisticssub;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface FailurestatisticssubMapper extends BaseMapper<Failurestatisticssub> {
+
+
+    @Delete(" delete from Failurestatisticssub where recodedate=#{recodedate} ")
+    public int deleteFailurestatisticssub(@Param(value = "recodedate") Date recodedate);
+
+
+    @Insert(" INSERT INTO Failurestatisticssub(id,tid,recodedate,wpid,wpname,wtid,wtname,name,eventid) VALUES(#{id,jdbcType=VARCHAR},#{tid,jdbcType=VARCHAR},#{recodedate},#{wpid,jdbcType=VARCHAR},#{wpname,jdbcType=VARCHAR},#{wtid,jdbcType=VARCHAR},#{wtname,jdbcType=VARCHAR},#{name,jdbcType=VARCHAR},#{eventid,jdbcType=VARCHAR}) ")
+    public int insertFailurestatisticssub(Failurestatisticssub failurestatisticssub);
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/LineMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Line;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+public interface LineMapper extends BaseMapper<Line> {
+
+}

+ 30 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartpowerstatticsmainMapper.java

@@ -0,0 +1,30 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Partpowerstatticsmain;
+import com.gyee.failurestatistics.model.auto.Partpowerstatticsmain;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface PartpowerstatticsmainMapper extends BaseMapper<Partpowerstatticsmain> {
+
+
+    @Delete(" delete from Partpowerstatticsmain where recodedate=#{recodedate} ")
+    public int deletePartpowerstatticsmain(@Param(value = "recodedate") Date recodedate);
+
+
+    @Insert("  INSERT INTO Partpowerstatticsmain(id,recodedate,wpid,wpname,wtid,wtname,model) VALUES(#{id,jdbcType=VARCHAR},#{recodedate},#{wpid,jdbcType=VARCHAR},#{wpname,jdbcType=VARCHAR},#{wtid,jdbcType=VARCHAR},#{wtname,jdbcType=VARCHAR},#{model,jdbcType=VARCHAR}) ")
+    public int insertPartpowerstatticsmain(Partpowerstatticsmain partpowerstatticsmain);
+
+}

+ 28 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartpowerstatticssubMapper.java

@@ -0,0 +1,28 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Partpowerstatticssub;
+import com.gyee.failurestatistics.model.auto.Partpowerstatticssub;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface PartpowerstatticssubMapper extends BaseMapper<Partpowerstatticssub> {
+
+    @Delete(" delete from Partpowerstatticssub where recodedate=#{recodedate} ")
+    public int deletePartpowerstatticssub(@Param(value = "recodedate") Date recodedate);
+
+
+    @Insert("  INSERT INTO Partpowerstatticssub(id,tid,recodedate,partid,name,datavalue,power,earlywarningvalue,criticalvalue) VALUES(#{id,jdbcType=VARCHAR},#{tid,jdbcType=VARCHAR},#{recodedate},#{partid,jdbcType=VARCHAR},#{name,jdbcType=VARCHAR},#{datavalue,jdbcType=DECIMAL},#{power,jdbcType=VARCHAR},#{earlywarningvalue,jdbcType=DECIMAL},#{criticalvalue,jdbcType=DECIMAL})")
+    public int insertPartpowerstatticssub(Partpowerstatticssub partpowerstatticssub);
+}

File diff suppressed because it is too large
+ 30 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartstatisticsmainMapper.java


File diff suppressed because it is too large
+ 28 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/PartstatisticssubMapper.java


+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ParttemperaturemainMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Parttemperaturemain;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface ParttemperaturemainMapper extends BaseMapper<Parttemperaturemain> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ParttemperaturesubMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Parttemperaturesub;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface ParttemperaturesubMapper extends BaseMapper<Parttemperaturesub> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/ProjectMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Project;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+public interface ProjectMapper extends BaseMapper<Project> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/Windpowerinfoday3Mapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Windpowerinfoday3;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+public interface Windpowerinfoday3Mapper extends BaseMapper<Windpowerinfoday3> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerinfodayMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Windpowerinfoday;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+public interface WindpowerinfodayMapper extends BaseMapper<Windpowerinfoday> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerstationMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Windpowerstation;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-01
+ */
+public interface WindpowerstationMapper extends BaseMapper<Windpowerstation> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindpowerstationtestingpointMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Windpowerstationtestingpoint;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface WindpowerstationtestingpointMapper extends BaseMapper<Windpowerstationtestingpoint> {
+
+}

+ 17 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbineMapper.java

@@ -0,0 +1,17 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.gyee.failurestatistics.model.auto.Windturbine;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-05-25
+ */
+public interface WindturbineMapper extends BaseMapper<Windturbine> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbinetestingpointaiMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Windturbinetestingpointai;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface WindturbinetestingpointaiMapper extends BaseMapper<Windturbinetestingpointai> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/mapper/auto/WindturbinetestingpointdiMapper.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.mapper.auto;
+
+import com.gyee.failurestatistics.model.auto.Windturbinetestingpointdi;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface WindturbinetestingpointdiMapper extends BaseMapper<Windturbinetestingpointdi> {
+
+}

+ 290 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Earlywarningmain.java

@@ -0,0 +1,290 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("EARLYWARNINGMAIN")
+public class Earlywarningmain extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("DAY3TOP1")
+    private Integer day3top1;
+
+    @TableField("DAY3TOP2")
+    private Integer day3top2;
+
+    @TableField("DAY3TOP3")
+    private Integer day3top3;
+
+    @TableField("DAY7TOP1")
+    private Integer day7top1;
+
+    @TableField("DAY7TOP2")
+    private Integer day7top2;
+
+    @TableField("DAY7TOP3")
+    private Integer day7top3;
+
+    @TableField("DAY15TOP1")
+    private Integer day15top1;
+
+    @TableField("DAY15TOP2")
+    private Integer day15top2;
+
+    @TableField("DAY15TOP3")
+    private Integer day15top3;
+
+    @TableField("MONTH1TOP1")
+    private Integer month1top1;
+
+    @TableField("MONTH1TOP2")
+    private Integer month1top2;
+
+    @TableField("MONTH1TOP3")
+    private Integer month1top3;
+
+    @TableField("DAY3TOP1NAME")
+    private String day3top1name;
+
+    @TableField("DAY3TOP2NAME")
+    private String day3top2name;
+
+    @TableField("DAY3TOP3NAME")
+    private String day3top3name;
+
+    @TableField("DAY7TOP1NAME")
+    private String day7top1name;
+
+    @TableField("DAY7TOP2NAME")
+    private String day7top2name;
+
+    @TableField("DAY7TOP3NAME")
+    private String day7top3name;
+
+    @TableField("DAY15TOP1NAME")
+    private String day15top1name;
+
+    @TableField("DAY15TOP2NAME")
+    private String day15top2name;
+
+    @TableField("DAY15TOP3NAME")
+    private String day15top3name;
+
+    @TableField("MONTH1TOP1NAME")
+    private String month1top1name;
+
+    @TableField("MONTH1TOP2NAME")
+    private String month1top2name;
+
+    @TableField("MONTH1TOP3NAME")
+    private String month1top3name;
+
+    @TableField("MONTH1TOPNUM")
+    private Integer month1topnum;
+
+    @TableField("DAY7TOPNUM")
+    private Integer day7topnum;
+
+    @TableField("DAY15TOPNUM")
+    private Integer day15topnum;
+
+    @TableField("DAY3TOPNUM")
+    private Integer day3topnum;
+
+    @TableField("SYNTHESISTOPNUM")
+    private Integer synthesistopnum;
+
+    @TableField("DAY1TOP1")
+    private Integer day1top1;
+
+    @TableField("DAY1TOP2")
+    private Integer day1top2;
+
+    @TableField("DAY1TOP3")
+    private Integer day1top3;
+
+    @TableField("DAY1TOP1NAME")
+    private String day1top1name;
+
+    @TableField("DAY1TOP2NAME")
+    private String day1top2name;
+
+    @TableField("DAY1TOP3NAME")
+    private String day1top3name;
+
+    @TableField("DAY1TOPNUM")
+    private Integer day1topnum;
+
+    private String day3top1Id;
+    private String day3top2Id;
+    private String day3top3Id;
+    private String day7top1Id;
+    private String day7top2Id;
+    private String day7top3Id;
+    private String day15top1Id;
+    private String day15top2Id;
+    private String day15top3Id;
+    private String month1top1Id;
+    private String month1top2Id;
+    private String month1top3Id;
+
+    private String day1top1Id;
+    private String day1top2Id;
+    private String day1top3Id;
+
+    public String getDay3top1Id() {
+        return day3top1Id;
+    }
+
+    public void setDay3top1Id(String day3top1Id) {
+        this.day3top1Id = day3top1Id;
+    }
+
+    public String getDay3top2Id() {
+        return day3top2Id;
+    }
+
+    public void setDay3top2Id(String day3top2Id) {
+        this.day3top2Id = day3top2Id;
+    }
+
+    public String getDay3top3Id() {
+        return day3top3Id;
+    }
+
+    public void setDay3top3Id(String day3top3Id) {
+        this.day3top3Id = day3top3Id;
+    }
+
+    public String getDay7top1Id() {
+        return day7top1Id;
+    }
+
+    public void setDay7top1Id(String day7top1Id) {
+        this.day7top1Id = day7top1Id;
+    }
+
+    public String getDay7top2Id() {
+        return day7top2Id;
+    }
+
+    public void setDay7top2Id(String day7top2Id) {
+        this.day7top2Id = day7top2Id;
+    }
+
+    public String getDay7top3Id() {
+        return day7top3Id;
+    }
+
+    public void setDay7top3Id(String day7top3Id) {
+        this.day7top3Id = day7top3Id;
+    }
+
+    public String getDay15top1Id() {
+        return day15top1Id;
+    }
+
+    public void setDay15top1Id(String day15top1Id) {
+        this.day15top1Id = day15top1Id;
+    }
+
+    public String getDay15top2Id() {
+        return day15top2Id;
+    }
+
+    public void setDay15top2Id(String day15top2Id) {
+        this.day15top2Id = day15top2Id;
+    }
+
+    public String getDay15top3Id() {
+        return day15top3Id;
+    }
+
+    public void setDay15top3Id(String day15top3Id) {
+        this.day15top3Id = day15top3Id;
+    }
+
+    public String getMonth1top1Id() {
+        return month1top1Id;
+    }
+
+    public void setMonth1top1Id(String month1top1Id) {
+        this.month1top1Id = month1top1Id;
+    }
+
+    public String getMonth1top2Id() {
+        return month1top2Id;
+    }
+
+    public void setMonth1top2Id(String month1top2Id) {
+        this.month1top2Id = month1top2Id;
+    }
+
+    public String getMonth1top3Id() {
+        return month1top3Id;
+    }
+
+    public void setMonth1top3Id(String month1top3Id) {
+        this.month1top3Id = month1top3Id;
+    }
+
+    public String getDay1top1Id() {
+        return day1top1Id;
+    }
+
+    public void setDay1top1Id(String day1top1Id) {
+        this.day1top1Id = day1top1Id;
+    }
+
+    public String getDay1top2Id() {
+        return day1top2Id;
+    }
+
+    public void setDay1top2Id(String day1top2Id) {
+        this.day1top2Id = day1top2Id;
+    }
+
+    public String getDay1top3Id() {
+        return day1top3Id;
+    }
+
+    public void setDay1top3Id(String day1top3Id) {
+        this.day1top3Id = day1top3Id;
+    }
+}

+ 57 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Earlywarningsub.java

@@ -0,0 +1,57 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("EARLYWARNINGSUB")
+public class Earlywarningsub extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("TID")
+    private String tid;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("EVENTID")
+    private String eventid;
+
+
+}

+ 66 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Equipmentmodel.java

@@ -0,0 +1,66 @@
+package com.gyee.failurestatistics.model.auto;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-11
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("EQUIPMENTMODEL")
+public class Equipmentmodel extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("DESCRIPTION")
+    private String description;
+
+    @TableField("POWERPRODUCTION")
+    private Double powerproduction;
+
+    @TableField("CUTINWINDSPEED")
+    private Double cutinwindspeed;
+
+    @TableField("RATEDWINDSPEED")
+    private Double ratedwindspeed;
+
+    @TableField("CUTOUTWINDSPEED")
+    private String cutoutwindspeed;
+
+    @TableField("WINDTURBINEMANUFACTURERID")
+    private String windturbinemanufacturerid;
+
+    @TableField("PHOTO")
+    private String photo;
+
+    @TableField("UNIT")
+    private String unit;
+
+    @TableField("SWEPTAREA")
+    private Double sweptarea;
+
+    @TableField("EQUIPMENTCATEGORY")
+    private Double equipmentcategory;
+
+
+}

+ 291 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Failurestatisticsmain.java

@@ -0,0 +1,291 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("FAILURESTATISTICSMAIN")
+public class Failurestatisticsmain extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("DAY3TOP1")
+    private Integer day3top1;
+
+    @TableField("DAY3TOP2")
+    private Integer day3top2;
+
+    @TableField("DAY3TOP3")
+    private Integer day3top3;
+
+    @TableField("DAY7TOP1")
+    private Integer day7top1;
+
+    @TableField("DAY7TOP2")
+    private Integer day7top2;
+
+    @TableField("DAY7TOP3")
+    private Integer day7top3;
+
+    @TableField("DAY15TOP1")
+    private Integer day15top1;
+
+    @TableField("DAY15TOP2")
+    private Integer day15top2;
+
+    @TableField("DAY15TOP3")
+    private Integer day15top3;
+
+    @TableField("MONTH1TOP1")
+    private Integer month1top1;
+
+    @TableField("MONTH1TOP2")
+    private Integer month1top2;
+
+    @TableField("MONTH1TOP3")
+    private Integer month1top3;
+
+    @TableField("DAY3TOP1NAME")
+    private String day3top1name;
+
+    @TableField("DAY3TOP2NAME")
+    private String day3top2name;
+
+    @TableField("DAY3TOP3NAME")
+    private String day3top3name;
+
+    @TableField("DAY7TOP1NAME")
+    private String day7top1name;
+
+    @TableField("DAY7TOP2NAME")
+    private String day7top2name;
+
+    @TableField("DAY7TOP3NAME")
+    private String day7top3name;
+
+    @TableField("DAY15TOP1NAME")
+    private String day15top1name;
+
+    @TableField("DAY15TOP2NAME")
+    private String day15top2name;
+
+    @TableField("DAY15TOP3NAME")
+    private String day15top3name;
+
+    @TableField("MONTH1TOP1NAME")
+    private String month1top1name;
+
+    @TableField("MONTH1TOP2NAME")
+    private String month1top2name;
+
+    @TableField("MONTH1TOP3NAME")
+    private String month1top3name;
+
+    @TableField("MONTH1TOPNUM")
+    private Integer month1topnum;
+
+    @TableField("DAY7TOPNUM")
+    private Integer day7topnum;
+
+    @TableField("DAY15TOPNUM")
+    private Integer day15topnum;
+
+    @TableField("DAY3TOPNUM")
+    private Integer day3topnum;
+
+    @TableField("SYNTHESISTOPNUM")
+    private Integer synthesistopnum;
+
+    @TableField("DAY1TOP1")
+    private Integer day1top1;
+
+    @TableField("DAY1TOP2")
+    private Integer day1top2;
+
+    @TableField("DAY1TOP3")
+    private Integer day1top3;
+
+    @TableField("DAY1TOP1NAME")
+    private String day1top1name;
+
+    @TableField("DAY1TOP2NAME")
+    private String day1top2name;
+
+    @TableField("DAY1TOP3NAME")
+    private String day1top3name;
+
+    @TableField("DAY1TOPNUM")
+    private Integer day1topnum;
+
+
+    private String day3top1Id;
+    private String day3top2Id;
+    private String day3top3Id;
+    private String day7top1Id;
+    private String day7top2Id;
+    private String day7top3Id;
+    private String day15top1Id;
+    private String day15top2Id;
+    private String day15top3Id;
+    private String month1top1Id;
+    private String month1top2Id;
+    private String month1top3Id;
+
+    private String day1top1Id;
+    private String day1top2Id;
+    private String day1top3Id;
+
+    public String getDay3top1Id() {
+        return day3top1Id;
+    }
+
+    public void setDay3top1Id(String day3top1Id) {
+        this.day3top1Id = day3top1Id;
+    }
+
+    public String getDay3top2Id() {
+        return day3top2Id;
+    }
+
+    public void setDay3top2Id(String day3top2Id) {
+        this.day3top2Id = day3top2Id;
+    }
+
+    public String getDay3top3Id() {
+        return day3top3Id;
+    }
+
+    public void setDay3top3Id(String day3top3Id) {
+        this.day3top3Id = day3top3Id;
+    }
+
+    public String getDay7top1Id() {
+        return day7top1Id;
+    }
+
+    public void setDay7top1Id(String day7top1Id) {
+        this.day7top1Id = day7top1Id;
+    }
+
+    public String getDay7top2Id() {
+        return day7top2Id;
+    }
+
+    public void setDay7top2Id(String day7top2Id) {
+        this.day7top2Id = day7top2Id;
+    }
+
+    public String getDay7top3Id() {
+        return day7top3Id;
+    }
+
+    public void setDay7top3Id(String day7top3Id) {
+        this.day7top3Id = day7top3Id;
+    }
+
+    public String getDay15top1Id() {
+        return day15top1Id;
+    }
+
+    public void setDay15top1Id(String day15top1Id) {
+        this.day15top1Id = day15top1Id;
+    }
+
+    public String getDay15top2Id() {
+        return day15top2Id;
+    }
+
+    public void setDay15top2Id(String day15top2Id) {
+        this.day15top2Id = day15top2Id;
+    }
+
+    public String getDay15top3Id() {
+        return day15top3Id;
+    }
+
+    public void setDay15top3Id(String day15top3Id) {
+        this.day15top3Id = day15top3Id;
+    }
+
+    public String getMonth1top1Id() {
+        return month1top1Id;
+    }
+
+    public void setMonth1top1Id(String month1top1Id) {
+        this.month1top1Id = month1top1Id;
+    }
+
+    public String getMonth1top2Id() {
+        return month1top2Id;
+    }
+
+    public void setMonth1top2Id(String month1top2Id) {
+        this.month1top2Id = month1top2Id;
+    }
+
+    public String getMonth1top3Id() {
+        return month1top3Id;
+    }
+
+    public void setMonth1top3Id(String month1top3Id) {
+        this.month1top3Id = month1top3Id;
+    }
+
+    public String getDay1top1Id() {
+        return day1top1Id;
+    }
+
+    public void setDay1top1Id(String day1top1Id) {
+        this.day1top1Id = day1top1Id;
+    }
+
+    public String getDay1top2Id() {
+        return day1top2Id;
+    }
+
+    public void setDay1top2Id(String day1top2Id) {
+        this.day1top2Id = day1top2Id;
+    }
+
+    public String getDay1top3Id() {
+        return day1top3Id;
+    }
+
+    public void setDay1top3Id(String day1top3Id) {
+        this.day1top3Id = day1top3Id;
+    }
+}

+ 57 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Failurestatisticssub.java

@@ -0,0 +1,57 @@
+package com.gyee.failurestatistics.model.auto;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("FAILURESTATISTICSSUB")
+public class Failurestatisticssub extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("TID")
+    private String tid;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("EVENTID")
+    private String eventid;
+
+
+}

+ 53 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Line.java

@@ -0,0 +1,53 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("LINE")
+public class Line extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("ANAME")
+    private String aname;
+
+    @TableField("PROJECTID")
+    private String projectid;
+
+    @TableField("ORDERNUM")
+    private Double ordernum;
+
+    @TableField("CAPACITY")
+    private Double capacity;
+
+    @TableField("CAPACITYUNIT")
+    private String capacityunit;
+
+    @TableField("QUANTITY")
+    private Double quantity;
+
+
+}

+ 51 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partpowerstatticsmain.java

@@ -0,0 +1,51 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTPOWERSTATTICSMAIN")
+public class Partpowerstatticsmain extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("MODEL")
+    private String model;
+
+
+}

+ 57 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partpowerstatticssub.java

@@ -0,0 +1,57 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTPOWERSTATTICSSUB")
+public class Partpowerstatticssub extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("TID")
+    private String tid;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("PARTID")
+    private String partid;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("DATAVALUE")
+    private Double datavalue;
+
+    @TableField("POWER")
+    private String power;
+
+    @TableField("EARLYWARNINGVALUE")
+    private Double earlywarningvalue;
+
+    @TableField("CRITICALVALUE")
+    private Double criticalvalue;
+
+
+}

+ 306 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partstatisticsmain.java

@@ -0,0 +1,306 @@
+package com.gyee.failurestatistics.model.auto;
+
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTSTATISTICSMAIN")
+public class Partstatisticsmain extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private Date recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("DAY1FDJ")
+    private Integer day1fdj;
+
+    @TableField("DAY1CLX")
+    private Integer day1clx;
+
+    @TableField("DAY1ZZ")
+    private Integer day1zz;
+
+    @TableField("DAY1BJ")
+    private Integer day1bj;
+
+    @TableField("DAY1PH")
+    private Integer day1ph;
+
+    @TableField("DAY1JC")
+    private Integer day1jc;
+
+    @TableField("DAY1BPQ")
+    private Integer day1bpq;
+
+    @TableField("DAY1ZK")
+    private Integer day1zk;
+
+    @TableField("DAY3FDJ")
+    private Integer day3fdj;
+
+    @TableField("DAY3CLX")
+    private Integer day3clx;
+
+    @TableField("DAY3ZZ")
+    private Integer day3zz;
+
+    @TableField("DAY3BJ")
+    private Integer day3bj;
+
+    @TableField("DAY3PH")
+    private Integer day3ph;
+
+    @TableField("DAY3JC")
+    private Integer day3jc;
+
+    @TableField("DAY3BPQ")
+    private Integer day3bpq;
+
+    @TableField("DAY3ZK")
+    private Integer day3zk;
+
+    @TableField("DAY7FDJ")
+    private Integer day7fdj;
+
+    @TableField("DAY7CLX")
+    private Integer day7clx;
+
+    @TableField("DAY7ZZ")
+    private Integer day7zz;
+
+    @TableField("DAY7BJ")
+    private Integer day7bj;
+
+    @TableField("DAY7PH")
+    private Integer day7ph;
+
+    @TableField("DAY7JC")
+    private Integer day7jc;
+
+    @TableField("DAY7BPQ")
+    private Integer day7bpq;
+
+    @TableField("DAY7ZK")
+    private Integer day7zk;
+
+    @TableField("DAY15FDJ")
+    private Integer day15fdj;
+
+    @TableField("DAY15CLX")
+    private Integer day15clx;
+
+    @TableField("DAY15ZZ")
+    private Integer day15zz;
+
+    @TableField("DAY15BJ")
+    private Integer day15bj;
+
+    @TableField("DAY15PH")
+    private Integer day15ph;
+
+    @TableField("DAY15JC")
+    private Integer day15jc;
+
+    @TableField("DAY15BPQ")
+    private Integer day15bpq;
+
+    @TableField("DAY15ZK")
+    private Integer day15zk;
+
+    @TableField("MONTH1FDJ")
+    private Integer month1fdj;
+
+    @TableField("MONTH1CLX")
+    private Integer month1clx;
+
+    @TableField("MONTH1ZZ")
+    private Integer month1zz;
+
+    @TableField("MONTH1BJ")
+    private Integer month1bj;
+
+    @TableField("MONTH1PH")
+    private Integer month1ph;
+
+    @TableField("MONTH1JC")
+    private Integer month1jc;
+
+    @TableField("MONTH1BPQ")
+    private Integer month1bpq;
+
+    @TableField("MONTH1ZK")
+    private Integer month1zk;
+
+    @TableField("DAY1FDJNAME")
+    private String day1fdjname;
+
+    @TableField("DAY1CLXNAME")
+    private String day1clxname;
+
+    @TableField("DAY1ZZNAME")
+    private String day1zzname;
+
+    @TableField("DAY1BJNAME")
+    private String day1bjname;
+
+    @TableField("DAY1PHNAME")
+    private String day1phname;
+
+    @TableField("DAY1JCNAME")
+    private String day1jcname;
+
+    @TableField("DAY1BPQNAME")
+    private String day1bpqname;
+
+    @TableField("DAY1ZKNAME")
+    private String day1zkname;
+
+    @TableField("DAY3FDJNAME")
+    private String day3fdjname;
+
+    @TableField("DAY3CLXNAME")
+    private String day3clxname;
+
+    @TableField("DAY3ZZNAME")
+    private String day3zzname;
+
+    @TableField("DAY3BJNAME")
+    private String day3bjname;
+
+    @TableField("DAY3PHNAME")
+    private String day3phname;
+
+    @TableField("DAY3JCNAME")
+    private String day3jcname;
+
+    @TableField("DAY3BPQNAME")
+    private String day3bpqname;
+
+    @TableField("DAY3ZKNAME")
+    private String day3zkname;
+
+    @TableField("DAY7FDJNAME")
+    private String day7fdjname;
+
+    @TableField("DAY7CLXNAME")
+    private String day7clxname;
+
+    @TableField("DAY7ZZNAME")
+    private String day7zzname;
+
+    @TableField("DAY7BJNAME")
+    private String day7bjname;
+
+    @TableField("DAY7PHNAME")
+    private String day7phname;
+
+    @TableField("DAY7JCNAME")
+    private String day7jcname;
+
+    @TableField("DAY7BPQNAME")
+    private String day7bpqname;
+
+    @TableField("DAY7ZKNAME")
+    private String day7zkname;
+
+    @TableField("DAY15FDJNAME")
+    private String day15fdjname;
+
+    @TableField("DAY15CLXNAME")
+    private String day15clxname;
+
+    @TableField("DAY15ZZNAME")
+    private String day15zzname;
+
+    @TableField("DAY15BJNAME")
+    private String day15bjname;
+
+    @TableField("DAY15PHNAME")
+    private String day15phname;
+
+    @TableField("DAY15JCNAME")
+    private String day15jcname;
+
+    @TableField("DAY15BPQNAME")
+    private String day15bpqname;
+
+    @TableField("DAY15ZKNAME")
+    private String day15zkname;
+
+    @TableField("MONTH1FDJNAME")
+    private String month1fdjname;
+
+    @TableField("MONTH1CLXNAME")
+    private String month1clxname;
+
+    @TableField("MONTH1ZZNAME")
+    private String month1zzname;
+
+    @TableField("MONTH1BJNAME")
+    private String month1bjname;
+
+    @TableField("MONTH1PHNAME")
+    private String month1phname;
+
+    @TableField("MONTH1JCNAME")
+    private String month1jcname;
+
+    @TableField("MONTH1BPQNAME")
+    private String month1bpqname;
+
+    @TableField("MONTH1ZKNAME")
+    private String month1zkname;
+
+    @TableField("DAY1TOPNUM")
+    private Integer day1topnum;
+
+    @TableField("DAY3TOPNUM")
+    private Integer day3topnum;
+
+    @TableField("DAY7TOPNUM")
+    private Integer day7topnum;
+
+    @TableField("DAY15TOPNUM")
+    private Integer day15topnum;
+
+    @TableField("MONTH1TOPNUM")
+    private Integer month1topnum;
+
+    @TableField("SYNTHESISTOPNUM")
+    private Integer synthesistopnum;
+
+
+}

+ 55 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Partstatisticssub.java

@@ -0,0 +1,55 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTSTATISTICSSUB")
+public class Partstatisticssub extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private BigDecimal id;
+
+    @TableField("TID")
+    private BigDecimal tid;
+
+    @TableField("RECODEDATE")
+    private LocalDateTime recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WPNAME")
+    private String wpname;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("EVENTID")
+    private String eventid;
+
+
+}

+ 49 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Parttemperaturemain.java

@@ -0,0 +1,49 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTTEMPERATUREMAIN")
+public class Parttemperaturemain extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private LocalDateTime recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("TRANGE")
+    private String trange;
+
+    @TableField("TSNUMBER")
+    private BigDecimal tsnumber;
+
+
+}

+ 55 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Parttemperaturesub.java

@@ -0,0 +1,55 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PARTTEMPERATURESUB")
+public class Parttemperaturesub extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("RECODEDATE")
+    private LocalDateTime recodedate;
+
+    @TableField("WPID")
+    private String wpid;
+
+    @TableField("WTID")
+    private String wtid;
+
+    @TableField("WTNAME")
+    private String wtname;
+
+    @TableField("TRANGE")
+    private String trange;
+
+    @TableField("TSNUMBER")
+    private BigDecimal tsnumber;
+
+    @TableField("POINTNAME")
+    private String pointname;
+
+    @TableField("PARTNAME")
+    private String partname;
+
+
+}

+ 70 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Project.java

@@ -0,0 +1,70 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("PROJECT")
+public class Project extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("ANAME")
+    private String aname;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("CAPACITY")
+    private Double capacity;
+
+    @TableField("CAPACITYUNIT")
+    private String capacityunit;
+
+    @TableField("QUANTITY")
+    private Double quantity;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("COMMISSIONDATE")
+    private Date commissiondate;
+
+    @TableField("MASTERPHONE")
+    private String masterphone;
+
+    @TableField("SHIFTFOREMAN")
+    private String shiftforeman;
+
+    @TableField("SHIFTFOREMANPHONE")
+    private String shiftforemanphone;
+
+    @TableField("ORDERNUM")
+    private Double ordernum;
+
+
+}

+ 574 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerinfoday.java

@@ -0,0 +1,574 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDPOWERINFODAY")
+public class Windpowerinfoday extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 编号
+     */
+    @TableId("ID")
+    private Long id;
+
+    /**
+     * 外键编号
+     */
+    @TableField("FOREIGNKEYID")
+    private String foreignkeyid;
+
+    /**
+     * 运行小时
+     */
+    @TableField("RUNHOURS")
+    private Double runhours;
+
+    /**
+     * 停机小时
+     */
+    @TableField("STOPHOURS")
+    private Double stophours;
+
+    /**
+     * 故障小时
+     */
+    @TableField("FAULTHOURS")
+    private Double faulthours;
+
+    /**
+     * 维护小时
+     */
+    @TableField("MAINTAINHOURS")
+    private Double maintainhours;
+
+    /**
+     * 通讯中断小时
+     */
+    @TableField("INTERRUPTHOURS")
+    private Double interrupthours;
+
+    /**
+     * 发电量(SCADA)
+     */
+    @TableField("GENERATINGCAPACITY")
+    private Double generatingcapacity;
+
+    /**
+     * 风速
+     */
+    @TableField("SPEED")
+    private Double speed;
+
+    /**
+     * 功率
+     */
+    @TableField("POWER")
+    private Double power;
+
+    /**
+     * 日期
+     */
+    @TableField("RECORDDATE")
+    private Date recorddate;
+
+    /**
+     * 上网电量
+     */
+    @TableField("GRIDELECTRICITY")
+    private Double gridelectricity;
+
+    /**
+     * 工网购网电量
+     */
+    @TableField("BUYELECTRICITY")
+    private Double buyelectricity;
+
+    /**
+     * 场内停机
+     */
+    @TableField("INSTOP")
+    private Double instop;
+
+    /**
+     * 场外停机
+     */
+    @TableField("OUTSTOP")
+    private Double outstop;
+
+    /**
+     * 运行时间(计算过)
+     */
+    @TableField("RUNTIME")
+    private Double runtime;
+
+    /**
+     * 停机时间(计算过)
+     */
+    @TableField("STOPTIME")
+    private Double stoptime;
+
+    /**
+     * 故障时间(计算过)
+     */
+    @TableField("FAULTTIME")
+    private Double faulttime;
+
+    /**
+     * 维护时间(计算过)
+     */
+    @TableField("MAINTAINTIME")
+    private Double maintaintime;
+
+    /**
+     * 通讯中断时间(计算过)
+     */
+    @TableField("INTERRUPTTIME")
+    private Double interrupttime;
+
+    /**
+     * 月发电量
+     */
+    @TableField("MONTHGC")
+    private Double monthgc;
+
+    /**
+     * 年发电量
+     */
+    @TableField("YEARGC")
+    private Double yeargc;
+
+    /**
+     * 理论发电量
+     */
+    @TableField("THEORYGENERATION")
+    private Double theorygeneration;
+
+    /**
+     * 损失发电量
+     */
+    @TableField("LOSSOFPOWER")
+    private Double lossofpower;
+
+    /**
+     * 场用电量
+     */
+    @TableField("FIELDELECTRICITY")
+    private Double fieldelectricity;
+
+    /**
+     * 发电量(电表)
+     */
+    @TableField("GENERATINGCAPACITY2")
+    private Double generatingcapacity2;
+
+    /**
+     * 风场编号
+     */
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    /**
+     * 项目编号
+     */
+    @TableField("PROJECTID")
+    private String projectid;
+
+    /**
+     * 线路编号
+     */
+    @TableField("LINEID")
+    private String lineid;
+
+    /**
+     * 所属位置
+     */
+    @TableField("LOCATION")
+    private String location;
+
+    /**
+     * 农网购网电量
+     */
+    @TableField("BUYAGRICULTUREELECTRICITY")
+    private Double buyagricultureelectricity;
+
+    /**
+     * 月发电量(电表)
+     */
+    @TableField("MONTHGC2")
+    private Double monthgc2;
+
+    /**
+     * 年发电量(电表)
+     */
+    @TableField("YEARGC2")
+    private Double yeargc2;
+
+    /**
+     * 风速(测风塔)
+     */
+    @TableField("SPEED2")
+    private Double speed2;
+
+    /**
+     * 最小风速
+     */
+    @TableField("MAXSPEED")
+    private Double maxspeed;
+
+    /**
+     * 最大风速(日照强度)
+     */
+    @TableField("MINSPEED")
+    private Double minspeed;
+
+    /**
+     * 限电量
+     */
+    @TableField("LIMITPOWER")
+    private Double limitpower;
+
+    /**
+     * 总发电量(SCADA)
+     */
+    @TableField("TOTALGC")
+    private Double totalgc;
+
+    /**
+     * 总发电量
+     */
+    @TableField("TOTALGC2")
+    private Double totalgc2;
+
+    /**
+     * 自算理论发电量
+     */
+    @TableField("THEORYGENERATIONZS")
+    private Double theorygenerationzs;
+
+    /**
+     * 有效风时数
+     */
+    @TableField("WINDHOURS")
+    private Double windhours;
+
+    /**
+     * 最大功率
+     */
+    @TableField("MAXPOWER")
+    private Double maxpower;
+
+    /**
+     * 最小功率
+     */
+    @TableField("MINPOWER")
+    private Double minpower;
+
+    /**
+     * 月上网电量
+     */
+    @TableField("MONTHGE")
+    private Double monthge;
+
+    /**
+     * 年上网电量
+     */
+    @TableField("YEARGE")
+    private Double yearge;
+
+    /**
+     * 月工网购网电量
+     */
+    @TableField("MONTHBE")
+    private Double monthbe;
+
+    /**
+     * 年工网购网电量
+     */
+    @TableField("YEARBE")
+    private Double yearbe;
+
+    /**
+     * 月农网购网电量
+     */
+    @TableField("MONTHAE")
+    private Double monthae;
+
+    /**
+     * 年农网购网电量
+     */
+    @TableField("YEARAE")
+    private Double yearae;
+
+    /**
+     * 日发电量(4位小数)
+     */
+    @TableField("GENERATINGCAPACITY4")
+    private Double generatingcapacity4;
+
+    /**
+     * 日上网电量(4位小数)
+     */
+    @TableField("GRIDELECTRICITY4")
+    private Double gridelectricity4;
+
+    /**
+     * 日工网购网电量(4位小数)
+     */
+    @TableField("BUYELECTRICITY4")
+    private Double buyelectricity4;
+
+    /**
+     * 日农网购网电量(4位小数)
+     */
+    @TableField("BUYAGRICULTUREELECTRICITY4")
+    private Double buyagricultureelectricity4;
+
+    /**
+     * 日利用小时数
+     */
+    @TableField("DAYLYXS")
+    private Double daylyxs;
+
+    /**
+     * 月利用小时数
+     */
+    @TableField("MONTHLYXS")
+    private Double monthlyxs;
+
+    /**
+     * 年利用小时数
+     */
+    @TableField("YEARLYXS")
+    private Double yearlyxs;
+
+    /**
+     * 日综合厂用电率
+     */
+    @TableField("DAYZHCYDL")
+    private Double dayzhcydl;
+
+    /**
+     * 月综合厂用电率
+     */
+    @TableField("MONTHZHCYDL")
+    private Double monthzhcydl;
+
+    /**
+     * 年综合厂用电率
+     */
+    @TableField("YEARZHCYDL")
+    private Double yearzhcydl;
+
+    /**
+     * 日设备可利用率
+     */
+    @TableField("DAYSBKLYL")
+    private Double daysbklyl;
+
+    /**
+     * 月设备可利用率
+     */
+    @TableField("MONTHSBKLYL")
+    private Double monthsbklyl;
+
+    /**
+     * 年设备可利用率
+     */
+    @TableField("YEARSBKLYL")
+    private Double yearsbklyl;
+
+    /**
+     * 日等效可用系数
+     */
+    @TableField("DAYDXKYXS")
+    private Double daydxkyxs;
+
+    /**
+     * 月等效可用系数
+     */
+    @TableField("MONTHDXKYXS")
+    private Double monthdxkyxs;
+
+    /**
+     * 年等效可用系数
+     */
+    @TableField("YEARDXKYXS")
+    private Double yeardxkyxs;
+
+    /**
+     * 月平均风速
+     */
+    @TableField("MONTHSPEED")
+    private Double monthspeed;
+
+    /**
+     * 年平均风速
+     */
+    @TableField("YEARSPEED")
+    private Double yearspeed;
+
+    /**
+     * 运行时间(计算过)月
+     */
+    @TableField("MONTHRUNTIME")
+    private Double monthruntime;
+
+    /**
+     * 停机时间(计算过)月
+     */
+    @TableField("MONHTSTOPTIME")
+    private Double monhtstoptime;
+
+    /**
+     * 故障时间(计算过)月
+     */
+    @TableField("MONTHFAULTTIME")
+    private Double monthfaulttime;
+
+    /**
+     * 维护时间(计算过)月
+     */
+    @TableField("MONTHMAINTAINTIME")
+    private Double monthmaintaintime;
+
+    /**
+     * 通讯中断时间(计算过)月
+     */
+    @TableField("MONTHINTERRUPTTIME")
+    private Double monthinterrupttime;
+
+    /**
+     * 运行时间(计算过)年
+     */
+    @TableField("YEARRUNTIME")
+    private Double yearruntime;
+
+    /**
+     * 停机时间(计算过)年
+     */
+    @TableField("YEARSTOPTIME")
+    private Double yearstoptime;
+
+    /**
+     * 故障时间(计算过)年
+     */
+    @TableField("YEARFAULTTIME")
+    private Double yearfaulttime;
+
+    /**
+     * 维护时间(计算过)年
+     */
+    @TableField("YEARMAINTAINTIME")
+    private Double yearmaintaintime;
+
+    /**
+     * 通讯中断时间(计算过)年
+     */
+    @TableField("YEARINTERRUPTTIME")
+    private Double yearinterrupttime;
+
+    /**
+     * 日日历小时数
+     */
+    @TableField("DAYCALENDARHOURS")
+    private Double daycalendarhours;
+
+    /**
+     * 月日历小时数
+     */
+    @TableField("MONTHCALENDARHOURS")
+    private Double monthcalendarhours;
+
+    /**
+     * 年日历小时数
+     */
+    @TableField("YEARCALENDARHOURS")
+    private Double yearcalendarhours;
+
+    /**
+     * 限电损失电量
+     */
+    @TableField("LOSSOFPOWER1")
+    private Double lossofpower1;
+
+    /**
+     * 故障损失电量
+     */
+    @TableField("LOSSOFPOWER2")
+    private Double lossofpower2;
+
+    /**
+     * 维护损失电量
+     */
+    @TableField("LOSSOFPOWER3")
+    private Double lossofpower3;
+
+    /**
+     * 性能损失电量
+     */
+    @TableField("LOSSOFPOWER4")
+    private Double lossofpower4;
+
+    /**
+     * 月有效风时数
+     */
+    @TableField("MONTHWINDHOURS")
+    private Double monthwindhours;
+
+    /**
+     * 年有效风时数
+     */
+    @TableField("YEARWINDHOURS")
+    private Double yearwindhours;
+
+    /**
+     * 日限电小时数
+     */
+    @TableField("BROWNOUTSTIME")
+    private Double brownoutstime;
+
+    /**
+     * 月限电小时数
+     */
+    @TableField("MONTHBROWNOUTSTIME")
+    private Double monthbrownoutstime;
+
+    /**
+     * 年限电小时数
+     */
+    @TableField("YEARBROWNOUTSTIME")
+    private Double yearbrownoutstime;
+
+    @TableField("MAINLOSSIN")
+    private Double mainlossin;
+
+    @TableField("FAULTLOSSIN")
+    private Double faultlossin;
+
+    @TableField("ELECTRICLOSSOUT")
+    private Double electriclossout;
+
+    @TableField("WEATHERLOSSOUT")
+    private Double weatherlossout;
+
+
+}

+ 172 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerinfoday3.java

@@ -0,0 +1,172 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDPOWERINFODAY3")
+public class Windpowerinfoday3 extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private Long id;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("PROJECTID")
+    private String projectid;
+
+    @TableField("LINEID")
+    private String lineid;
+
+    @TableField("WINDTURBINEID")
+    private String windturbineid;
+
+    @TableField("DAYDL1")
+    private Double daydl1;
+
+    @TableField("DAYDL2")
+    private Double daydl2;
+
+    @TableField("DAYPOWER")
+    private Double daypower;
+
+    @TableField("DAYSPEED")
+    private Double dayspeed;
+
+    @TableField("DAYMAXPOWER")
+    private Double daymaxpower;
+
+    @TableField("DAYMINPOWER")
+    private Double dayminpower;
+
+    @TableField("DAYMAXSPEED")
+    private Double daymaxspeed;
+
+    @TableField("DAYMINSPEED")
+    private Double dayminspeed;
+
+    @TableField("DAYNHGL")
+    private Double daynhgl;
+
+    @TableField("DAYNHDL")
+    private Double daynhdl;
+
+    @TableField("DAYNHGZSSDL")
+    private Double daynhgzssdl;
+
+    @TableField("DAYNHWHSSDL")
+    private Double daynhwhssdl;
+
+    @TableField("DAYNHXDSSDL")
+    private Double daynhxdssdl;
+
+    @TableField("DAYNHQFDL")
+    private Double daynhqfdl;
+
+    @TableField("DAYNHCFDL")
+    private Double daynhcfdl;
+
+    @TableField("DAYNHPCL")
+    private Double daynhpcl;
+
+    @TableField("DAYNHGL2")
+    private Double daynhgl2;
+
+    @TableField("DAYNHDL2")
+    private Double daynhdl2;
+
+    @TableField("DAYNHGZSSDL2")
+    private Double daynhgzssdl2;
+
+    @TableField("DAYNHWHSSDL2")
+    private Double daynhwhssdl2;
+
+    @TableField("DAYNHXDSSDL2")
+    private Double daynhxdssdl2;
+
+    @TableField("DAYNHQFDL2")
+    private Double daynhqfdl2;
+
+    @TableField("DAYNHCFDL2")
+    private Double daynhcfdl2;
+
+    @TableField("DAYNHPCL2")
+    private Double daynhpcl2;
+
+    @TableField("DAYBZGL")
+    private Double daybzgl;
+
+    @TableField("DAYBZDL")
+    private Double daybzdl;
+
+    @TableField("DAYBZGZSSDL")
+    private Double daybzgzssdl;
+
+    @TableField("DAYBZWHSSDL")
+    private Double daybzwhssdl;
+
+    @TableField("DAYBZXDSSDL")
+    private Double daybzxdssdl;
+
+    @TableField("DAYBZQFDL")
+    private Double daybzqfdl;
+
+    @TableField("DAYBZCFDL")
+    private Double daybzcfdl;
+
+    @TableField("DAYBZPCL")
+    private Double daybzpcl;
+
+    @TableField("DAYLLGL")
+    private Double dayllgl;
+
+    @TableField("DAYLLDL")
+    private Double daylldl;
+
+    @TableField("DAYLLGZSSDL")
+    private Double dayllgzssdl;
+
+    @TableField("DAYLLWHSSDL")
+    private Double dayllwhssdl;
+
+    @TableField("DAYLLXDSSDL")
+    private Double dayllxdssdl;
+
+    @TableField("DAYLLQFDL")
+    private Double dayllqfdl;
+
+    @TableField("DAYLLCFDL")
+    private Double dayllcfdl;
+
+    @TableField("DAYLLPCL")
+    private Double dayllpcl;
+
+    @TableField("RECORDDATE")
+    private Date recorddate;
+
+    @TableField("FOREIGNKEYID")
+    private String foreignkeyid;
+
+    @TableField("LOCATION")
+    private String location;
+
+
+}

+ 87 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerstation.java

@@ -0,0 +1,87 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-01
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDPOWERSTATION")
+public class Windpowerstation extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("ADDRESS")
+    private String address;
+
+    @TableField("TELEPHONE")
+    private String telephone;
+
+    @TableField("CAPACITY")
+    private Double capacity;
+
+    @TableField("CAPACITYUNIT")
+    private String capacityunit;
+
+    @TableField("QUANTITY")
+    private Double quantity;
+
+    @TableField("ANAME")
+    private String aname;
+
+    @TableField("LONGITUDE")
+    private Double longitude;
+
+    @TableField("LATITUDE")
+    private Double latitude;
+
+    @TableField("PHOTO")
+    private String photo;
+
+    @TableField("COMPANYID")
+    private String companyid;
+
+    @TableField("SYSTEMMANUFACT")
+    private String systemmanufact;
+
+    @TableField("HEADFARM")
+    private String headfarm;
+
+    @TableField("HEADFARMPHONE")
+    private String headfarmphone;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("ORDERNUM")
+    private Double ordernum;
+
+    @TableField("ALTITUDE")
+    private Double altitude;
+
+    @TableField("HEIGHT")
+    private Double height;
+
+
+}

+ 75 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windpowerstationtestingpoint.java

@@ -0,0 +1,75 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDPOWERSTATIONTESTINGPOINT")
+public class Windpowerstationtestingpoint extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("VALUEUNIT")
+    private String valueunit;
+
+    @TableField("ENGLISHNAME")
+    private String englishname;
+
+    @TableField("TYPEID")
+    private String typeid;
+
+    @TableField("MODELID")
+    private String modelid;
+
+    @TableField("MAXVAL")
+    private BigDecimal maxval;
+
+    @TableField("MINVAL")
+    private BigDecimal minval;
+
+    @TableField("REASONABLEMAXVAL")
+    private BigDecimal reasonablemaxval;
+
+    @TableField("REASONABLEMINVAL")
+    private BigDecimal reasonableminval;
+
+    @TableField("UNIFORMCODE")
+    private String uniformcode;
+
+    @TableField("SHORTID")
+    private String shortid;
+
+    @TableField("LONGID")
+    private String longid;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("REALTIMEID")
+    private String realtimeid;
+
+
+}

+ 65 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbine.java

@@ -0,0 +1,65 @@
+package com.gyee.failurestatistics.model.auto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-05-25
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDTURBINE")
+public class Windturbine extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("LONGITUDE")
+    private Double longitude;
+
+    @TableField("LATITUDE")
+    private Double latitude;
+
+    @TableField("MODELID")
+    private String modelid;
+
+    @TableField("STATUS")
+    private String status;
+
+    @TableField("PROJECTID")
+    private String projectid;
+
+    @TableField("LINEID")
+    private String lineid;
+
+    @TableField("FIRSTINTEGRATEDTIME")
+    private String firstintegratedtime;
+
+    @TableField("PHOTO")
+    private String photo;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("STANDARDID")
+    private String standardid;
+
+
+}

+ 80 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbinetestingpointai.java

@@ -0,0 +1,80 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDTURBINETESTINGPOINTAI")
+public class Windturbinetestingpointai extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableField("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("VALUEUNIT")
+    private String valueunit;
+
+    @TableField("ENGLISHNAME")
+    private String englishname;
+
+    @TableField("TYPEID")
+    private String typeid;
+
+    @TableField("MODELID")
+    private String modelid;
+
+    @TableField("MAXVAL")
+    private BigDecimal maxval;
+
+    @TableField("MINVAL")
+    private BigDecimal minval;
+
+    @TableField("REASONABLEMAXVAL")
+    private BigDecimal reasonablemaxval;
+
+    @TableField("REASONABLEMINVAL")
+    private BigDecimal reasonableminval;
+
+    @TableField("WINDTURBINEID")
+    private String windturbineid;
+
+    @TableField("UNIFORMCODE")
+    private String uniformcode;
+
+    @TableField("SHORTID")
+    private String shortid;
+
+    @TableField("LONGID")
+    private String longid;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("REALTIMEID")
+    private String realtimeid;
+
+
+}

+ 81 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/model/auto/Windturbinetestingpointdi.java

@@ -0,0 +1,81 @@
+package com.gyee.failurestatistics.model.auto;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@TableName("WINDTURBINETESTINGPOINTDI")
+public class Windturbinetestingpointdi extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("ID")
+    private String id;
+
+    @TableField("CODE")
+    private String code;
+
+    @TableField("NAME")
+    private String name;
+
+    @TableField("MODEL")
+    private String model;
+
+    @TableField("VALUEUNIT")
+    private String valueunit;
+
+    @TableField("ENGLISHNAME")
+    private String englishname;
+
+    @TableField("TYPEID")
+    private String typeid;
+
+    @TableField("MODELID")
+    private String modelid;
+
+    @TableField("MAXVAL")
+    private BigDecimal maxval;
+
+    @TableField("MINVAL")
+    private BigDecimal minval;
+
+    @TableField("REASONABLEMAXVAL")
+    private BigDecimal reasonablemaxval;
+
+    @TableField("REASONABLEMINVAL")
+    private BigDecimal reasonableminval;
+
+    @TableField("WINDTURBINEID")
+    private String windturbineid;
+
+    @TableField("UNIFORMCODE")
+    private String uniformcode;
+
+    @TableField("SHORTID")
+    private String shortid;
+
+    @TableField("LONGID")
+    private String longid;
+
+    @TableField("WINDPOWERSTATIONID")
+    private String windpowerstationid;
+
+    @TableField("REALTIMEID")
+    private String realtimeid;
+
+
+}

+ 586 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/EarlywarningService.java

@@ -0,0 +1,586 @@
+package com.gyee.failurestatistics.service;
+
+import com.gyee.common.model.StringUtils;
+
+import com.gyee.failurestatistics.init.CacheContext;
+import com.gyee.failurestatistics.model.auto.Earlywarningmain;
+import com.gyee.failurestatistics.model.auto.Earlywarningsub;
+import com.gyee.failurestatistics.model.auto.Windpowerstation;
+import com.gyee.failurestatistics.model.auto.Windturbine;
+import com.gyee.failurestatistics.service.auto.IEarlywarningmainService;
+import com.gyee.failurestatistics.service.auto.IEarlywarningsubService;
+import com.gyee.failurestatistics.vo.EventVo;
+import com.gyee.failurestatistics.vo.ShutdowneventVo;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.Map.Entry;
+
+/**
+ * @ClassName : EarlywarningService
+ * @Description : 报警统计service
+ */
+@Service
+public class EarlywarningService {
+
+
+    @Resource
+    private IEarlywarningmainService earlywarningmainService;
+    @Resource
+    private IEarlywarningsubService earlywarningsubService;
+
+
+    public void saveEarlywarningmain() throws Exception {
+
+
+        Calendar cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        Date endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -1);
+        Date beginDate = cal.getTime();
+
+        Map<String, List<EventVo>> day1nummap = getCountMap(beginDate, endDate);
+        //Map<String, Map<String, List<ShutdowneventVo>>> day1eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day1ordermap = getCountOrderNum(beginDate, endDate);
+
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -3);
+        beginDate = cal.getTime();
+
+        Map<String, List<EventVo>> day3nummap = getCountMap(beginDate, endDate);
+        //Map<String, Map<String, List<ShutdowneventVo>>> day3eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day3ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -7);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> day7nummap = getCountMap(beginDate, endDate);
+        //Map<String, Map<String, List<ShutdowneventVo>>> day7eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day7ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -15);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> day15nummap = getCountMap(beginDate, endDate);
+        //Map<String, Map<String, List<ShutdowneventVo>>> day15eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day15ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.MONTH, -1);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> month1nummap = getCountMap(beginDate, endDate);
+        //	Map<String, Map<String, List<ShutdowneventVo>>> month1eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> month1ordermap = getCountOrderNum(beginDate, endDate);
+
+
+
+
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        for (Windpowerstation wp : CacheContext.wpls) {
+            if (wp.getId().endsWith("FDC")) {
+
+                System.out.println("开始统计"+wp.getName()+"预警排名和次数统计");
+                List<Windturbine> wtls = CacheContext.wtsmap.get(wp.getId());
+                Map<String, Integer> synthesistopordermap =getSynthesistopOrderNum(wtls,day1ordermap, day3ordermap, day7ordermap, day15ordermap, month1ordermap);
+                for (Windturbine wt : wtls) {
+                    Earlywarningmain po = new Earlywarningmain();
+                    po.setWpid(wp.getId());
+                    po.setWpname(wp.getName());
+                    po.setWtid(wt.getId());
+                    po.setWtname(wt.getName());
+                    po.setRecodedate(cal.getTime());
+                    if (day1nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setEarlywarningmainValue(po, 0, day1nummap, wt);
+                        if (day1ordermap.containsKey(wt.getId())) {
+                            po.setDay1topnum(day1ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay1topnum(wtls.size());
+                        }
+                    }
+                    if (day3nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setEarlywarningmainValue(po, 1, day3nummap, wt);
+                        if (day3ordermap.containsKey(wt.getId())) {
+                            po.setDay3topnum(day3ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay3topnum(wtls.size());
+                        }
+                    }
+                    if (day7nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setEarlywarningmainValue(po, 2, day7nummap, wt);
+                        if (day7ordermap.containsKey(wt.getId())) {
+                            po.setDay7topnum(day7ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay7topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+                    if (day15nummap.containsKey(wt.getId())) {
+                        setEarlywarningmainValue(po, 3, day15nummap, wt);
+                        if (day15ordermap.containsKey(wt.getId())) {
+                            po.setDay15topnum(day15ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay15topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+                    if (month1nummap.containsKey(wt.getId())) {
+                        setEarlywarningmainValue(po, 4, month1nummap, wt);
+                        if (month1ordermap.containsKey(wt.getId())) {
+                            po.setMonth1topnum(month1ordermap.get(wt.getId()));
+                        } else {
+                            po.setMonth1topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+
+
+
+
+                    if(synthesistopordermap.containsKey(wt.getId()))
+                    {
+                        po.setSynthesistopnum(synthesistopordermap.get(wt.getId()));
+                    }else
+                    {
+                        po.setSynthesistopnum(wtls.size());
+                    }
+
+
+                    String tid=com.gyee.failurestatistics.util.StringUtils.getUUID();
+                    po.setId(tid);
+                    insertEarlywarningmain(po);
+//					DAY3TOP1
+//					DAY3TOP2
+//					DAY3TOP3
+//					DAY7TOP1
+//					DAY7TOP2
+//					DAY7TOP3
+//					DAY15TOP1
+//					DAY15TOP2
+//					DAY15TOP3
+//					MONTH1TOP1
+//					MONTH1TOP2
+//					MONTH1TOP3
+                    //保存子表分类统计1天预警编号
+//					saveEarlywarningsub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP1", po.getDay1top1Id());
+//					saveEarlywarningsub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP2", po.getDay1top2Id());
+//					saveEarlywarningsub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP3", po.getDay1top3Id());
+//					//保存子表分类统计3天预警编号
+//					saveEarlywarningsub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP1", po.getDay3top1Id());
+//					saveEarlywarningsub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP2", po.getDay3top2Id());
+//					saveEarlywarningsub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP3", po.getDay3top3Id());
+//					//保存子表分类统计7天预警编号
+//					saveEarlywarningsub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP1", po.getDay7top1Id());
+//					saveEarlywarningsub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP2", po.getDay7top2Id());
+//					saveEarlywarningsub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP3", po.getDay7top3Id());
+//					//保存子表分类统计15天预警编号
+//					saveEarlywarningsub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP1", po.getDay15top1Id());
+//					saveEarlywarningsub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP2", po.getDay15top2Id());
+//					saveEarlywarningsub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP3", po.getDay15top3Id());
+//					//保存子表分类统计1月预警编号
+//					saveEarlywarningsub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP1", po.getMonth1top1Id());
+//					saveEarlywarningsub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP2", po.getMonth1top2Id());
+//					saveEarlywarningsub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP3", po.getMonth1top3Id());
+                }
+
+            }
+            System.out.println("结束统计"+wp.getName()+"预警排名和次数统计");
+        }
+
+    }
+
+    /**
+     * 复制排名前三的预警名称和预警数量
+     *
+     * @param po
+     * @param type
+     * @param nummap
+     * @param wt
+     */
+    private void setEarlywarningmainValue(Earlywarningmain po, int type, Map<String, List<EventVo>> nummap, Windturbine wt) {
+        List<EventVo> eventls = nummap.get(wt.getId());
+        int i = 1;
+        if (type == 0) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay1top1(vo.getEventnum());
+                        po.setDay1top1Id(vo.getWarnId());
+                        po.setDay1top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay1top2(vo.getEventnum());
+                        po.setDay1top2Id(vo.getWarnId());
+                        po.setDay1top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay1top3(vo.getEventnum());
+                        po.setDay1top3Id(vo.getWarnId());
+                        po.setDay1top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else 	if (type == 1) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay3top1(vo.getEventnum());
+                        po.setDay3top1Id(vo.getWarnId());
+                        po.setDay3top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay3top2(vo.getEventnum());
+                        po.setDay3top2Id(vo.getWarnId());
+                        po.setDay3top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay3top3(vo.getEventnum());
+                        po.setDay3top3Id(vo.getWarnId());
+                        po.setDay3top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 2) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+
+                        po.setDay7top1(vo.getEventnum());
+                        po.setDay7top1Id(vo.getWarnId());
+                        po.setDay7top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay7top2(vo.getEventnum());
+                        po.setDay7top2Id(vo.getWarnId());
+                        po.setDay7top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay7top3(vo.getEventnum());
+                        po.setDay7top3Id(vo.getWarnId());
+                        po.setDay7top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 3) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay15top1(vo.getEventnum());
+                        po.setDay15top1Id(vo.getWarnId());
+                        po.setDay15top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay15top2(vo.getEventnum());
+                        po.setDay15top2Id(vo.getWarnId());
+                        po.setDay15top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay15top3(vo.getEventnum());
+                        po.setDay15top3Id(vo.getWarnId());
+                        po.setDay15top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 4) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setMonth1top1(vo.getEventnum());
+                        po.setMonth1top1Id(vo.getWarnId());
+                        po.setMonth1top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setMonth1top2(vo.getEventnum());
+                        po.setMonth1top2Id(vo.getWarnId());
+                        po.setMonth1top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setMonth1top3(vo.getEventnum());
+                        po.setMonth1top3Id(vo.getWarnId());
+                        po.setMonth1top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        }
+
+    }
+
+    /**
+     * 风机编号》Listt<EventVo> 获得统计数量map
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public Map<String, List<EventVo>> getCountMap(Date beginDate, Date endDate) {
+
+
+        Map<String, List<EventVo>> map = new HashMap<String, List<EventVo>>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+
+            List<EventVo> list =earlywarningmainService.getCountMap(beginDate, endDate);
+
+            if (!list.isEmpty()) {
+                for (EventVo vo : list) {
+                    if (map.containsKey(vo.getWtId())) {
+                        List<EventVo> ls = map.get(vo.getWtId());
+                        ls.add(vo);
+                        map.put(vo.getWtId(), ls);
+                    } else {
+                        List<EventVo> ls = new ArrayList<EventVo>();
+                        ls.add(vo);
+                        map.put(vo.getWtId(), ls);
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+    /**
+     * 风机编号》Integer 获得统计排名顺序号
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public Map<String, Integer> getCountOrderNum(Date beginDate, Date endDate) {
+
+
+        Map<String, Integer> map = new HashMap<String, Integer>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+            List<EventVo> list = earlywarningmainService.getCountOrderNum(beginDate, endDate);
+
+            if (!list.isEmpty()) {
+                String wpId = list.get(0).getWpId();
+                int i = 1;
+                for (EventVo vo : list) {
+                    if (wpId.equals(vo.getWpId())) {
+                        map.put(vo.getWtId(), i);
+                        i++;
+                    } else {
+                        wpId = vo.getWpId();
+                        i = 1;
+                        map.put(vo.getWtId(), i);
+                        i++;
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+    /**
+     * 风机编号》Integer 获得统计综合排名顺序号
+     *
+     * @return
+     */
+
+    public Map<String, Integer> getSynthesistopOrderNum(List<Windturbine> wtls, Map<String, Integer> day1ordermap, Map<String, Integer> day3ordermap, Map<String, Integer> day7ordermap, Map<String, Integer> day15ordermap, Map<String, Integer> month1ordermap) {
+
+        Map<String, Integer> synthesistopordermap = new TreeMap<String, Integer>();
+
+        if (StringUtils.notEmp(wtls) && !wtls.isEmpty() && StringUtils.notEmp(day3ordermap) && StringUtils.notEmp(day7ordermap) && StringUtils.notEmp(day15ordermap) && StringUtils.notEmp(month1ordermap)) {
+            for (Windturbine wt : wtls) {
+                int day1 = 0;
+                int day3 = 0;
+                int day7 = 0;
+                int day15 = 0;
+                int month1 = 0;
+                if (day1ordermap.containsKey(wt.getId())) {
+                    day1 = day1ordermap.get(wt.getId());
+                } else {
+                    day1 = wtls.size();
+                }
+                if (day3ordermap.containsKey(wt.getId())) {
+                    day3 = day3ordermap.get(wt.getId());
+                } else {
+                    day3 = wtls.size();
+                }
+
+                if (day7ordermap.containsKey(wt.getId())) {
+                    day7 = day7ordermap.get(wt.getId());
+                } else {
+                    day7 = wtls.size();
+                }
+
+                if (day15ordermap.containsKey(wt.getId())) {
+                    day15 = day15ordermap.get(wt.getId());
+                } else {
+                    day15 = wtls.size();
+                }
+
+                if (month1ordermap.containsKey(wt.getId())) {
+                    month1 = month1ordermap.get(wt.getId());
+                } else {
+                    month1 = wtls.size();
+                }
+                synthesistopordermap.put(wt.getId(), day1 +day3 + day7 + day15 + month1);
+            }
+        }
+
+        // 这里将map.entrySet()转换成list
+        List<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(synthesistopordermap.entrySet());
+        // 然后通过比较器来实现排序
+        Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
+            // 升序排序
+            public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
+                return o1.getValue().compareTo(o2.getValue());
+            }
+
+        });
+        synthesistopordermap = new TreeMap<String, Integer>();
+        int i = 1;
+        for (Map.Entry<String, Integer> mapping : list) {
+            // System.out.println(mapping.getKey()+":"+mapping.getValue());
+            synthesistopordermap.put(mapping.getKey(), i);
+            i++;
+        }
+        return synthesistopordermap;
+    }
+
+    /**
+     * 获得风机》报警编号》List<ShutdowneventVo>
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public Map<String, Map<String, List<ShutdowneventVo>>> getEventMap(Date beginDate, Date endDate) {
+
+
+        Map<String, Map<String, List<ShutdowneventVo>>> map = new HashMap<String, Map<String, List<ShutdowneventVo>>>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+
+            List<ShutdowneventVo> list = earlywarningmainService.getEventMap(beginDate, endDate);
+
+            if (!list.isEmpty()) {
+                for (ShutdowneventVo vo : list) {
+                    if (map.containsKey(vo.getWindTurbineId())) {
+                        Map<String, List<ShutdowneventVo>> tempmap = map.get(vo.getWindTurbineId());
+                        if (tempmap.containsKey(vo.getWarningId())) {
+                            List<ShutdowneventVo> ls = tempmap.get(vo.getWarningId());
+                            ls.add(vo);
+                            tempmap.put(vo.getWarningId(), ls);
+                        } else {
+                            List<ShutdowneventVo> ls = new ArrayList<ShutdowneventVo>();
+                            ls.add(vo);
+                            tempmap.put(vo.getWarningId(), ls);
+                        }
+                        map.put(vo.getWindTurbineId(), tempmap);
+                    } else {
+                        Map<String, List<ShutdowneventVo>> tempmap = new HashMap<String, List<ShutdowneventVo>>();
+                        List<ShutdowneventVo> ls = new ArrayList<ShutdowneventVo>();
+                        ls.add(vo);
+                        tempmap.put(vo.getWarningId(), ls);
+                        map.put(vo.getWindTurbineId(), tempmap);
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+    private void saveEarlywarningsub(Calendar cal, Map<String, Map<String, List<ShutdowneventVo>>> eventmap, Windpowerstation wp, Windturbine wt,
+                                          Earlywarningmain po, String tid,String name,String warningId) {
+        if(eventmap.containsKey(wt.getId()))
+        {
+            Map<String, List<ShutdowneventVo>> map=eventmap.get(wt.getId());
+            if(map.containsKey(warningId))
+            {
+                List<ShutdowneventVo> eventls=map.get(warningId);
+                for(ShutdowneventVo vo:eventls)
+                {
+                    Earlywarningsub subpo=new Earlywarningsub();
+                    subpo.setTid(tid);
+                    subpo.setWpid(wp.getId());
+                    subpo.setWpname(wp.getName());
+                    subpo.setWtid(wt.getId());
+                    subpo.setWtname(wt.getName());
+                    subpo.setRecodedate(cal.getTime());
+                    subpo.setName(name);
+                    subpo.setEventid(vo.getId());
+                    earlywarningsubService.insertEarlywarningsub(subpo);
+                }
+            }
+        }
+    }
+
+
+    public void deleteEarlywarningmain(Date recodedate) {
+        earlywarningmainService.deleteEarlywarningmain(recodedate);
+    }
+
+
+    public int insertEarlywarningmain(Earlywarningmain po) {
+
+        return earlywarningmainService.insertEarlywarningmain(po);
+    }
+}

+ 596 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/FailurestatisticsService.java

@@ -0,0 +1,596 @@
+package com.gyee.failurestatistics.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.gyee.failurestatistics.init.CacheContext;
+import com.gyee.failurestatistics.model.auto.*;
+import com.gyee.failurestatistics.service.auto.*;
+import com.gyee.failurestatistics.util.realtimesource.EdosUtil;
+import com.gyee.common.contant.Contant;
+import com.gyee.common.model.PointData;
+import com.gyee.common.model.StringUtils;
+
+import com.gyee.common.util.DateUtils;
+import com.gyee.common.util.RandomUtil;
+import com.gyee.common.vo.benchmark.OpeVo;
+import com.gyee.failurestatistics.vo.EventVo;
+import com.gyee.failurestatistics.vo.ShutdowneventVo;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
+import java.util.stream.Collectors;
+import java.util.Map.Entry;
+/**
+ * @ClassName : FailurestatisticsService
+ * @Description : 故障统计service
+ */
+@Service
+public class FailurestatisticsService {
+
+
+    @Resource
+    private IFailurestatisticsmainService failurestatisticsmainService;
+    @Resource
+    private IFailurestatisticssubService failurestatisticssubService;
+
+
+    public void saveFailurestatisticsmain() throws Exception {
+
+
+        Calendar cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        Date endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -1);
+        Date beginDate = cal.getTime();
+
+        Map<String, List<EventVo>> day1nummap = getCountMap(beginDate, endDate);
+        Map<String, Map<String, List<ShutdowneventVo>>> day1eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day1ordermap = getCountOrderNum(beginDate, endDate);
+
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -3);
+        beginDate = cal.getTime();
+
+        Map<String, List<EventVo>> day3nummap = getCountMap(beginDate, endDate);
+        Map<String, Map<String, List<ShutdowneventVo>>> day3eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day3ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -7);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> day7nummap = getCountMap(beginDate, endDate);
+        Map<String, Map<String, List<ShutdowneventVo>>> day7eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day7ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.DAY_OF_MONTH, -15);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> day15nummap = getCountMap(beginDate, endDate);
+        Map<String, Map<String, List<ShutdowneventVo>>> day15eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> day15ordermap = getCountOrderNum(beginDate, endDate);
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        endDate = cal.getTime();
+        cal.set(Calendar.MONTH, -1);
+        beginDate = cal.getTime();
+        Map<String, List<EventVo>> month1nummap = getCountMap(beginDate, endDate);
+        Map<String, Map<String, List<ShutdowneventVo>>> month1eventmap = getEventMap(beginDate, endDate);
+        Map<String, Integer> month1ordermap = getCountOrderNum(beginDate, endDate);
+
+
+
+
+        cal = Calendar.getInstance();
+        cal.set(Calendar.HOUR_OF_DAY, 0);
+        cal.set(Calendar.MINUTE, 0);
+        cal.set(Calendar.SECOND, 0);
+        for (Windpowerstation wp : CacheContext.wpls) {
+            if (wp.getId().endsWith("FDC")) {
+
+                System.out.println("开始统计"+wp.getName()+"故障排名和次数统计");
+                List<Windturbine> wtls = CacheContext.wtsmap.get(wp.getId());
+                Map<String, Integer> synthesistopordermap =getSynthesistopOrderNum(wtls,day1ordermap, day3ordermap, day7ordermap, day15ordermap, month1ordermap);
+                for (Windturbine wt : wtls) {
+                    Failurestatisticsmain po = new Failurestatisticsmain();
+                    po.setWpid(wp.getId());
+                    po.setWpname(wp.getName());
+                    po.setWtid(wt.getId());
+                    po.setWtname(wt.getName());
+                    po.setRecodedate(cal.getTime());
+                    if (day1nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setFailurestatisticsmainValue(po, 0, day1nummap, wt);
+                        if (day1ordermap.containsKey(wt.getId())) {
+                            po.setDay1topnum(day1ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay1topnum(wtls.size());
+                        }
+                    }
+                    if (day3nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setFailurestatisticsmainValue(po, 1, day3nummap, wt);
+                        if (day3ordermap.containsKey(wt.getId())) {
+                            po.setDay3topnum(day3ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay3topnum(wtls.size());
+                        }
+                    }
+                    if (day7nummap.containsKey(wt.getId())) {
+                        /*********************************************************************************/
+                        setFailurestatisticsmainValue(po, 2, day7nummap, wt);
+                        if (day7ordermap.containsKey(wt.getId())) {
+                            po.setDay7topnum(day7ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay7topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+                    if (day15nummap.containsKey(wt.getId())) {
+                        setFailurestatisticsmainValue(po, 3, day15nummap, wt);
+                        if (day15ordermap.containsKey(wt.getId())) {
+                            po.setDay15topnum(day15ordermap.get(wt.getId()));
+                        } else {
+                            po.setDay15topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+                    if (month1nummap.containsKey(wt.getId())) {
+                        setFailurestatisticsmainValue(po, 4, month1nummap, wt);
+                        if (month1ordermap.containsKey(wt.getId())) {
+                            po.setMonth1topnum(month1ordermap.get(wt.getId()));
+                        } else {
+                            po.setMonth1topnum(wtls.size());
+                        }
+                    }
+                    /*********************************************************************************/
+
+
+
+
+                    if(synthesistopordermap.containsKey(wt.getId()))
+                    {
+                        po.setSynthesistopnum(synthesistopordermap.get(wt.getId()));
+                    }else
+                    {
+                        po.setSynthesistopnum(wtls.size());
+                    }
+
+                    String tid=com.gyee.failurestatistics.util.StringUtils.getUUID();
+                    po.setId(tid);
+                    insertFailurestatisticsmain(po);
+//					DAY3TOP1
+//					DAY3TOP2
+//					DAY3TOP3
+//					DAY7TOP1
+//					DAY7TOP2
+//					DAY7TOP3
+//					DAY15TOP1
+//					DAY15TOP2
+//					DAY15TOP3
+//					MONTH1TOP1
+//					MONTH1TOP2
+//					MONTH1TOP3
+                    //保存子表分类统计3天故障编号
+                    saveFailureStatisticsSub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP1", po.getDay1top1Id());
+                    saveFailureStatisticsSub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP2", po.getDay1top2Id());
+                    saveFailureStatisticsSub(cal, day1eventmap, wp, wt, po, tid, "DAY1TOP3", po.getDay1top3Id());
+
+                    //保存子表分类统计3天故障编号
+                    saveFailureStatisticsSub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP1", po.getDay3top1Id());
+                    saveFailureStatisticsSub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP2", po.getDay3top2Id());
+                    saveFailureStatisticsSub(cal, day3eventmap, wp, wt, po, tid, "DAY3TOP3", po.getDay3top3Id());
+                    //保存子表分类统计7天故障编号
+                    saveFailureStatisticsSub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP1", po.getDay7top1Id());
+                    saveFailureStatisticsSub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP2", po.getDay7top2Id());
+                    saveFailureStatisticsSub(cal, day7eventmap, wp, wt, po, tid, "DAY7TOP3", po.getDay7top3Id());
+                    //保存子表分类统计15天故障编号
+                    saveFailureStatisticsSub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP1", po.getDay15top1Id());
+                    saveFailureStatisticsSub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP2", po.getDay15top2Id());
+                    saveFailureStatisticsSub(cal, day15eventmap, wp, wt, po, tid, "DAY15TOP3", po.getDay15top3Id());
+                    //保存子表分类统计1月故障编号
+                    saveFailureStatisticsSub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP1", po.getMonth1top1Id());
+                    saveFailureStatisticsSub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP2", po.getMonth1top2Id());
+                    saveFailureStatisticsSub(cal, month1eventmap, wp, wt, po, tid, "MONTH1TOP3", po.getMonth1top3Id());
+                }
+
+            }
+            System.out.println("结束统计"+wp.getName()+"故障排名和次数统计");
+        }
+
+    }
+
+
+    /**
+     * 风机编号》Integer 获得统计综合排名顺序号
+     *
+     * @return
+     */
+
+    public Map<String, Integer> getSynthesistopOrderNum(List<Windturbine> wtls, Map<String, Integer> day1ordermap,Map<String, Integer> day3ordermap, Map<String, Integer> day7ordermap, Map<String, Integer> day15ordermap, Map<String, Integer> month1ordermap) {
+
+        Map<String, Integer> synthesistopordermap = new TreeMap<String, Integer>();
+
+        if (StringUtils.notEmp(wtls) && !wtls.isEmpty() && StringUtils.notEmp(day3ordermap) && StringUtils.notEmp(day7ordermap) && StringUtils.notEmp(day15ordermap) && StringUtils.notEmp(month1ordermap)) {
+            for (Windturbine wt : wtls) {
+                int day1 = 0;
+                int day3 = 0;
+                int day7 = 0;
+                int day15 = 0;
+                int month1 = 0;
+
+                if (day1ordermap.containsKey(wt.getId())) {
+                    day1 = day1ordermap.get(wt.getId());
+                } else {
+                    day1 = wtls.size();
+                }
+                if (day3ordermap.containsKey(wt.getId())) {
+                    day3 = day3ordermap.get(wt.getId());
+                } else {
+                    day3 = wtls.size();
+                }
+
+                if (day7ordermap.containsKey(wt.getId())) {
+                    day7 = day7ordermap.get(wt.getId());
+                } else {
+                    day7 = wtls.size();
+                }
+
+                if (day15ordermap.containsKey(wt.getId())) {
+                    day15 = day15ordermap.get(wt.getId());
+                } else {
+                    day15 = wtls.size();
+                }
+
+                if (month1ordermap.containsKey(wt.getId())) {
+                    month1 = month1ordermap.get(wt.getId());
+                } else {
+                    month1 = wtls.size();
+                }
+                synthesistopordermap.put(wt.getId(), day1+day3 + day7 + day15 + month1);
+            }
+        }
+
+        // 这里将map.entrySet()转换成list
+        List<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(synthesistopordermap.entrySet());
+        // 然后通过比较器来实现排序
+        Collections.sort(list, new Comparator<Map.Entry<String, Integer>>() {
+            // 升序排序
+            public int compare(Entry<String, Integer> o1, Entry<String, Integer> o2) {
+                return o1.getValue().compareTo(o2.getValue());
+            }
+
+        });
+        synthesistopordermap = new TreeMap<String, Integer>();
+        int i = 1;
+        for (Map.Entry<String, Integer> mapping : list) {
+            // System.out.println(mapping.getKey()+":"+mapping.getValue());
+            synthesistopordermap.put(mapping.getKey(), i);
+            i++;
+        }
+        return synthesistopordermap;
+    }
+
+    /**
+     * 复制排名前三的故障名称和故障数量
+     *
+     * @param po
+     * @param type
+     * @param nummap
+     * @param wt
+     */
+    private void setFailurestatisticsmainValue(Failurestatisticsmain po, int type, Map<String, List<EventVo>> nummap, Windturbine wt) {
+        List<EventVo> eventls = nummap.get(wt.getId());
+        int i = 1;
+        if (type == 0) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay1top1(vo.getEventnum());
+                        po.setDay1top1Id(vo.getWarnId());
+                        po.setDay1top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay1top2(vo.getEventnum());
+                        po.setDay1top2Id(vo.getWarnId());
+                        po.setDay1top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay1top3(vo.getEventnum());
+                        po.setDay1top3Id(vo.getWarnId());
+                        po.setDay1top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 1) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay3top1(vo.getEventnum());
+                        po.setDay3top1Id(vo.getWarnId());
+                        po.setDay3top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay3top2(vo.getEventnum());
+                        po.setDay3top2Id(vo.getWarnId());
+                        po.setDay3top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay3top3(vo.getEventnum());
+                        po.setDay3top3Id(vo.getWarnId());
+                        po.setDay3top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 2) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+
+                        po.setDay7top1(vo.getEventnum());
+                        po.setDay7top1Id(vo.getWarnId());
+                        po.setDay7top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay7top2(vo.getEventnum());
+                        po.setDay7top2Id(vo.getWarnId());
+                        po.setDay7top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay7top3(vo.getEventnum());
+                        po.setDay7top3Id(vo.getWarnId());
+                        po.setDay7top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 3) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setDay15top1(vo.getEventnum());
+                        po.setDay15top1Id(vo.getWarnId());
+                        po.setDay15top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setDay15top2(vo.getEventnum());
+                        po.setDay15top2Id(vo.getWarnId());
+                        po.setDay15top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setDay15top3(vo.getEventnum());
+                        po.setDay15top3Id(vo.getWarnId());
+                        po.setDay15top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        } else if (type == 4) {
+            for (EventVo vo : eventls) {
+                switch (i) {
+                    case 1:
+                        po.setMonth1top1(vo.getEventnum());
+                        po.setMonth1top1Id(vo.getWarnId());
+                        po.setMonth1top1name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 2:
+                        po.setMonth1top2(vo.getEventnum());
+                        po.setMonth1top2Id(vo.getWarnId());
+                        po.setMonth1top2name(vo.getWarnName());
+                        i++;
+                        break;
+                    case 3:
+                        po.setMonth1top3(vo.getEventnum());
+                        po.setMonth1top3Id(vo.getWarnId());
+                        po.setMonth1top3name(vo.getWarnName());
+                        i++;
+                        break;
+                    default:
+                        break;
+                }
+            }
+        }
+
+    }
+
+    /**
+     * 风机编号》Listt<EventVo> 获得统计数量map
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public Map<String, List<EventVo>> getCountMap(Date beginDate, Date endDate) {
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Map<String, List<EventVo>> map = new HashMap<String, List<EventVo>>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+
+            List<EventVo> list = failurestatisticsmainService.getCountMap(beginDate,endDate);
+
+            if (!list.isEmpty()) {
+                for (EventVo vo : list) {
+                    if (map.containsKey(vo.getWtId())) {
+                        List<EventVo> ls = map.get(vo.getWtId());
+                        ls.add(vo);
+                        map.put(vo.getWtId(), ls);
+                    } else {
+                        List<EventVo> ls = new ArrayList<EventVo>();
+                        ls.add(vo);
+                        map.put(vo.getWtId(), ls);
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+
+    /**
+     * 风机编号》Integer 获得统计排名顺序号
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    public Map<String, Integer> getCountOrderNum(Date beginDate, Date endDate) {
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Map<String, Integer> map = new HashMap<String, Integer>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+
+
+            List<EventVo> list =failurestatisticsmainService.getCountOrderNum(beginDate,endDate);
+
+            if (!list.isEmpty()) {
+                String wpId = list.get(0).getWpId();
+                int i = 1;
+                for (EventVo vo : list) {
+                    if (wpId.equals(vo.getWpId())) {
+                        map.put(vo.getWtId(), i);
+                        i++;
+                    } else {
+                        wpId = vo.getWpId();
+                        i = 1;
+                        map.put(vo.getWtId(), i);
+                        i++;
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+
+    /**
+     * 获得风机》报警编号》List<ShutdowneventVo>
+     *
+     * @param beginDate
+     * @param endDate
+     * @return
+     */
+    @SuppressWarnings({ "unchecked", "rawtypes" })
+    public Map<String, Map<String, List<ShutdowneventVo>>> getEventMap(Date beginDate, Date endDate) {
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+        Map<String, Map<String, List<ShutdowneventVo>>> map = new HashMap<String, Map<String, List<ShutdowneventVo>>>();
+
+        if (StringUtils.notEmp(beginDate) && StringUtils.notEmp(endDate)) {
+
+            List<ShutdowneventVo> list =failurestatisticsmainService.getEventMap(beginDate,endDate);
+
+            if (!list.isEmpty()) {
+                for (ShutdowneventVo vo : list) {
+                    if (map.containsKey(vo.getWindTurbineId())) {
+                        Map<String, List<ShutdowneventVo>> tempmap = map.get(vo.getWindTurbineId());
+                        if (tempmap.containsKey(vo.getWarningId())) {
+                            List<ShutdowneventVo> ls = tempmap.get(vo.getWarningId());
+                            ls.add(vo);
+                            tempmap.put(vo.getWarningId(), ls);
+                        } else {
+                            List<ShutdowneventVo> ls = new ArrayList<ShutdowneventVo>();
+                            ls.add(vo);
+                            tempmap.put(vo.getWarningId(), ls);
+                        }
+                        map.put(vo.getWindTurbineId(), tempmap);
+                    } else {
+                        Map<String, List<ShutdowneventVo>> tempmap = new HashMap<String, List<ShutdowneventVo>>();
+                        List<ShutdowneventVo> ls = new ArrayList<ShutdowneventVo>();
+                        ls.add(vo);
+                        tempmap.put(vo.getWarningId(), ls);
+                        map.put(vo.getWindTurbineId(), tempmap);
+                    }
+
+                }
+            }
+
+        }
+
+        return map;
+    }
+
+
+    private void saveFailureStatisticsSub(Calendar cal, Map<String, Map<String, List<ShutdowneventVo>>> eventmap, Windpowerstation wp, Windturbine wt,
+                                          Failurestatisticsmain po, String tid,String name,String warningId) {
+        if(eventmap.containsKey(wt.getId()))
+        {
+            Map<String, List<ShutdowneventVo>> map=eventmap.get(wt.getId());
+            if(map.containsKey(warningId))
+            {
+                List<ShutdowneventVo> eventls=map.get(warningId);
+                for(ShutdowneventVo vo:eventls)
+                {
+                    Failurestatisticssub  subpo=new Failurestatisticssub();
+                    subpo.setId(StringUtils.getUUID());
+                    subpo.setTid(tid);
+                    subpo.setWpid(wp.getId());
+                    subpo.setWpname(wp.getName());
+                    subpo.setWtid(wt.getId());
+                    subpo.setWtname(wt.getName());
+                    subpo.setRecodedate(cal.getTime());
+                    subpo.setName(name);
+                    subpo.setEventid(vo.getId());
+                    failurestatisticssubService.insertFailurestatisticssub(subpo);
+                }
+            }
+        }
+    }
+
+
+    public void deleteFailurestatisticsmain(Date recodedate) {
+        failurestatisticsmainService.deleteFailurestatisticsmain(recodedate);
+    }
+
+
+    public int insertFailurestatisticsmain(Failurestatisticsmain po) {
+
+        return failurestatisticsmainService.insertFailurestatisticsmain(po);
+    }
+}

File diff suppressed because it is too large
+ 452 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/PartpowerstatticsService.java


+ 31 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEarlywarningmainService.java

@@ -0,0 +1,31 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Earlywarningmain;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Earlywarningmain;
+import com.gyee.failurestatistics.vo.EventVo;
+import com.gyee.failurestatistics.vo.ShutdowneventVo;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IEarlywarningmainService extends IService<Earlywarningmain> {
+
+    public int deleteEarlywarningmain(Date recodedate);
+
+    public int insertEarlywarningmain(Earlywarningmain earlywarningmain);
+
+    public List<EventVo> getCountMap(Date beginDate, Date endDate);
+
+    public List<EventVo> getCountOrderNum(Date beginDate, Date endDate);
+
+    public List<ShutdowneventVo> getEventMap(Date beginDate, Date endDate);
+}

+ 22 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEarlywarningsubService.java

@@ -0,0 +1,22 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Earlywarningsub;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Earlywarningsub;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IEarlywarningsubService extends IService<Earlywarningsub> {
+
+    public int deleteEarlywarningsub(Date recodedate);
+
+    public int insertEarlywarningsub(Earlywarningsub earlywarningsub);
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IEquipmentmodelService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Equipmentmodel;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-11
+ */
+public interface IEquipmentmodelService extends IService<Equipmentmodel> {
+
+}

+ 35 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IFailurestatisticsmainService.java

@@ -0,0 +1,35 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.mapper.auto.FailurestatisticsmainMapper;
+import com.gyee.failurestatistics.model.auto.Failurestatisticsmain;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.vo.EventVo;
+import com.gyee.failurestatistics.vo.ShutdowneventVo;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+@Service
+public interface IFailurestatisticsmainService extends IService<Failurestatisticsmain> {
+
+    public int deleteFailurestatisticsmain(Date recodedate);
+
+    public int insertFailurestatisticsmain(Failurestatisticsmain failurestatisticsmain);
+
+    public List<EventVo> getCountMap(Date beginDate, Date endDate);
+
+    public List<EventVo> getCountOrderNum(Date beginDate, Date endDate);
+
+    public List<ShutdowneventVo> getEventMap(Date beginDate, Date endDate);
+}

+ 22 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IFailurestatisticssubService.java

@@ -0,0 +1,22 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Failurestatisticsmain;
+import com.gyee.failurestatistics.model.auto.Failurestatisticssub;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IFailurestatisticssubService extends IService<Failurestatisticssub> {
+
+    public int deleteFailurestatisticssub(Date recodedate);
+
+    public int insertFailurestatisticssub(Failurestatisticssub failurestatisticssub);
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/ILineService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Line;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+public interface ILineService extends IService<Line> {
+
+}

+ 22 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartpowerstatticsmainService.java

@@ -0,0 +1,22 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Partpowerstatticsmain;
+import com.gyee.failurestatistics.model.auto.Partpowerstatticsmain;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IPartpowerstatticsmainService extends IService<Partpowerstatticsmain> {
+
+    public int deletePartpowerstatticsmain(Date recodedate);
+
+    public int insertPartpowerstatticsmain(Partpowerstatticsmain partpowerstatticsmain);
+}

+ 22 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartpowerstatticssubService.java

@@ -0,0 +1,22 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Partpowerstatticssub;
+import com.gyee.failurestatistics.model.auto.Partpowerstatticssub;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Date;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IPartpowerstatticssubService extends IService<Partpowerstatticssub> {
+
+    public int deletePartpowerstatticssub(Date recodedate);
+
+    public int insertPartpowerstatticssub(Partpowerstatticssub partpowerstatticssub);
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartstatisticsmainService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Partstatisticsmain;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IPartstatisticsmainService extends IService<Partstatisticsmain> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IPartstatisticssubService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Partstatisticssub;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IPartstatisticssubService extends IService<Partstatisticssub> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IParttemperaturemainService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Parttemperaturemain;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IParttemperaturemainService extends IService<Parttemperaturemain> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IParttemperaturesubService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Parttemperaturesub;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IParttemperaturesubService extends IService<Parttemperaturesub> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IProjectService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Project;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-21
+ */
+public interface IProjectService extends IService<Project> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerinfoday3Service.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Windpowerinfoday3;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+public interface IWindpowerinfoday3Service extends IService<Windpowerinfoday3> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerinfodayService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Windpowerinfoday;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-07-26
+ */
+public interface IWindpowerinfodayService extends IService<Windpowerinfoday> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerstationService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.gyee.failurestatistics.model.auto.Windpowerstation;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 谢生杰
+ * @since 2021-06-01
+ */
+public interface IWindpowerstationService extends IService<Windpowerstation> {
+
+}

+ 16 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindpowerstationtestingpointService.java

@@ -0,0 +1,16 @@
+package com.gyee.failurestatistics.service.auto;
+
+import com.gyee.failurestatistics.model.auto.Windpowerstationtestingpoint;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author 石林
+ * @since 2022-01-10
+ */
+public interface IWindpowerstationtestingpointService extends IService<Windpowerstationtestingpoint> {
+
+}

+ 0 - 0
realtime/failurestatistics-server/src/main/java/com/gyee/failurestatistics/service/auto/IWindturbineService.java


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