فهرست منبع

新增:
1、生成水表每天和每月数据。
2、生成电表每天和每月数据。

zhuoning 2 سال پیش
والد
کامیت
1d56825e58
49فایلهای تغییر یافته به همراه1640 افزوده شده و 85 حذف شده
  1. 2 0
      huimv-env-platform/.idea/compiler.xml
  2. 1 0
      huimv-env-platform/.idea/encodings.xml
  3. 77 63
      huimv-env-platform/.idea/workspace.xml
  4. 21 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvElectricityDayController.java
  5. 21 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvElectricityMonthController.java
  6. 21 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvWaterDayController.java
  7. 21 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvWaterMonthController.java
  8. 56 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvElectricityDay.java
  9. 58 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvElectricityMonth.java
  10. 54 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvWaterDay.java
  11. 56 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvWaterMonth.java
  12. 16 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvElectricityDayMapper.java
  13. 16 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvElectricityMonthMapper.java
  14. 16 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvWaterDayMapper.java
  15. 16 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvWaterMonthMapper.java
  16. 28 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvElectricityDayMapper.xml
  17. 29 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvElectricityMonthMapper.xml
  18. 27 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvWaterDayMapper.xml
  19. 28 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvWaterMonthMapper.xml
  20. 26 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvElectricityDayService.java
  21. 25 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvElectricityMonthService.java
  22. 33 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvWaterDayService.java
  23. 27 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvWaterMonthService.java
  24. 98 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityDayServiceImpl.java
  25. 93 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityMonthServiceImpl.java
  26. 99 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterDayServiceImpl.java
  27. 98 0
      huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterMonthServiceImpl.java
  28. 28 17
      huimv-env-platform/huimv-env-common/src/test/java/com/huimv/env/common/CodeGenerator.java
  29. 6 0
      huimv-env-platform/huimv-env-device/pom.xml
  30. 2 0
      huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/HuimvDeviceApplication.java
  31. 13 1
      huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/listener/DeviceListener.java
  32. 1 1
      huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/listener/SensorListener.java
  33. 8 0
      huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/service/IDeviceService.java
  34. 80 2
      huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/service/impl/DeviceServiceImpl.java
  35. 21 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterDayController.java
  36. 21 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterMonthController.java
  37. 54 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/entity/EnvWaterDay.java
  38. 56 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/entity/EnvWaterMonth.java
  39. 16 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/EnvWaterDayMapper.java
  40. 16 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/EnvWaterMonthMapper.java
  41. 27 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/xml/EnvWaterDayMapper.xml
  42. 28 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/xml/EnvWaterMonthMapper.xml
  43. 16 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/EnvWaterDayService.java
  44. 16 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/EnvWaterMonthService.java
  45. 20 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/impl/EnvWaterDayServiceImpl.java
  46. 20 0
      huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/impl/EnvWaterMonthServiceImpl.java
  47. 1 1
      huimv-env-platform/huimv-env-manage/src/main/resources/application-prod.yml
  48. 126 0
      huimv-env-platform/huimv-env-manage/src/test/java/com/huimv/env/manage/CodeGenerator.java
  49. 1 0
      huimv-env-platform/pom.xml

+ 2 - 0
huimv-env-platform/.idea/compiler.xml

@@ -7,6 +7,7 @@
         <sourceOutputDir name="target/generated-sources/annotations" />
         <sourceTestOutputDir name="target/generated-test-sources/test-annotations" />
         <outputRelativeToContentRoot value="true" />
+        <module name="huimv-env-lamp" />
         <module name="huimv-env-input" />
         <module name="huimv-env-common" />
         <module name="huimv-env-manage" />
@@ -19,6 +20,7 @@
       <module name="huimv-env-common" options="-parameters" />
       <module name="huimv-env-device" options="-parameters" />
       <module name="huimv-env-input" options="-parameters" />
+      <module name="huimv-env-lamp" options="-parameters" />
       <module name="huimv-env-manage" options="-parameters" />
     </option>
   </component>

+ 1 - 0
huimv-env-platform/.idea/encodings.xml

@@ -4,6 +4,7 @@
     <file url="file://$PROJECT_DIR$/huimv-env-common/src/main/java" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/huimv-env-device/src/main/java" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/huimv-env-input/src/main/java" charset="UTF-8" />
+    <file url="file://$PROJECT_DIR$/huimv-env-lamp/src/main/java" charset="UTF-8" />
     <file url="file://$PROJECT_DIR$/huimv-env-manage/src/main/java" charset="UTF-8" />
     <file url="PROJECT" charset="UTF-8" />
   </component>

+ 77 - 63
huimv-env-platform/.idea/workspace.xml

@@ -1,11 +1,19 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
   <component name="ChangeListManager">
-    <list default="true" id="aea4e25b-646a-4ad1-9dc9-156d47497795" name="Default Changelist" comment="修改推送故障类型">
+    <list default="true" id="aea4e25b-646a-4ad1-9dc9-156d47497795" name="Default Changelist" comment="优化保温箱接收数据代码">
+      <change beforePath="$PROJECT_DIR$/.idea/compiler.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/.idea/encodings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/huimv-env-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/resources/conf/config.properties" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/resources/conf/config.properties" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/huimv-env-input/src/main/java/com/huimv/env/input/server/EnvInputServerHandler.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-input/src/main/java/com/huimv/env/input/server/EnvInputServerHandler.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-common/src/test/java/com/huimv/env/common/CodeGenerator.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-common/src/test/java/com/huimv/env/common/CodeGenerator.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/pom.xml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/HuimvDeviceApplication.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/HuimvDeviceApplication.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/listener/DeviceListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/listener/DeviceListener.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/listener/SensorListener.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/listener/SensorListener.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/service/IDeviceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/service/IDeviceService.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/service/impl/DeviceServiceImpl.java" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-device/src/main/java/com/huimv/env/device/service/impl/DeviceServiceImpl.java" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/huimv-env-manage/src/main/resources/application-prod.yml" beforeDir="false" afterPath="$PROJECT_DIR$/huimv-env-manage/src/main/resources/application-prod.yml" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/pom.xml" beforeDir="false" afterPath="$PROJECT_DIR$/pom.xml" afterDir="false" />
     </list>
     <option name="SHOW_DIALOG" value="false" />
     <option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -98,11 +106,21 @@
     <property name="settings.editor.selected.configurable" value="File.Encoding" />
   </component>
   <component name="RecentsManager">
+    <key name="MoveFile.RECENT_KEYS">
+      <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\huimv-env-device\src\main\resources\config" />
+    </key>
     <key name="MoveClassesOrPackagesDialog.RECENTS_KEY">
       <recent name="com.huimv.env.device.service" />
       <recent name="com.huimv.env.common.service" />
       <recent name="com.huimv.env.input" />
     </key>
+    <key name="CopyClassDialog.RECENTS_KEY">
+      <recent name="com.huimv.env.common" />
+      <recent name="com.huimv.env.manage" />
+      <recent name="com.huimv.env.device.producer" />
+      <recent name="com.huimv.env.common.utils" />
+      <recent name="com.huimv.env.device.config" />
+    </key>
     <key name="CopyFile.RECENT_KEYS">
       <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\huimv-env-input\src\main\resources" />
       <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\huimv-env-device\src\main\resources" />
@@ -110,24 +128,14 @@
       <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\src\main\resources" />
       <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\huimv-env-common\src\main\java\com\huimv\env\common\config" />
     </key>
-    <key name="CopyClassDialog.RECENTS_KEY">
-      <recent name="com.huimv.env.device.producer" />
-      <recent name="com.huimv.env.common.utils" />
-      <recent name="com.huimv.env.device.config" />
-      <recent name="com.huimv.env.input.service" />
-      <recent name="com.huimv.env.input.service.impl" />
-    </key>
-    <key name="MoveFile.RECENT_KEYS">
-      <recent name="D:\idea6\huimv.env.platform\huimv-env-platform\huimv-env-device\src\main\resources\config" />
-    </key>
   </component>
-  <component name="RunManager" selected="Spring Boot.HuimvDeviceApplication">
-    <configuration name="HuimvEnvInputApplication" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
-      <option name="MAIN_CLASS_NAME" value="com.huimv.env.input.HuimvEnvInputApplication" />
-      <module name="huimv-env-input" />
+  <component name="RunManager" selected="Application.CodeGenerator (1)">
+    <configuration name="CodeGenerator (1)" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="com.huimv.env.common.CodeGenerator" />
+      <module name="huimv-env-common" />
       <extension name="coverage">
         <pattern>
-          <option name="PATTERN" value="com.huimv.env.input.*" />
+          <option name="PATTERN" value="com.huimv.env.common.*" />
           <option name="ENABLED" value="true" />
         </pattern>
       </extension>
@@ -135,34 +143,28 @@
         <option name="Make" enabled="true" />
       </method>
     </configuration>
-    <configuration name="DeviceTest.test1" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
-      <module name="huimv-env-device" />
+    <configuration name="CodeGenerator" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="com.huimv.env.manage.CodeGenerator" />
+      <module name="huimv-env-manage" />
       <extension name="coverage">
         <pattern>
-          <option name="PATTERN" value="com.huimv.env.device.service.*" />
+          <option name="PATTERN" value="com.huimv.env.manage.*" />
           <option name="ENABLED" value="true" />
         </pattern>
       </extension>
-      <option name="PACKAGE_NAME" value="com.huimv.env.device.service" />
-      <option name="MAIN_CLASS_NAME" value="com.huimv.env.device.service.DeviceTest" />
-      <option name="METHOD_NAME" value="test1" />
-      <option name="TEST_OBJECT" value="method" />
       <method v="2">
         <option name="Make" enabled="true" />
       </method>
     </configuration>
-    <configuration name="DeviceTest.test2" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
-      <module name="huimv-env-device" />
+    <configuration name="HuimvEnvInputApplication" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
+      <option name="MAIN_CLASS_NAME" value="com.huimv.env.input.HuimvEnvInputApplication" />
+      <module name="huimv-env-input" />
       <extension name="coverage">
         <pattern>
-          <option name="PATTERN" value="com.huimv.env.device.service.*" />
+          <option name="PATTERN" value="com.huimv.env.input.*" />
           <option name="ENABLED" value="true" />
         </pattern>
       </extension>
-      <option name="PACKAGE_NAME" value="com.huimv.env.device.service" />
-      <option name="MAIN_CLASS_NAME" value="com.huimv.env.device.service.DeviceTest" />
-      <option name="METHOD_NAME" value="test2" />
-      <option name="TEST_OBJECT" value="method" />
       <method v="2">
         <option name="Make" enabled="true" />
       </method>
@@ -210,13 +212,20 @@
         <option name="Make" enabled="true" />
       </method>
     </configuration>
+    <configuration name="HuimvLampInputApplication" type="SpringBootApplicationConfigurationType" factoryName="Spring Boot">
+      <module name="huimv-env-lamp" />
+      <option name="SPRING_BOOT_MAIN_CLASS" value="com.huimv.env.lamp.HuimvLampInputApplication" />
+      <method v="2">
+        <option name="Make" enabled="true" />
+      </method>
+    </configuration>
     <recent_temporary>
       <list>
+        <item itemvalue="Application.CodeGenerator (1)" />
         <item itemvalue="Spring Boot.HuimvDeviceApplication" />
+        <item itemvalue="Application.CodeGenerator" />
         <item itemvalue="Application.HuimvEnvInputApplication" />
         <item itemvalue="JUnit.DeviceTest.test3" />
-        <item itemvalue="JUnit.DeviceTest.test2" />
-        <item itemvalue="JUnit.DeviceTest.test1" />
       </list>
     </recent_temporary>
   </component>
@@ -267,6 +276,7 @@
       <workItem from="1662538991378" duration="854000" />
       <workItem from="1663405853545" duration="628000" />
       <workItem from="1663490929068" duration="1954000" />
+      <workItem from="1666317958151" duration="17800000" />
     </task>
     <task id="LOCAL-00001" summary="新建环境控制平台">
       <created>1660656813145</created>
@@ -482,18 +492,18 @@
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="552" y="181" key="#Assign_Data_Sources/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661413248338" />
-    <state x="552" y="181" key="#Project_Structure" timestamp="1660875950290">
+    <state x="552" y="181" key="#Project_Structure" timestamp="1666259971505">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
-    <state x="552" y="181" key="#Project_Structure/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1660875950290" />
+    <state x="552" y="181" key="#Project_Structure/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666259971505" />
     <state x="552" y="181" key="#com.intellij.execution.impl.EditConfigurationsDialog" timestamp="1660731614165">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="552" y="181" key="#com.intellij.execution.impl.EditConfigurationsDialog/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1660731614165" />
-    <state x="765" y="228" key="#com.intellij.ide.util.MemberChooser" timestamp="1660902545903">
+    <state x="765" y="228" key="#com.intellij.ide.util.MemberChooser" timestamp="1666333104853">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
-    <state x="765" y="228" key="#com.intellij.ide.util.MemberChooser/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1660902545903" />
+    <state x="765" y="228" key="#com.intellij.ide.util.MemberChooser/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666333104853" />
     <state x="726" y="386" width="663" height="273" key="#com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesDialog.classes" timestamp="1660877046428">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
@@ -514,46 +524,46 @@
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="740" y="278" key="FileChooserDialogImpl/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661151361195" />
-    <state width="1877" height="315" key="GridCell.Tab.0.bottom" timestamp="1663492267197">
+    <state width="1877" height="2" key="GridCell.Tab.0.bottom" timestamp="1666341876903">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.0.bottom/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951986" />
-    <state width="1877" height="315" key="GridCell.Tab.0.bottom/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1663492267197" />
-    <state width="1877" height="315" key="GridCell.Tab.0.center" timestamp="1663492267197">
+    <state width="1877" height="2" key="GridCell.Tab.0.bottom/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666341876903" />
+    <state width="1877" height="2" key="GridCell.Tab.0.center" timestamp="1666341876903">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.0.center/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951985" />
-    <state width="1877" height="315" key="GridCell.Tab.0.center/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1663492267197" />
-    <state width="1877" height="315" key="GridCell.Tab.0.left" timestamp="1663492267197">
+    <state width="1877" height="2" key="GridCell.Tab.0.center/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666341876903" />
+    <state width="1877" height="2" key="GridCell.Tab.0.left" timestamp="1666341876903">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.0.left/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951985" />
-    <state width="1877" height="315" key="GridCell.Tab.0.left/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1663492267197" />
-    <state width="1877" height="315" key="GridCell.Tab.0.right" timestamp="1663492267197">
+    <state width="1877" height="2" key="GridCell.Tab.0.left/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666341876903" />
+    <state width="1877" height="2" key="GridCell.Tab.0.right" timestamp="1666341876903">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.0.right/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951985" />
-    <state width="1877" height="315" key="GridCell.Tab.0.right/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1663492267197" />
-    <state width="1877" height="315" key="GridCell.Tab.1.bottom" timestamp="1661594951987">
-      <screen x="-1920" y="0" width="1920" height="1040" />
+    <state width="1877" height="2" key="GridCell.Tab.0.right/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666341876903" />
+    <state width="1877" height="302" key="GridCell.Tab.1.bottom" timestamp="1666332730986">
+      <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.1.bottom/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951987" />
-    <state width="1877" height="315" key="GridCell.Tab.1.bottom/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661146435465" />
-    <state width="1877" height="315" key="GridCell.Tab.1.center" timestamp="1661594951987">
-      <screen x="-1920" y="0" width="1920" height="1040" />
+    <state width="1877" height="302" key="GridCell.Tab.1.bottom/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666332730986" />
+    <state width="1877" height="302" key="GridCell.Tab.1.center" timestamp="1666332730986">
+      <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.1.center/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951987" />
-    <state width="1877" height="315" key="GridCell.Tab.1.center/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661146435463" />
-    <state width="1877" height="315" key="GridCell.Tab.1.left" timestamp="1661594951987">
-      <screen x="-1920" y="0" width="1920" height="1040" />
+    <state width="1877" height="302" key="GridCell.Tab.1.center/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666332730986" />
+    <state width="1877" height="302" key="GridCell.Tab.1.left" timestamp="1666332730986">
+      <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.1.left/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951987" />
-    <state width="1877" height="315" key="GridCell.Tab.1.left/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661146435462" />
-    <state width="1877" height="315" key="GridCell.Tab.1.right" timestamp="1661594951987">
-      <screen x="-1920" y="0" width="1920" height="1040" />
+    <state width="1877" height="302" key="GridCell.Tab.1.left/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666332730986" />
+    <state width="1877" height="302" key="GridCell.Tab.1.right" timestamp="1666332730986">
+      <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state width="1877" height="315" key="GridCell.Tab.1.right/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594951987" />
-    <state width="1877" height="315" key="GridCell.Tab.1.right/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661146435464" />
+    <state width="1877" height="302" key="GridCell.Tab.1.right/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666332730986" />
     <state x="574" y="255" key="JpaSupport:com.ifengxue.plugin.gui.AutoGeneratorSettingsDialog" timestamp="1660903124149">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
@@ -574,11 +584,15 @@
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="552" y="256" key="Vcs.Push.Dialog.v2/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1661926654483" />
-    <state x="754" y="438" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2" timestamp="1663492895080">
+    <state x="754" y="438" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2" timestamp="1666344670853">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="-1166" y="438" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-1920.0.1920.1040/0.0.1920.1040@-1920.0.1920.1040" timestamp="1661594947139" />
-    <state x="754" y="438" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1663492895080" />
+    <state x="754" y="438" key="com.intellij.openapi.vcs.update.UpdateOrStatusOptionsDialogupdate-v2/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666344670853" />
+    <state x="-1779" y="0" width="1323" height="999" key="dock-window-1" timestamp="1666320788567">
+      <screen x="-1920" y="0" width="1920" height="1040" />
+    </state>
+    <state x="-1779" y="0" width="1323" height="999" key="dock-window-1/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666320788567" />
     <state x="580" y="246" width="759" height="548" key="find.popup" timestamp="1662427069535">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
@@ -587,10 +601,10 @@
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
     <state x="334" y="46" key="new project wizard/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1660737465619" />
-    <state x="663" y="152" key="refactoring.ChangeSignatureDialog" timestamp="1660901595950">
+    <state x="663" y="152" key="refactoring.ChangeSignatureDialog" timestamp="1666339863274">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>
-    <state x="663" y="152" key="refactoring.ChangeSignatureDialog/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1660901595950" />
+    <state x="663" y="152" key="refactoring.ChangeSignatureDialog/-1920.0.1920.1040/0.0.1920.1040@0.0.1920.1040" timestamp="1666339863274" />
     <state x="623" y="225" width="672" height="678" key="search.everywhere.popup" timestamp="1660827351945">
       <screen x="0" y="0" width="1920" height="1040" />
     </state>

+ 21 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvElectricityDayController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.common.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@RestController
+@RequestMapping("/env-electricity-day")
+public class EnvElectricityDayController {
+
+}
+

+ 21 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvElectricityMonthController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.common.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@RestController
+@RequestMapping("/env-electricity-month")
+public class EnvElectricityMonthController {
+
+}
+

+ 21 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvWaterDayController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.common.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@RestController
+@RequestMapping("/env-water-day")
+public class EnvWaterDayController {
+
+}
+

+ 21 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/controller/EnvWaterMonthController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.common.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@RestController
+@RequestMapping("/env-water-month")
+public class EnvWaterMonthController {
+
+}
+

+ 56 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvElectricityDay.java

@@ -0,0 +1,56 @@
+package com.huimv.env.common.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvElectricityDay implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal dayElectricity;
+
+    private Date addDate;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private BigDecimal startElectricity;
+
+    private BigDecimal endElectricity;
+
+    private Date startTime;
+
+    private Date endTime;
+
+    private BigDecimal linkRelativeRatio;
+
+
+}

+ 58 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvElectricityMonth.java

@@ -0,0 +1,58 @@
+package com.huimv.env.common.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvElectricityMonth implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal monthElectricity;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private Integer month;
+
+    private Integer year;
+
+    private Date startTime;
+
+    private Date endTime;
+
+    private BigDecimal startElectricity;
+
+    private BigDecimal endElectricity;
+
+    private BigDecimal linkRelativeRatio;
+
+
+}

+ 54 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvWaterDay.java

@@ -0,0 +1,54 @@
+package com.huimv.env.common.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvWaterDay implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal dayWater;
+
+    private Date addDate;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private BigDecimal startWater;
+
+    private BigDecimal endWater;
+
+    private Date startTime;
+
+    private Date endTime;
+
+    private BigDecimal linkRelativeRatio;
+}

+ 56 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/entity/EnvWaterMonth.java

@@ -0,0 +1,56 @@
+package com.huimv.env.common.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvWaterMonth implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal monthWater;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private Integer month;
+
+    private Integer year;
+
+    private Date startTime;
+
+    private Date endTime;
+
+    private BigDecimal startWater;
+
+    private BigDecimal endWater;
+
+    private BigDecimal linkRelativeRatio;
+}

+ 16 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvElectricityDayMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.common.mapper;
+
+import com.huimv.env.common.entity.EnvElectricityDay;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+public interface EnvElectricityDayMapper extends BaseMapper<EnvElectricityDay> {
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvElectricityMonthMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.common.mapper;
+
+import com.huimv.env.common.entity.EnvElectricityMonth;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+public interface EnvElectricityMonthMapper extends BaseMapper<EnvElectricityMonth> {
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvWaterDayMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.common.mapper;
+
+import com.huimv.env.common.entity.EnvWaterDay;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterDayMapper extends BaseMapper<EnvWaterDay> {
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/EnvWaterMonthMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.common.mapper;
+
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterMonthMapper extends BaseMapper<EnvWaterMonth> {
+
+}

+ 28 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvElectricityDayMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.common.mapper.EnvElectricityDayMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.common.entity.EnvElectricityDay">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="day_electricity" property="dayElectricity" />
+        <result column="add_date" property="addDate" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="start_water" property="startWater" />
+        <result column="end_water" property="endWater" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="link_relative_ratio" property="linkRelativeRatio" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, day_electricity, add_date, pigpen_id, unit_id, farm_code, data_unit, start_water, end_water, start_time, end_time, link_relative_ratio
+    </sql>
+
+</mapper>

+ 29 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvElectricityMonthMapper.xml

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.common.mapper.EnvElectricityMonthMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.common.entity.EnvElectricityMonth">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="month_electricity" property="monthElectricity" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="month" property="month" />
+        <result column="year" property="year" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="start_water" property="startWater" />
+        <result column="end_water" property="endWater" />
+        <result column="link_relative_ratio" property="linkRelativeRatio" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, month_electricity, pigpen_id, unit_id, farm_code, data_unit, month, year, start_time, end_time, start_water, end_water, link_relative_ratio
+    </sql>
+
+</mapper>

+ 27 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvWaterDayMapper.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.common.mapper.EnvWaterDayMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.common.entity.EnvWaterDay">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="day_water" property="dayWater" />
+        <result column="add_date" property="addDate" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="start_warter" property="startWarter" />
+        <result column="end_warter" property="endWarter" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, day_water, add_date, pigpen_id, unit_id, farm_code, data_unit, start_warter, end_warter, start_time, end_time
+    </sql>
+
+</mapper>

+ 28 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/mapper/xml/EnvWaterMonthMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.common.mapper.EnvWaterMonthMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.common.entity.EnvWaterMonth">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="month_water" property="monthWater" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="month" property="month" />
+        <result column="year" property="year" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="start_water" property="startWater" />
+        <result column="end_water" property="endWater" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, month_water, pigpen_id, unit_id, farm_code, data_unit, month, year, start_time, end_time, start_water, end_water
+    </sql>
+
+</mapper>

+ 26 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvElectricityDayService.java

@@ -0,0 +1,26 @@
+package com.huimv.env.common.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvElectricityDay;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.sql.Date;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+public interface EnvElectricityDayService extends IService<EnvElectricityDay> {
+
+    EnvElectricityDay getDayElectricityConsumption(String farmCode, String deviceCode, String sensorSn, Date todayDate);
+
+    void saveDayElectricity(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    void updateDayElectricity(EnvElectricityDay envElectricityDay, JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+}

+ 25 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvElectricityMonthService.java

@@ -0,0 +1,25 @@
+package com.huimv.env.common.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvElectricityMonth;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+public interface EnvElectricityMonthService extends IService<EnvElectricityMonth> {
+
+    EnvElectricityMonth getMonthElectricityConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month);
+
+    void saveMonthElectricity(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, String year, String month, String farmCode);
+
+    void updateMonthElectricity(EnvElectricityMonth envElectricityMonth, JSONObject dataJo, Timestamp nowTimestamp);
+}

+ 33 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvWaterDayService.java

@@ -0,0 +1,33 @@
+package com.huimv.env.common.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvElectricityDay;
+import com.huimv.env.common.entity.EnvWaterDay;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.sql.Date;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterDayService extends IService<EnvWaterDay> {
+
+//    EnvWaterDay getDayElectricityConsumption(String farmCode, String deviceCode, String sensorSn, Date todayDate);
+
+    void saveDayWater(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    void updateDayWater(EnvWaterDay envWaterDay, JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    EnvWaterDay getDayWaterConsumption(String farmCode, String deviceCode, String sensorSn, Date todayDate);
+
+//    void saveDayElectricity(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+//    void updateDayElectricity(EnvElectricityDay envElectricityDay, JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+}

+ 27 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/EnvWaterMonthService.java

@@ -0,0 +1,27 @@
+package com.huimv.env.common.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterMonthService extends IService<EnvWaterMonth> {
+
+//    EnvWaterMonth getMonthElectricityConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month);
+
+    void saveMonthWater(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, String year, String month, String farmCode);
+
+    void updateMonthWater(EnvWaterMonth envWaterMonth, JSONObject dataJo, Timestamp nowTimestamp, String year, String month, String farmCode);
+
+    EnvWaterMonth getMonthWaterConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month);
+}

+ 98 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityDayServiceImpl.java

@@ -0,0 +1,98 @@
+package com.huimv.env.common.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvElectricityDay;
+import com.huimv.env.common.entity.EnvWaterDay;
+import com.huimv.env.common.mapper.EnvElectricityDayMapper;
+import com.huimv.env.common.service.EnvElectricityDayService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.sql.Date;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@Service
+public class EnvElectricityDayServiceImpl extends ServiceImpl<EnvElectricityDayMapper, EnvElectricityDay> implements EnvElectricityDayService {
+    @Resource
+    private EnvElectricityDayMapper envElectricityDayMapper;
+
+    @Override
+    public EnvElectricityDay getDayElectricityConsumption(String farmCode, String deviceCode, String sensorSn, Date todayDate) {
+        QueryWrapper<EnvElectricityDay> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.eq("add_date", todayDate);
+        return envElectricityDayMapper.selectOne(queryWrapper);
+    }
+
+    @Override
+    public void saveDayElectricity(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        String newWaterValue = dataJo.getString("value");
+        BigDecimal newElectricityBd = new BigDecimal(newWaterValue).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //获取环比
+        BigDecimal linkRelativeRatioBd = _getLinkRelativeRatio( newElectricityBd,  deviceCode,  sensorSn,  todayDate,  farmCode);
+        EnvElectricityDay envElectricityDay = new EnvElectricityDay();
+        envElectricityDay.setDeviceCode(dataJo.getString("deviceCode"));
+        envElectricityDay.setStartTime(nowTimestamp);
+        envElectricityDay.setStartElectricity(newElectricityBd);
+        envElectricityDay.setEndTime(nowTimestamp);
+        envElectricityDay.setEndElectricity(newElectricityBd);
+        envElectricityDay.setDayElectricity(new BigDecimal(0));
+        envElectricityDay.setDataUnit("立方米");
+        envElectricityDay.setSensorSn(dataJo.getInteger("sensorSn"));
+        envElectricityDay.setAddDate(todayDate);
+        envElectricityDay.setPigpenId(envDeviceRegisterEntity.getPigpenId());
+        envElectricityDay.setUnitId(envDeviceRegisterEntity.getUnitId());
+        envElectricityDay.setLinkRelativeRatio(linkRelativeRatioBd);
+        envElectricityDay.setFarmCode(farmCode);
+        int rows = envElectricityDayMapper.insert(envElectricityDay);
+        System.out.println("添加记录数="+rows);
+    }
+
+    @Override
+    public void updateDayElectricity(EnvElectricityDay envElectricityDay, JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        BigDecimal endElectricityBd = new BigDecimal(dataJo.getString("value"));
+        BigDecimal newDayElectricityBd = (endElectricityBd.subtract(envElectricityDay.getStartElectricity())).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        BigDecimal linkRelativeRatioBd = _getLinkRelativeRatio( newDayElectricityBd,  deviceCode,  sensorSn,  todayDate,  farmCode);
+        envElectricityDay.setEndTime(nowTimestamp);
+        envElectricityDay.setEndElectricity(endElectricityBd);
+        envElectricityDay.setDayElectricity(newDayElectricityBd);
+        envElectricityDay.setLinkRelativeRatio(linkRelativeRatioBd);
+        int rows = envElectricityDayMapper.updateById(envElectricityDay);
+        System.out.println("编辑记录数="+rows);
+    }
+
+    //读取环比
+    private BigDecimal _getLinkRelativeRatio(BigDecimal newElectricityBd, String deviceCode, String sensorSn, Date todayDate, String farmCode) {
+        QueryWrapper<EnvElectricityDay> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.ne("add_date", todayDate);
+        queryWrapper.orderByDesc("id");
+        queryWrapper.last("LIMIT 1");
+        EnvElectricityDay lastEnvElectricityDay = envElectricityDayMapper.selectOne(queryWrapper);
+        if(lastEnvElectricityDay == null){
+            return new BigDecimal(0);
+        }else{
+            return (newElectricityBd.subtract(lastEnvElectricityDay.getDayElectricity())).divide(lastEnvElectricityDay.getDayElectricity()).multiply(new BigDecimal(100));
+        }
+    }
+}

+ 93 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvElectricityMonthServiceImpl.java

@@ -0,0 +1,93 @@
+package com.huimv.env.common.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvElectricityMonth;
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.huimv.env.common.mapper.EnvElectricityMonthMapper;
+import com.huimv.env.common.service.EnvElectricityMonthService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-21
+ */
+@Service
+public class EnvElectricityMonthServiceImpl extends ServiceImpl<EnvElectricityMonthMapper, EnvElectricityMonth> implements EnvElectricityMonthService {
+    @Resource
+    private EnvElectricityMonthMapper envElectricityMonthMapper;
+
+    @Override
+    public EnvElectricityMonth getMonthElectricityConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month) {
+        QueryWrapper<EnvElectricityMonth> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.eq("year", year);
+        queryWrapper.eq("month",month);
+        return envElectricityMonthMapper.selectOne(queryWrapper);
+    }
+
+    @Override
+    public void saveMonthElectricity(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, String year, String month, String farmCode) {
+        String newElectricityValue = dataJo.getString("value");
+        BigDecimal newElectricityBd = new BigDecimal(newElectricityValue).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        EnvElectricityMonth envElectricityMonth = new EnvElectricityMonth();
+        envElectricityMonth.setDeviceCode(dataJo.getString("deviceCode"));
+        envElectricityMonth.setStartTime(nowTimestamp);
+        envElectricityMonth.setStartElectricity(newElectricityBd);
+        envElectricityMonth.setEndTime(nowTimestamp);
+        envElectricityMonth.setEndElectricity(newElectricityBd);
+        envElectricityMonth.setMonthElectricity(new BigDecimal(0));
+        envElectricityMonth.setDataUnit("立方米");
+        envElectricityMonth.setPigpenId(envDeviceRegisterEntity.getPigpenId());
+        envElectricityMonth.setUnitId(envDeviceRegisterEntity.getUnitId());
+        envElectricityMonth.setYear(Integer.parseInt(year));
+        envElectricityMonth.setMonth(Integer.parseInt(month));
+        envElectricityMonth.setSensorSn(dataJo.getInteger("sensorSn"));
+        envElectricityMonth.setLinkRelativeRatio(new BigDecimal(0));
+        envElectricityMonth.setFarmCode(farmCode);
+        int rows = envElectricityMonthMapper.insert(envElectricityMonth);
+        System.out.println("添加记录数="+rows);
+    }
+
+    @Override
+    public void updateMonthElectricity(EnvElectricityMonth envElectricityMonth, JSONObject dataJo, Timestamp nowTimestamp) {
+        BigDecimal endElectricityBd = new BigDecimal(dataJo.getString("value"));
+        BigDecimal newMonthElectricityBd = (endElectricityBd.subtract(envElectricityMonth.getStartElectricity())).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        BigDecimal linkRelativeRatioBd = newMonthElectricityBd.divide(envElectricityMonth.getStartElectricity()).multiply(new BigDecimal(100));
+        envElectricityMonth.setEndTime(nowTimestamp);
+        envElectricityMonth.setEndElectricity(endElectricityBd);
+        envElectricityMonth.setMonthElectricity(newMonthElectricityBd);
+        envElectricityMonth.setLinkRelativeRatio(linkRelativeRatioBd);
+        int rows = envElectricityMonthMapper.updateById(envElectricityMonth);
+        System.out.println("编辑记录数="+rows);
+    }
+
+    //读取环比
+    private BigDecimal _getLinkRelativeRatio(BigDecimal newWaterBd, String deviceCode, String sensorSn, String year, String month, String farmCode) {
+        QueryWrapper<EnvElectricityMonth> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.and(wrapper->wrapper.ne("year",year).or().ne("month",month));
+        queryWrapper.orderByDesc("id");
+        queryWrapper.last("LIMIT 1");
+        EnvElectricityMonth lastEnvElectricityMonth = envElectricityMonthMapper.selectOne(queryWrapper);
+        if(lastEnvElectricityMonth == null){
+            return new BigDecimal(0);
+        }else{
+            return (newWaterBd.subtract(lastEnvElectricityMonth.getMonthElectricity())).divide(lastEnvElectricityMonth.getMonthElectricity()).multiply(new BigDecimal(100));
+        }
+    }
+}

+ 99 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterDayServiceImpl.java

@@ -0,0 +1,99 @@
+package com.huimv.env.common.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvWaterDay;
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.huimv.env.common.mapper.EnvWaterDayMapper;
+import com.huimv.env.common.service.EnvWaterDayService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.sql.Date;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ * 服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Service
+public class EnvWaterDayServiceImpl extends ServiceImpl<EnvWaterDayMapper, EnvWaterDay> implements EnvWaterDayService {
+    @Resource
+    private EnvWaterDayMapper envWaterDayMapper;
+
+    @Override
+    public EnvWaterDay getDayWaterConsumption(String farmCode, String deviceCode, String sensorSn, Date todayDate) {
+        QueryWrapper<EnvWaterDay> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.eq("add_date", todayDate);
+        return envWaterDayMapper.selectOne(queryWrapper);
+    }
+
+    @Override
+    public void saveDayWater(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        String newWaterValue = dataJo.getString("value");
+        BigDecimal newWaterBd = new BigDecimal(newWaterValue).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //获取环比
+        BigDecimal linkRelativeRatioBd = _getLinkRelativeRatio(newWaterBd, deviceCode,  sensorSn,  todayDate,  farmCode);
+        EnvWaterDay envWaterDay = new EnvWaterDay();
+        envWaterDay.setDeviceCode(dataJo.getString("deviceCode"));
+        envWaterDay.setStartTime(nowTimestamp);
+        envWaterDay.setStartWater(newWaterBd);
+        envWaterDay.setEndTime(nowTimestamp);
+        envWaterDay.setEndWater(newWaterBd);
+        envWaterDay.setDayWater(new BigDecimal(0));
+        envWaterDay.setDataUnit("立方米");
+        envWaterDay.setSensorSn(dataJo.getInteger("sensorSn"));
+        envWaterDay.setAddDate(todayDate);
+        envWaterDay.setPigpenId(envDeviceRegisterEntity.getPigpenId());
+        envWaterDay.setUnitId(envDeviceRegisterEntity.getUnitId());
+        envWaterDay.setLinkRelativeRatio(linkRelativeRatioBd);
+        envWaterDay.setFarmCode(farmCode);
+        int rows = envWaterDayMapper.insert(envWaterDay);
+        System.out.println("添加记录数="+rows);
+    }
+
+    @Override
+    public void updateDayWater(EnvWaterDay envWaterDay, JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        BigDecimal endWaterBd = new BigDecimal(dataJo.getString("value"));
+        BigDecimal newDayWaterBd = (endWaterBd.subtract(envWaterDay.getStartWater())).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //获取环比
+        BigDecimal linkRelativeRatioBd = _getLinkRelativeRatio(newDayWaterBd, deviceCode,  sensorSn,  todayDate,  farmCode);
+        envWaterDay.setEndTime(nowTimestamp);
+        envWaterDay.setEndWater(endWaterBd);
+        envWaterDay.setDayWater(newDayWaterBd);
+        envWaterDay.setLinkRelativeRatio(linkRelativeRatioBd);
+        int rows = envWaterDayMapper.updateById(envWaterDay);
+        System.out.println("编辑记录数="+rows);
+    }
+
+    //读取环比
+    private BigDecimal _getLinkRelativeRatio(BigDecimal newWaterBd, String deviceCode, String sensorSn, Date todayDate, String farmCode) {
+        QueryWrapper<EnvWaterDay> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.ne("add_date", todayDate);
+        queryWrapper.orderByDesc("id");
+        queryWrapper.last("LIMIT 1");
+        EnvWaterDay lastEnvWaterDay = envWaterDayMapper.selectOne(queryWrapper);
+        if(lastEnvWaterDay == null){
+            return new BigDecimal(0);
+        }else{
+            return (newWaterBd.subtract(lastEnvWaterDay.getDayWater())).divide(lastEnvWaterDay.getDayWater()).multiply(new BigDecimal(100));
+        }
+    }
+}

+ 98 - 0
huimv-env-platform/huimv-env-common/src/main/java/com/huimv/env/common/service/impl/EnvWaterMonthServiceImpl.java

@@ -0,0 +1,98 @@
+package com.huimv.env.common.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.env.common.dao.entity.EnvDeviceRegisterEntity;
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.huimv.env.common.mapper.EnvWaterMonthMapper;
+import com.huimv.env.common.service.EnvWaterMonthService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.math.BigDecimal;
+import java.sql.Timestamp;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Service
+public class EnvWaterMonthServiceImpl extends ServiceImpl<EnvWaterMonthMapper, EnvWaterMonth> implements EnvWaterMonthService {
+    @Resource
+    private EnvWaterMonthMapper envWaterMonthMapper;
+
+    @Override
+    public EnvWaterMonth getMonthWaterConsumption(String farmCode, String deviceCode, String sensorSn, String year, String month) {
+        QueryWrapper<EnvWaterMonth> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.eq("year", year);
+        queryWrapper.eq("month",month);
+        return envWaterMonthMapper.selectOne(queryWrapper);
+    }
+
+    @Override
+    public void saveMonthWater(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, String year, String month, String farmCode) {
+        String newWaterValue = dataJo.getString("value");
+        BigDecimal newWaterBd = new BigDecimal(newWaterValue).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //获取月份水量环比
+        BigDecimal linkRelativeRatio = _getLinkRelativeRatio(newWaterBd,deviceCode,sensorSn,year,month,farmCode);
+        EnvWaterMonth envWaterMonth = new EnvWaterMonth();
+        envWaterMonth.setDeviceCode(deviceCode);
+        envWaterMonth.setStartTime(nowTimestamp);
+        envWaterMonth.setStartWater(newWaterBd);
+        envWaterMonth.setEndTime(nowTimestamp);
+        envWaterMonth.setEndWater(newWaterBd);
+        envWaterMonth.setMonthWater(new BigDecimal(0));
+        envWaterMonth.setDataUnit("立方米");
+        envWaterMonth.setPigpenId(envDeviceRegisterEntity.getPigpenId());
+        envWaterMonth.setUnitId(envDeviceRegisterEntity.getUnitId());
+        envWaterMonth.setYear(Integer.parseInt(year));
+        envWaterMonth.setMonth(Integer.parseInt(month));
+        envWaterMonth.setSensorSn(dataJo.getInteger("sensorSn"));
+        envWaterMonth.setLinkRelativeRatio(linkRelativeRatio);
+        envWaterMonth.setFarmCode(farmCode);
+        int rows = envWaterMonthMapper.insert(envWaterMonth);
+        System.out.println("添加记录数="+rows);
+    }
+
+    //读取环比
+    private BigDecimal _getLinkRelativeRatio(BigDecimal newWaterBd, String deviceCode, String sensorSn, String year, String month, String farmCode) {
+        QueryWrapper<EnvWaterMonth> queryWrapper = new QueryWrapper();
+        queryWrapper.eq("farm_code", farmCode);
+        queryWrapper.eq("device_code", deviceCode);
+//        queryWrapper.eq("sensor_sn",sensorSn);
+        queryWrapper.and(wrapper->wrapper.ne("year",year).or().ne("month",month));
+        queryWrapper.orderByDesc("id");
+        queryWrapper.last("LIMIT 1");
+        EnvWaterMonth lastEnvWaterMonth = envWaterMonthMapper.selectOne(queryWrapper);
+        if(lastEnvWaterMonth == null){
+            return new BigDecimal(0);
+        }else{
+            return (newWaterBd.subtract(lastEnvWaterMonth.getMonthWater())).divide(lastEnvWaterMonth.getMonthWater()).multiply(new BigDecimal(100));
+        }
+    }
+
+    @Override
+    public void updateMonthWater(EnvWaterMonth envWaterMonth, JSONObject dataJo, Timestamp nowTimestamp, String year, String month, String farmCode) {
+        BigDecimal endWaterBd = new BigDecimal(dataJo.getString("value"));
+        BigDecimal newMonthWaterBd = (endWaterBd.subtract(envWaterMonth.getStartWater())).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        BigDecimal linkRelativeRatioBd = _getLinkRelativeRatio(newMonthWaterBd,deviceCode,sensorSn,year,month,farmCode);
+        envWaterMonth.setEndTime(nowTimestamp);
+        envWaterMonth.setEndWater(endWaterBd);
+        envWaterMonth.setMonthWater(newMonthWaterBd);
+        envWaterMonth.setLinkRelativeRatio(linkRelativeRatioBd);
+        int rows = envWaterMonthMapper.updateById(envWaterMonth);
+        System.out.println("编辑记录数="+rows);
+    }
+}

+ 28 - 17
huimv-env-platform/huimv-env-common/src/test/java/com/huimv/env/common/CodeGenerator.java

@@ -1,12 +1,12 @@
 package com.huimv.env.common;
 
 /**
- * @Project : huimv.shiwan
- * @Package : com.huimv.biosafety.uface.controller
+ * @Project :
+ * @Package :
  * @Description : TODO
  * @Version : 1.0
  * @Author : ZhuoNing
- * @Create : 2020-12-25
+ * @Create :
  **/
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
@@ -22,7 +22,15 @@ import org.junit.platform.commons.util.StringUtils;
 import java.util.Scanner;
 
 public class CodeGenerator {
-
+    // user defined
+    private static String childProjectPath = "/huimv-env-common";
+    private static String rootPackage = "com.huimv.env.common";
+    private static String dbIp = "192.168.1.7";
+    private static String dbPort = "3306";
+    private static String dbName = "huimv-env-platform";
+    private static String driverName = "com.mysql.cj.jdbc.Driver";
+    private static String username = "root";
+    private static String password = "hm123456";
 
     public static String scanner(String tip) {
         Scanner scanner = new Scanner(System.in);
@@ -44,13 +52,9 @@ public class CodeGenerator {
 
         // 全局配置
         GlobalConfig gc = new GlobalConfig();
-        String projectPath = System.getProperty("user.dir");
-        //sample
-//        projectPath+="/registration-center";
-        // manager
-        projectPath+="/huimv-env-common";
-        System.out.println("projectPath>>"+projectPath);
-        gc.setOutputDir(projectPath + "/src/main/java");//设置代码生成路径
+        String rootPath = System.getProperty("user.dir");
+        System.out.println("rootPath + childProjectPath="+rootPath + childProjectPath);
+        gc.setOutputDir(rootPath + childProjectPath + "/src/main/java");//设置代码生成路径
         gc.setFileOverride(true);//是否覆盖以前文件
         gc.setOpen(false);//是否打开生成目录
         gc.setAuthor("zn");//设置项目作者名称
@@ -63,18 +67,25 @@ public class CodeGenerator {
 
         // 数据源配置
         DataSourceConfig dsc = new DataSourceConfig();
-        dsc.setUrl("jdbc:mysql://192.168.1.7:3306/huimv-demo-eartag20?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai");
-        dsc.setDriverName("com.mysql.cj.jdbc.Driver");
-        dsc.setUsername("root");
-        dsc.setPassword("hm123456");
+        //dsc.setUrl("jdbc:mysql://122.112.224.199:3306/huimv_registration_center?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai");
+        String url = "jdbc:mysql://"+dbIp+":"+dbPort+"/"+dbName+"?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai";
+        System.out.println("url="+url);
+        System.out.println("driverName="+driverName);
+        System.out.println("username="+username);
+        System.out.println("password="+password);
+        dsc.setUrl(url);
+        dsc.setDriverName(driverName);
+        dsc.setUsername(username);
+        dsc.setPassword(password);
         mpg.setDataSource(dsc);
 
         // 包配置
         PackageConfig pc = new PackageConfig();
-        pc.setParent("com.huimv.eartag2.manage2");
+        pc.setParent(rootPackage);
         pc.setMapper("mapper");
         pc.setXml("mapper.xml");
-        pc.setEntity("pojo");
+//        pc.setEntity("pojo");
+        pc.setEntity("entity");
         pc.setService("service");
         pc.setServiceImpl("service.impl");
         pc.setController("controller");

+ 6 - 0
huimv-env-platform/huimv-env-device/pom.xml

@@ -103,6 +103,12 @@
             <groupId>com.huimv</groupId>
             <artifactId>huimv-common</artifactId>
         </dependency>
+<!--        <dependency>-->
+<!--            <groupId>com.huimv</groupId>-->
+<!--            <artifactId>huimv-env-manage</artifactId>-->
+<!--            <version>0.0.1-SNAPSHOT</version>-->
+<!--            <scope>compile</scope>-->
+<!--        </dependency>-->
     </dependencies>
 
     <build>

+ 2 - 0
huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/HuimvDeviceApplication.java

@@ -1,5 +1,6 @@
 package com.huimv.env.device;
 
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.boot.autoconfigure.domain.EntityScan;
@@ -22,6 +23,7 @@ import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
 @EnableJpaRepositories(basePackages = "com.huimv.env.common.dao.repo")
 @EnableConfigurationProperties
 @SpringBootApplication
+@MapperScan("com.huimv.env.common.mapper")
 public class HuimvDeviceApplication {
     public static void main(String[] args) {
         SpringApplication.run(HuimvDeviceApplication.class, args);

+ 13 - 1
huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/listener/DeviceListener.java

@@ -88,8 +88,14 @@ public class DeviceListener {
 //        deviceService.updateSensorRegister(deviceCode, dataJo.getInteger("sensorSn"), nowTimestamp, todayDate, temp, farmCode,sensorSort);
         deviceService.sendSensorToMQ(deviceCode, dataJo.getInteger("sensorSn"), nowTimestamp, todayDate, electricityMeter, farmCode,sensorSort);
 
-        //保存电表流水数据
+        //保存实时电表流水数据
         deviceService.saveElectricityMeter(dataJo, envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
+
+        //保存每天用电量数据
+        deviceService.saveDayElectricityConsumption(dataJo,envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
+
+        //保存每月用电量数据
+        deviceService.saveMonthElectricityConsumption(dataJo,envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
     }
 
 
@@ -119,6 +125,12 @@ public class DeviceListener {
 
         //保存水表流水数据
         deviceService.saveWaterMeter(dataJo, envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
+
+        //保存每天用水量数据
+        deviceService.saveDayWaterConsumption(dataJo,envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
+
+        //保存每月用水量数据
+        deviceService.saveMonthWaterConsumption(dataJo,envDeviceRegisterEntity, nowTimestamp, todayDate, farmCode);
     }
     
     @RabbitListener(queues = Const.QUEUE_PH)

+ 1 - 1
huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/listener/SensorListener.java

@@ -29,7 +29,7 @@ public class SensorListener {
     @Autowired
     private ISensorRegisterService sensorRegisterService;
 
-    @RabbitListener(queues = Const.QUEUE_SENSOR)
+//    @RabbitListener(queues = Const.QUEUE_SENSOR)
     @RabbitHandler
     public void processTemp(Map RawMap) throws ParseException {
         System.out.println(">>>>>>接收传感器数据 RawMap>>" + RawMap.toString());

+ 8 - 0
huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/service/IDeviceService.java

@@ -34,4 +34,12 @@ public interface IDeviceService {
     void saveWaterMeter(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
 
     void saveElectricityMeter(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    void saveDayElectricityConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+//
+    void saveMonthElectricityConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    void saveDayWaterConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
+
+    void saveMonthWaterConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode);
 }

+ 80 - 2
huimv-env-platform/huimv-env-device/src/main/java/com/huimv/env/device/service/impl/DeviceServiceImpl.java

@@ -4,8 +4,11 @@ import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.fastjson.JSONObject;
 import com.huimv.env.common.dao.entity.*;
 import com.huimv.env.common.dao.repo.*;
-import com.huimv.env.common.service.IPigpenService;
-import com.huimv.env.common.service.ISensorRegisterService;
+import com.huimv.env.common.entity.EnvElectricityDay;
+import com.huimv.env.common.entity.EnvElectricityMonth;
+import com.huimv.env.common.entity.EnvWaterDay;
+import com.huimv.env.common.entity.EnvWaterMonth;
+import com.huimv.env.common.service.*;
 import com.huimv.env.common.utils.DateUtil;
 import com.huimv.env.common.utils.MathUtil;
 import com.huimv.env.common.utils.MathUtil2;
@@ -16,6 +19,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.sql.Date;
 import java.sql.Timestamp;
@@ -61,6 +65,79 @@ public class DeviceServiceImpl implements IDeviceService {
 
     @Autowired
     private EnvElectricityMeterRepo envElectricityMeterRepo;
+    @Resource
+    private EnvWaterDayService envWaterDayService;
+    @Resource
+    private EnvWaterMonthService envWaterMonthService;
+    @Resource
+    private EnvElectricityDayService envElectricityDayService;
+    @Resource
+    private EnvElectricityMonthService envElectricityMonthService;
+
+    //保存每天的用水量
+    @Override
+    public void saveDayWaterConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        System.out.println("保存每天用电数据 dataJo>>>>>>>>>>>>>>>>>>"+dataJo);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //查询每天的用水量数据
+        EnvWaterDay envWaterDay = envWaterDayService.getDayWaterConsumption(farmCode,deviceCode,sensorSn,todayDate);
+        if(envWaterDay == null){
+            envWaterDayService.saveDayWater(dataJo,envDeviceRegisterEntity,nowTimestamp,todayDate,farmCode);
+        }else{
+            envWaterDayService.updateDayWater(envWaterDay,dataJo,envDeviceRegisterEntity,nowTimestamp,todayDate,farmCode);
+        }
+    }
+
+    //保存每月的用水量
+    @Override
+    public void saveMonthWaterConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        System.out.println("保存每天用电数据 dataJo>>>>>>>>>>>>>>>>>>"+dataJo);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        DateUtil dateUtil = new DateUtil();
+        String year = dateUtil.getThisYear();
+        String month = dateUtil.getThisMonth();
+        //查询每天的用电量数据
+        EnvWaterMonth envWaterMonth = envWaterMonthService.getMonthWaterConsumption(farmCode,deviceCode,sensorSn,year,month);
+        if(envWaterMonth == null){
+            envWaterMonthService.saveMonthWater(dataJo,envDeviceRegisterEntity,nowTimestamp,year,month,farmCode);
+        }else{
+            envWaterMonthService.updateMonthWater(envWaterMonth,dataJo,nowTimestamp,year,month,farmCode);
+        }
+    }
+
+    //保存每天的用电量
+    @Override
+    public void saveDayElectricityConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        System.out.println("保存每天用电数据 dataJo>>>>>>>>>>>>>>>>>>"+dataJo);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        //查询每天的用电量数据
+        EnvElectricityDay envElectricityDay = envElectricityDayService.getDayElectricityConsumption(farmCode,deviceCode,sensorSn,todayDate);
+        if(envElectricityDay == null){
+            envElectricityDayService.saveDayElectricity(dataJo,envDeviceRegisterEntity,nowTimestamp,todayDate,farmCode);
+        }else{
+            envElectricityDayService.updateDayElectricity(envElectricityDay,dataJo,envDeviceRegisterEntity,nowTimestamp,todayDate,farmCode);
+        }
+    }
+
+    @Override
+    public void saveMonthElectricityConsumption(JSONObject dataJo, EnvDeviceRegisterEntity envDeviceRegisterEntity, Timestamp nowTimestamp, Date todayDate, String farmCode) {
+        System.out.println("保存每月用水数据 dataJo>>>>>>>>>>>>>>>>>>"+dataJo);
+        String deviceCode = dataJo.getString("deviceCode");
+        String sensorSn = dataJo.getString("sensorSn");
+        DateUtil dateUtil = new DateUtil();
+        String year = dateUtil.getThisYear();
+        String month = dateUtil.getThisMonth();
+        //查询每天的用电量数据
+        EnvElectricityMonth envElectricityMonth = envElectricityMonthService.getMonthElectricityConsumption(farmCode,deviceCode,sensorSn,year,month);
+        if(envElectricityMonth == null){
+            envElectricityMonthService.saveMonthElectricity(dataJo,envDeviceRegisterEntity,nowTimestamp,year,month,farmCode);
+        }else{
+            envElectricityMonthService.updateMonthElectricity(envElectricityMonth,dataJo,nowTimestamp);
+        }
+    }
 
     @Override
     public void sendSensorToMQ(String deviceCode, Integer sensorSn, Timestamp nowTimestamp, Date todayDate, String value, String farmCode, int sensorSort) {
@@ -248,6 +325,7 @@ public class DeviceServiceImpl implements IDeviceService {
         envElectricityMeter.setDataUnit(dataJo.getString("dataUnit"));
         envElectricityMeterRepo.saveAndFlush(envElectricityMeter);
     }
+
     //
     @Override
     public JSONObject handleAskText(String askText) {

+ 21 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterDayController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.manage.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@RestController
+@RequestMapping("/env-water-day")
+public class EnvWaterDayController {
+
+}
+

+ 21 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/controller/EnvWaterMonthController.java

@@ -0,0 +1,21 @@
+package com.huimv.env.manage.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ *  前端控制器
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@RestController
+@RequestMapping("/env-water-month")
+public class EnvWaterMonthController {
+
+}
+

+ 54 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/entity/EnvWaterDay.java

@@ -0,0 +1,54 @@
+package com.huimv.env.manage.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvWaterDay implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal dayWater;
+
+    private Date addDate;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private BigDecimal startWarter;
+
+    private BigDecimal endWarter;
+
+    private Date startTime;
+
+    private Date endTime;
+
+
+}

+ 56 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/entity/EnvWaterMonth.java

@@ -0,0 +1,56 @@
+package com.huimv.env.manage.entity;
+
+import java.math.BigDecimal;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.Version;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class EnvWaterMonth implements Serializable {
+
+    private static final long serialVersionUID=1L;
+
+      @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String deviceCode;
+
+    private Integer sensorSn;
+
+    private BigDecimal monthWater;
+
+    private String pigpenId;
+
+    private String unitId;
+
+    private String farmCode;
+
+    private String dataUnit;
+
+    private Integer month;
+
+    private Integer year;
+
+    private Date startTime;
+
+    private Date endTime;
+
+    private BigDecimal startWater;
+
+    private BigDecimal endWater;
+
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/EnvWaterDayMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.manage.mapper;
+
+import com.huimv.env.manage.entity.EnvWaterDay;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterDayMapper extends BaseMapper<EnvWaterDay> {
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/EnvWaterMonthMapper.java

@@ -0,0 +1,16 @@
+package com.huimv.env.manage.mapper;
+
+import com.huimv.env.manage.entity.EnvWaterMonth;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterMonthMapper extends BaseMapper<EnvWaterMonth> {
+
+}

+ 27 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/xml/EnvWaterDayMapper.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.manage.mapper.EnvWaterDayMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.manage.entity.EnvWaterDay">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="day_water" property="dayWater" />
+        <result column="add_date" property="addDate" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="start_warter" property="startWarter" />
+        <result column="end_warter" property="endWarter" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, day_water, add_date, pigpen_id, unit_id, farm_code, data_unit, start_warter, end_warter, start_time, end_time
+    </sql>
+
+</mapper>

+ 28 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/mapper/xml/EnvWaterMonthMapper.xml

@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.env.manage.mapper.EnvWaterMonthMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.huimv.env.manage.entity.EnvWaterMonth">
+        <id column="id" property="id" />
+        <result column="device_code" property="deviceCode" />
+        <result column="sensor_sn" property="sensorSn" />
+        <result column="month_water" property="monthWater" />
+        <result column="pigpen_id" property="pigpenId" />
+        <result column="unit_id" property="unitId" />
+        <result column="farm_code" property="farmCode" />
+        <result column="data_unit" property="dataUnit" />
+        <result column="month" property="month" />
+        <result column="year" property="year" />
+        <result column="start_time" property="startTime" />
+        <result column="end_time" property="endTime" />
+        <result column="start_water" property="startWater" />
+        <result column="end_water" property="endWater" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, device_code, sensor_sn, month_water, pigpen_id, unit_id, farm_code, data_unit, month, year, start_time, end_time, start_water, end_water
+    </sql>
+
+</mapper>

+ 16 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/EnvWaterDayService.java

@@ -0,0 +1,16 @@
+package com.huimv.env.manage.service;
+
+import com.huimv.env.manage.entity.EnvWaterDay;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterDayService extends IService<EnvWaterDay> {
+
+}

+ 16 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/EnvWaterMonthService.java

@@ -0,0 +1,16 @@
+package com.huimv.env.manage.service;
+
+import com.huimv.env.manage.entity.EnvWaterMonth;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+public interface EnvWaterMonthService extends IService<EnvWaterMonth> {
+
+}

+ 20 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/impl/EnvWaterDayServiceImpl.java

@@ -0,0 +1,20 @@
+package com.huimv.env.manage.service.impl;
+
+import com.huimv.env.manage.entity.EnvWaterDay;
+import com.huimv.env.manage.mapper.EnvWaterDayMapper;
+import com.huimv.env.manage.service.EnvWaterDayService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Service
+public class EnvWaterDayServiceImpl extends ServiceImpl<EnvWaterDayMapper, EnvWaterDay> implements EnvWaterDayService {
+
+}

+ 20 - 0
huimv-env-platform/huimv-env-manage/src/main/java/com/huimv/env/manage/service/impl/EnvWaterMonthServiceImpl.java

@@ -0,0 +1,20 @@
+package com.huimv.env.manage.service.impl;
+
+import com.huimv.env.manage.entity.EnvWaterMonth;
+import com.huimv.env.manage.mapper.EnvWaterMonthMapper;
+import com.huimv.env.manage.service.EnvWaterMonthService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author zn
+ * @since 2022-10-20
+ */
+@Service
+public class EnvWaterMonthServiceImpl extends ServiceImpl<EnvWaterMonthMapper, EnvWaterMonth> implements EnvWaterMonthService {
+
+}

+ 1 - 1
huimv-env-platform/huimv-env-manage/src/main/resources/application-prod.yml

@@ -9,7 +9,7 @@ spring:
     name: huimv-env-input
 
   datasource:
-    url: jdbc:mysql://122.112.224.199:3306/huimv-env-platform?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai
+    url: jdbc:mysql://192.168.1.7:3306/huimv-env-platform?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai
     username: root
     password: hm123456
     driver-class-name: com.mysql.cj.jdbc.Driver

+ 126 - 0
huimv-env-platform/huimv-env-manage/src/test/java/com/huimv/env/manage/CodeGenerator.java

@@ -0,0 +1,126 @@
+package com.huimv.env.manage;
+
+/**
+ * @Project :
+ * @Package :
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create :
+ **/
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.core.exceptions.MybatisPlusException;
+import com.baomidou.mybatisplus.generator.AutoGenerator;
+import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
+import com.baomidou.mybatisplus.generator.config.GlobalConfig;
+import com.baomidou.mybatisplus.generator.config.PackageConfig;
+import com.baomidou.mybatisplus.generator.config.StrategyConfig;
+import com.baomidou.mybatisplus.generator.config.rules.DateType;
+import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
+import org.junit.platform.commons.util.StringUtils;
+
+import java.util.Scanner;
+
+public class CodeGenerator {
+    // user defined
+    private static String childProjectPath = "/huimv-env-manage";
+    private static String rootPackage = "com.huimv.env.manage";
+    private static String dbIp = "192.168.1.7";
+    private static String dbPort = "3306";
+    private static String dbName = "huimv-env-platform";
+    private static String driverName = "com.mysql.cj.jdbc.Driver";
+    private static String username = "root";
+    private static String password = "hm123456";
+
+    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.isNotBlank(ipt)) {
+                return ipt;
+            }
+        }
+        throw new MybatisPlusException("请输入正确的" + tip + "!");
+    }
+
+    public static void main(String[] args) {
+        // 代码生成器
+        AutoGenerator mpg = new AutoGenerator();
+
+        // 全局配置
+        GlobalConfig gc = new GlobalConfig();
+        String rootPath = System.getProperty("user.dir");
+        System.out.println("rootPath + childProjectPath="+rootPath + childProjectPath);
+        gc.setOutputDir(rootPath + childProjectPath + "/src/main/java");//设置代码生成路径
+        gc.setFileOverride(true);//是否覆盖以前文件
+        gc.setOpen(false);//是否打开生成目录
+        gc.setAuthor("zn");//设置项目作者名称
+        gc.setIdType(IdType.AUTO);//设置主键策略
+        gc.setBaseResultMap(true);//生成基本ResultMap
+        gc.setBaseColumnList(true);//生成基本ColumnList
+        gc.setServiceName("%sService");//去掉服务默认前缀
+        gc.setDateType(DateType.ONLY_DATE);//设置时间类型
+        mpg.setGlobalConfig(gc);
+
+        // 数据源配置
+        DataSourceConfig dsc = new DataSourceConfig();
+        //dsc.setUrl("jdbc:mysql://122.112.224.199:3306/huimv_registration_center?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai");
+        String url = "jdbc:mysql://"+dbIp+":"+dbPort+"/"+dbName+"?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&serverTimezone=Asia/Shanghai";
+        System.out.println("url="+url);
+        System.out.println("driverName="+driverName);
+        System.out.println("username="+username);
+        System.out.println("password="+password);
+        dsc.setUrl(url);
+        dsc.setDriverName(driverName);
+        dsc.setUsername(username);
+        dsc.setPassword(password);
+        mpg.setDataSource(dsc);
+
+        // 包配置
+        PackageConfig pc = new PackageConfig();
+        pc.setParent(rootPackage);
+        pc.setMapper("mapper");
+        pc.setXml("mapper.xml");
+//        pc.setEntity("pojo");
+        pc.setEntity("entity");
+        pc.setService("service");
+        pc.setServiceImpl("service.impl");
+        pc.setController("controller");
+        mpg.setPackageInfo(pc);
+
+        // 策略配置
+        StrategyConfig sc = new StrategyConfig();
+        sc.setNaming(NamingStrategy.underline_to_camel);
+        sc.setColumnNaming(NamingStrategy.underline_to_camel);
+        sc.setEntityLombokModel(true);//自动lombok
+        sc.setRestControllerStyle(true);
+        sc.setControllerMappingHyphenStyle(true);
+
+        sc.setLogicDeleteFieldName("deleted");//设置逻辑删除
+
+        //设置自动填充配置
+//        TableFill gmt_create = new TableFill("create_time", FieldFill.INSERT);
+//        TableFill gmt_modified = new TableFill("update_time", FieldFill.INSERT_UPDATE);
+//        ArrayList<TableFill> tableFills=new ArrayList<>();
+//        tableFills.add(gmt_create);
+//        tableFills.add(gmt_modified);
+//        sc.setTableFillList(tableFills);
+
+        //乐观锁
+        sc.setVersionFieldName("version");
+        sc.setRestControllerStyle(true);//驼峰命名
+
+
+
+        //  sc.setTablePrefix("tbl_"); 设置表名前缀
+        sc.setInclude(scanner("表名,多个英文逗号分割").split(","));
+        mpg.setStrategy(sc);
+
+        // 生成代码
+        mpg.execute();
+    }
+
+}

+ 1 - 0
huimv-env-platform/pom.xml

@@ -19,6 +19,7 @@
         <module>huimv-env-input</module>
         <module>huimv-env-manage</module>
         <module>huimv-env-device</module>
+        <module>huimv-env-lamp</module>
     </modules>
 
     <properties>