From 8fa3135b2765893e56dd8f913e27d47e6f63d429 Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 05 七月 2024 13:59:10 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealWorkingReportV202404.java    |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java          |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java      |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java                   |   28 +++
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java |    4 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java                          |    5 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_68_Up.java                             |    3 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossLastMapper.java                                      |    4 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealCloseValveReport.java         |   90 +--------
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmWorkReportLastMapper.xml                                               |    4 
 pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java          |   49 +++++
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveLast.java                                 |   62 +++++-
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java                                 |   36 ++--
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealTimingReportV202404.java     |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkPreGenObjsV202404.java           |   29 +++
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java                                               |    6 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmTimingReportLastMapper.java                              |    4 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml                                               |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_69_Up.java                             |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java                                      |   14 +
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Up.java                             |   12 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml                                             |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java  |    2 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmIntakeAmountHistory.java                                |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_91_Down.java                           |   16 -
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmWorkReportLastMapper.java                                |    4 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6B_Up.java                             |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Up.java                             |    4 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossLastMapper.xml                                                     |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Down.java                           |    9 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java              |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealWorkReport.java               |    2 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java                            |    4 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmTimingReportLastMapper.xml                                             |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOnHourReport.java             |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Down.java                           |    4 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java                              |    4 
 pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml                                           |    4 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveHistory.java                              |   65 ++++++
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6A_Up.java                             |    8 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmAlarmStateLastMapper.java                                |    6 
 42 files changed, 346 insertions(+), 173 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java
index c979a5d..ed3cd69 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java
@@ -13,6 +13,12 @@
 	}
 
 	/**
+	 * 褰撳懡浠ょ粨鏋滆繑鍥炵殑缃戝潃鏄鍊兼椂锛屽拷鐣ユ墽琛岋紝渚嬪涓棿浠朵富鍔ㄤ笅鍙戠殑鍛戒护锛屽氨涓嶇敤杩斿洖鍛戒护缁撴灉
+	 */
+	public static final String ignoreRtuResultSendWebUrl = "http://0.0.0.0" ;
+
+
+	/**
 	 * 榛樿鍛戒护ID
 	 * 濡傛灉鍛戒护涓嶅湪鏁版嵁搴撲腑瀛樺偍锛屾垨鍏朵粬鍙互鐢╠efaultId
 	 */
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Down.java
index 3f18c40..672ae4f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Down.java
@@ -95,7 +95,14 @@
             byte[] bs = new byte[10];
             Double remainMoneyAlarmDb = cvo.remainMoneyAlarm * 100.0;
             Integer remainMoneyAlarmInt = remainMoneyAlarmDb.intValue();
-            ByteUtilUnsigned.short2Bytes_LE(bs, remainMoneyAlarmInt.shortValue(), index);
+            byte[] bb = ByteUtil.int2BCD_LE(remainMoneyAlarmInt) ;
+            if(bb.length == 1){
+                bs[0] = bb[0] ;
+            }else if(bb.length == 2){
+                bs[0] = bb[0] ;
+                bs[1] = bb[1] ;
+            }
+            //ByteUtilUnsigned.short2Bytes_LE(bs, remainMoneyAlarmInt.shortValue(), index);
             index += 2;
             GlCreate.createPw(bs, index);
             index += 2;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Up.java
index 21c9233..e65bd1e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_38_Up.java
@@ -2,6 +2,8 @@
 
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1_0_0.*;
+import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd38And68Vo;
+import com.dy.common.util.ByteUtil;
 import com.dy.common.util.ByteUtilUnsigned;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -56,11 +58,11 @@
      * @throws Exception 寮傚父
      */
     protected void doParse(byte[] bs, int bsLen, String dataCode, Data data) throws Exception {
-//        DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
-//        DataCd38Vo cdData = new DataCd38Vo() ;
-//        dV1.subData = cdData ;
-//        int remainMoneyAlarmInt = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
-//        cdData.remainMoneyAlarm = remainMoneyAlarmInt/100.0D;
+        DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
+        DataCd38And68Vo cdData = new DataCd38And68Vo() ;
+        dV1.subData = cdData ;
+        int remainMoneyAlarmInt = ByteUtil.BCD2Int_LE(bs, ProtocolConstantV206V1_0_0.dataIndex, ProtocolConstantV206V1_0_0.dataIndex + 1) ;
+        cdData.remainMoneyAlarm = remainMoneyAlarmInt/100.0D;
     }
 
 }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Down.java
index b546e74..fb9367e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Down.java
@@ -96,8 +96,8 @@
             byte[] bs = new byte[11];
             Double currentDb = cvo.current * 100;
             Integer currentInt = currentDb.intValue();
-            ByteUtilUnsigned.int2Bytes_LE(bs, currentInt.shortValue(), index);
-            index += 3;//涓婇潰鏄笁byte鐨勬暟鍊�
+            ByteUtilUnsigned.short2Bytes_LE(bs, currentInt.shortValue(), index);
+            index += 2;//涓婇潰鏄袱瀛楄妭鏁板��
             GlCreate.createPw(bs, index);
             index += 2;
             GlCreate.createTp(bs, index);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Up.java
index 19ffe39..d76ef03 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_3A_Up.java
@@ -60,8 +60,8 @@
         DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
         DataCd3AAnd6AVo cdData = new DataCd3AAnd6AVo() ;
         dV1.subData = cdData ;
-        Long batteryVoltAlarm = ByteUtilUnsigned.bytes2Int_LE(bs, ProtocolConstantV206V1_0_0.dataIndex, true) ;
-        cdData.current = batteryVoltAlarm/1000.0D;
+        int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
+        cdData.current = alarm/100.0D ;
     }
 
 }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_68_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_68_Up.java
index 2cebfea..eb4488a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_68_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_68_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1_0_0.*;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd38And68Vo;
+import com.dy.common.util.ByteUtil;
 import com.dy.common.util.ByteUtilUnsigned;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -60,7 +61,7 @@
         DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
         DataCd38And68Vo cdData = new DataCd38And68Vo() ;
         dV1.subData = cdData ;
-        int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
+        int alarm = ByteUtil.BCD2Int_LE(bs, ProtocolConstantV206V1_0_0.dataIndex, ProtocolConstantV206V1_0_0.dataIndex + 1) ;
         cdData.remainMoneyAlarm = alarm/100.0D ;
     }
 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_69_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_69_Up.java
index dba2aca..a64e52a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_69_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_69_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1_0_0.*;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd39And69Vo;
+import com.dy.common.util.ByteUtil;
 import com.dy.common.util.ByteUtilUnsigned;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -60,6 +61,7 @@
         DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
         DataCd39And69Vo cdData = new DataCd39And69Vo() ;
         dV1.subData = cdData ;
+        //int alarm = ByteUtil.BCD2Int_LE(bs, ProtocolConstantV206V1_0_0.dataIndex, ProtocolConstantV206V1_0_0.dataIndex + 1) ;
         int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
         cdData.batteryVoltAlarm = alarm/100.0D ;
     }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6A_Up.java
index bd969f2..2b882fe 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6A_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1_0_0.*;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd3AAnd6AVo;
+import com.dy.common.util.ByteUtil;
 import com.dy.common.util.ByteUtilUnsigned;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -60,8 +61,11 @@
         DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
         DataCd3AAnd6AVo cdData = new DataCd3AAnd6AVo() ;
         dV1.subData = cdData ;
-        Long alarm = ByteUtilUnsigned.bytes2Int_LE(bs, ProtocolConstantV206V1_0_0.dataIndex, true) ;
-        cdData.current = alarm/1000.0D ;
+        if(!ByteUtil.bytesIsAll0xFF(bs, ProtocolConstantV206V1_0_0.dataIndex, 2)){
+            int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
+            cdData.current = alarm/100.0D ;
+        }
+
     }
 
 }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6B_Up.java
index 6d31883..2e83af0 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_6B_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1_0_0.*;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd3BAnd6BVo;
+import com.dy.common.util.ByteUtil;
 import com.dy.common.util.ByteUtilUnsigned;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -60,8 +61,10 @@
         DataV1_0_1 dV1 = (DataV1_0_1)data.getSubData() ;
         DataCd3BAnd6BVo cdData = new DataCd3BAnd6BVo() ;
         dV1.subData = cdData ;
-        int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
-        cdData.second = alarm ;
+        if(ByteUtil.bytesIsAll0xFF(bs, ProtocolConstantV206V1_0_0.dataIndex, 2)){
+            int alarm = ByteUtilUnsigned.bytes2Short_LE(bs, ProtocolConstantV206V1_0_0.dataIndex) ;
+            cdData.second = alarm ;
+        }
     }
 
 }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_91_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_91_Down.java
index 110b9bd..1e108ee 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_91_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/Cd_91_Down.java
@@ -72,16 +72,12 @@
 
         ByteUtil.hex2Bytes(para.commandCode, bsHead, index) ;
 
-        if(para.param == null){
-            throw new Exception("鏈彁渚涘懡浠ゅ弬鏁版暟鎹紝涓嶈兘鏋勯�犲姛鑳界爜涓�" + para.commandCode + "鐨勪笅琛屽懡浠�") ;
-        }else{
-            index = 0 ;
-            byte[] bs = new byte[8] ;
-            GlCreate.createPw(bs, index);
-            index += 2 ;
-            GlCreate.createTp(bs, index);
-            bytes = ByteUtil.bytesMerge(bsHead, bs) ;
-        }
+        index = 0 ;
+        byte[] bs = new byte[8] ;
+        GlCreate.createPw(bs, index);
+        index += 2 ;
+        GlCreate.createTp(bs, index);
+        bytes = ByteUtil.bytesMerge(bsHead, bs) ;
 
         GlCreate.createLen(bytes);//闀垮害鏀惧瓧鑺傛暟缁勪腑
 
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmAlarmStateLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmAlarmStateLastMapper.java
index 4a0582d..241b91b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmAlarmStateLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmAlarmStateLastMapper.java
@@ -63,8 +63,8 @@
     /**
      * select by rtuAddr
      *
-     * @param rtuAddr rtuAddr
-     * @return object by rtuAddr
+     * @param intakeId
+     * @return object by intakeId
      */
-    List<RmAlarmStateLast> selectByRtuAddr(String rtuAddr);
+    List<RmAlarmStateLast> selectByIntakeId(Long intakeId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossLastMapper.java
index 5d4ca7b..dbaf41c 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmLossLastMapper.java
@@ -44,10 +44,10 @@
 
     /**
      * select by rtuAddr
-     * @param rtuAddr 鎺у埗鍣ㄥ湴鍧�
+     * @param intakeId 鎺у埗鍣ㄦ墍缁戝彇姘村彛ID
      * @return object by rtuAddr
      */
-    List<RmLossLast> selectByRtuAddr(String rtuAddr) ;
+    List<RmLossLast> selectByIntakeId(Long intakeId) ;
    /**
      * select by dt
      * @param date 鏃ユ湡锛坹yyy-mm-dd锛�
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java
index 82153f3..be2b003 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOnHourReportLastMapper.java
@@ -58,8 +58,8 @@
 
     /**
      * 鏍规嵁闃�鎺у櫒鍦板潃鑾峰彇鏁寸偣涓婃姤鏈�鏂版暟鎹�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    List<RmOnHourReportLast> getRmOnHourReportLast(String rtuAddr);
+    List<RmOnHourReportLast> getRmOnHourReportLast(Long intakeId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
index bc9d4eb..c40e56d 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmOpenCloseValveLastMapper.java
@@ -63,8 +63,8 @@
     /**
      * select by rtuAddr
      *
-     * @param rtuAddr rtuAddr
+     * @param intakeId intakeId
      * @return object by rtuAddr
      */
-    List<RmOpenCloseValveLast> selectByRtuAddr(String rtuAddr);
+    List<RmOpenCloseValveLast> selectByIntakeId(Long intakeId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmTimingReportLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmTimingReportLastMapper.java
index def99bb..75f7ae9 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmTimingReportLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmTimingReportLastMapper.java
@@ -29,8 +29,8 @@
 
     /**
      * 鏍规嵁闃�鎺у櫒鍦板潃鑾峰彇瀹氱偣涓婃姤鏈�鏂版暟鎹�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    List<RmTimingReportLast> getRmTimingReportLast(String rtuAddr);
+    List<RmTimingReportLast> getRmTimingReportLast(Long intakeId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmWorkReportLastMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmWorkReportLastMapper.java
index 2357550..e19a55b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmWorkReportLastMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoRm/RmWorkReportLastMapper.java
@@ -63,8 +63,8 @@
     /**
      * select by primary key
      *
-     * @param rtuAddr 鎺у埗鍣ㄥ湴鍧�
+     * @param intakeId 鎺у埗鍣ㄦ墍缁戝彇姘村彛瀵硅薄id
      * @return object by rtuAddr
      */
-    List<RmWorkReportLast> selectByRtuAddr(String rtuAddr);
+    List<RmWorkReportLast> selectByIntakeId(Long intakeId);
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmIntakeAmountHistory.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmIntakeAmountHistory.java
index a8e6cff..c2ec2de 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmIntakeAmountHistory.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmIntakeAmountHistory.java
@@ -52,7 +52,7 @@
     * 绱婕忔崯姘撮噺
     */
     @Schema(description = "绱婕忔崯姘撮噺", requiredMode = Schema.RequiredMode.NOT_REQUIRED)
-   public Double loss;
+    public Double loss;
 
     /**
     * 鏈�鍚庤姘撮噺鐨勬帶鍒跺櫒ID锛堝閿級
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveHistory.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveHistory.java
index c86489c..d6b4b0b 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveHistory.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveHistory.java
@@ -1,6 +1,7 @@
 package com.dy.pipIrrGlobal.pojoRm;
 
 import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1;
+import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83CloseVo;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83OpenVo;
 import com.dy.common.mw.protocol.p206V202404.DataV202404;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd84Vo;
@@ -16,8 +17,6 @@
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
-
-import java.util.Date;
 
 /**
  * @Author: liurunyu
@@ -213,7 +212,7 @@
     /**
      * 鏈浣跨敤鐢甸噺
      */
-    public Double thisEle;
+    public Double clThisEle;
 
     public void valueFrom(DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo) throws Exception {
         this.opDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
@@ -241,7 +240,26 @@
         this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
         this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
         this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
-        this.thisEle = null;//姹熸捣鍗忚鐗规湁
+        this.clThisEle = null;//姹熸捣鍗忚鐗规湁
+    }
+
+    public void valueFrom(DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo) throws Exception {
+        this.clDt =  DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
+        this.clType = dataCd83CloseVo.type;
+        this.clTotalAmount = dataCd83CloseVo.totalAmount;
+        this.clIcCardNo = dataCd83CloseVo.icCardNo;
+        this.clIcCardAddr = dataCd83CloseVo.icCardAddr;
+        this.clRemainMoney = dataCd83CloseVo.remainMoney;
+        this.clThisAmount = dataCd83CloseVo.thisAmount;
+        this.clThisMoney = dataCd83CloseVo.thisMoney;
+        this.clThisTime = dataCd83CloseVo.thisTime;
+        this.clOpenDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt);
+        this.closeDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt);
+
+        this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
+        this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
+        this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
+        this.clThisEle = null;//姹熸捣鍗忚鐗规湁
     }
 
     public void valueFrom84(DataV202404 dataV202404, DataCd84Vo cdData) throws Exception {
@@ -270,7 +288,7 @@
         this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
         this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
         this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
-        this.thisEle = null;//姹熸捣鍗忚鐗规湁
+        this.clThisEle = null;//姹熸捣鍗忚鐗规湁
     }
 
     public void valueFrom85(DataV202404 dataV202404, DataCd85Vo cdData) throws Exception {
@@ -287,7 +305,7 @@
         this.clOrderNo = cdData.orderNo;
         this.clEleTotalAmount = cdData.eleTotalAmount;
         this.clWaterRemainUser = cdData.waterRemain;
-        this.thisEle = cdData.thisEle;
+        this.clThisEle = cdData.thisEle;
     }
 
     public void updateFrom(DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo, boolean clearCloseValve) throws Exception {
@@ -310,6 +328,41 @@
             this.clThisTime = null;
             this.clOpenDt = null;
             this.closeDt = null;
+
+            this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
+            this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
+            this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
+            this.clThisEle = null;//姹熸捣鍗忚鐗规湁
+        }
+    }
+
+
+    public void updateFrom(DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo, boolean clearOpenValve) throws Exception {
+        this.clDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
+        this.clType = dataCd83CloseVo.type;
+        this.clTotalAmount = dataCd83CloseVo.totalAmount;
+        this.clIcCardNo = dataCd83CloseVo.icCardNo;
+        this.clIcCardAddr = dataCd83CloseVo.icCardAddr;
+        this.clRemainMoney = dataCd83CloseVo.remainMoney;
+        this.clThisAmount = dataCd83CloseVo.thisAmount;
+        this.clThisMoney = dataCd83CloseVo.thisMoney;
+        this.clThisTime = dataCd83CloseVo.thisTime;
+        this.clOpenDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt);
+        this.closeDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt) ;
+
+        if(clearOpenValve){
+            this.opDt = null ;
+            this.opType = null ;
+            this.opTotalAmount = null ;
+            this.opIcCardNo = null ;
+            this.opIcCardAddr = null ;
+            this.opRemainMoney = null ;
+            this.openDt = null ;
+
+            this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
+            this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
+            this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
+            this.clThisEle = null;//姹熸捣鍗忚鐗规湁
         }
     }
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveLast.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveLast.java
index 11fb1aa..cc412b3 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveLast.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoRm/RmOpenCloseValveLast.java
@@ -6,12 +6,14 @@
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1;
+import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83CloseVo;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83OpenVo;
 import com.dy.common.mw.protocol.p206V202404.DataV202404;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd84Vo;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd85Vo;
 import com.dy.common.po.BaseEntity;
 import com.dy.common.util.DateTime;
+import com.dy.pipIrrGlobal.pojoPr.PrController;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.*;
@@ -227,17 +229,21 @@
         this.opEleTotalAmount = null; //姹熸捣鍗忚鐗规湁
         this.opWaterRemainUser = null; //姹熸捣鍗忚鐗规湁
         this.openDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt);
-        this.clDt = null;
-        this.clType = null;
-        this.clTotalAmount = null;
-        this.clIcCardNo = null;
-        this.clIcCardAddr = null;
-        this.clRemainMoney = null;
-        this.clThisAmount = null;
-        this.clThisMoney = null;
-        this.clThisTime = null;
-        this.clOpenDt = null;
-        this.closeDt = null;
+
+    }
+
+    public void valueFrom(DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo) throws Exception {
+        this.clDt =  DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
+        this.clType = dataCd83CloseVo.type;
+        this.clTotalAmount = dataCd83CloseVo.totalAmount;
+        this.clIcCardNo = dataCd83CloseVo.icCardNo;
+        this.clIcCardAddr = dataCd83CloseVo.icCardAddr;
+        this.clRemainMoney = dataCd83CloseVo.remainMoney;
+        this.clThisAmount = dataCd83CloseVo.thisAmount;
+        this.clThisMoney = dataCd83CloseVo.thisMoney;
+        this.clThisTime = dataCd83CloseVo.thisTime;
+        this.clOpenDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt);
+        this.closeDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt);
 
         this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
         this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
@@ -312,6 +318,40 @@
             this.clThisTime = null;
             this.clOpenDt = null;
             this.closeDt = null;
+
+            this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
+            this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
+            this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
+            this.thisEle = null;//姹熸捣鍗忚鐗规湁
+        }
+    }
+
+    public void updateFrom(DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo, boolean clearOpenValve) throws Exception {
+        this.clDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
+        this.clType = dataCd83CloseVo.type;
+        this.clTotalAmount = dataCd83CloseVo.totalAmount;
+        this.clIcCardNo = dataCd83CloseVo.icCardNo;
+        this.clIcCardAddr = dataCd83CloseVo.icCardAddr;
+        this.clRemainMoney = dataCd83CloseVo.remainMoney;
+        this.clThisAmount = dataCd83CloseVo.thisAmount;
+        this.clThisMoney = dataCd83CloseVo.thisMoney;
+        this.clThisTime = dataCd83CloseVo.thisTime;
+        this.clOpenDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt);
+        this.closeDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt) ;
+
+        if(clearOpenValve){
+            this.opDt = null ;
+            this.opType = null ;
+            this.opTotalAmount = null ;
+            this.opIcCardNo = null ;
+            this.opIcCardAddr = null ;
+            this.opRemainMoney = null ;
+            this.openDt = null ;
+
+            this.clOrderNo = null;//姹熸捣鍗忚鐗规湁
+            this.clEleTotalAmount = null;//姹熸捣鍗忚鐗规湁
+            this.clWaterRemainUser = null;//姹熸捣鍗忚鐗规湁
+            this.thisEle = null;//姹熸捣鍗忚鐗规湁
         }
     }
 }
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml
index c9fee5d..b24461d 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmAlarmStateLastMapper.xml
@@ -43,12 +43,12 @@
     from rm_alarm_state_last
     where id = #{id,jdbcType=BIGINT}
   </select>
-  <select id="selectByRtuAddr" parameterType="java.lang.String" resultMap="BaseResultMap">
+  <select id="selectByIntakeId" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
     select
     <include refid="Base_Column_List" />
     from rm_alarm_state_last
-    where rtu_addr = #{rtuAddr,jdbcType=VARCHAR}
+    where intake_id = #{intakeId,jdbcType=BIGINT}
   </select>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
     <!--@mbg.generated-->
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossLastMapper.xml
index 3fbc50f..5a99947 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmLossLastMapper.xml
@@ -25,12 +25,12 @@
     from rm_loss_last
     where id = #{id,jdbcType=BIGINT}
   </select>
-  <select id="selectByRtuAddr" parameterType="java.lang.String" resultMap="BaseResultMap">
+  <select id="selectByIntakeId" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
     select
     <include refid="Base_Column_List" />
     from rm_loss_last
-    where rtu_addr = #{rtuAddr,jdbcType=VARCHAR}
+    where intake_id = #{intakeId,jdbcType=BIGINT}
   </select>
   <select id="selectByDate" parameterType="java.util.Date" resultMap="BaseResultMap">
     <!--@mbg.generated-->
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml
index 5fb6db3..9881923 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOnHourReportLastMapper.xml
@@ -200,6 +200,6 @@
         select
         <include refid="Base_Column_List" />
         from rm_on_hour_report_last
-        where rtu_addr = #{rtuAddr}
+        where intake_id = #{intakeId}
     </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
index 226ff6b..bb558ac 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmOpenCloseValveLastMapper.xml
@@ -50,12 +50,12 @@
     from rm_open_close_valve_last
     where id = #{id,jdbcType=BIGINT}
   </select>
-  <select id="selectByRtuAddr" parameterType="java.lang.String" resultMap="BaseResultMap">
+  <select id="selectByIntakeId" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
     select
     <include refid="Base_Column_List" />
     from rm_open_close_valve_last
-    where rtu_addr = #{rtuAddr,jdbcType=VARCHAR}
+    where intake_id = #{intakeId,jdbcType=BIGINT}
   </select>
   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
     <!--@mbg.generated-->
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmTimingReportLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmTimingReportLastMapper.xml
index b16ee8a..b762a02 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmTimingReportLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmTimingReportLastMapper.xml
@@ -225,6 +225,6 @@
     select
     <include refid="Base_Column_List" />
     from rm_timing_report_last
-    where rtu_addr = #{rtuAddr}
+    where intake_id = #{intakeId}
   </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmWorkReportLastMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmWorkReportLastMapper.xml
index 41bb3ed..09a8b9a 100644
--- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmWorkReportLastMapper.xml
+++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/RmWorkReportLastMapper.xml
@@ -407,11 +407,11 @@
       water_meter_work_volt = #{waterMeterWorkVolt,jdbcType=FLOAT}
     where id = #{id,jdbcType=BIGINT}
   </update>
-    <select id="selectByRtuAddr" parameterType="java.lang.String" resultMap="BaseResultMap">
+    <select id="selectByIntakeId" parameterType="java.lang.Long" resultMap="BaseResultMap">
         <!--@mbg.generated-->
         select
         <include refid="Base_Column_List" />
         from rm_work_report_last
-        where rtu_addr = #{rtuAddr,jdbcType=VARCHAR}
+        where intake_id = #{intakeId,jdbcType=BIGINT}
     </select>
 </mapper>
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
index 7241234..b3dc1df 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
@@ -115,11 +115,11 @@
     ////////////////////////////////////////////////
     /**
      * 寰楀埌鎺у埗鍣ㄦ姤璀︿笌鐘舵�佹渶鏂拌褰�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    public RmAlarmStateLast getRmAlarmStateLast(String rtuAddr){
-        List<RmAlarmStateLast> list = rmAlarmStateLastMapperDao.selectByRtuAddr(rtuAddr) ;
+    public RmAlarmStateLast getRmAlarmStateLast(Long intakeId){
+        List<RmAlarmStateLast> list = rmAlarmStateLastMapperDao.selectByIntakeId(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
@@ -177,12 +177,12 @@
 
     /**
      * 鏍规嵁闃�鎺у櫒鍦板潃鑾峰彇瀹氱偣涓婃姤鏈�鏂版暟鎹�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
     @Transactional(rollbackFor = Exception.class)
-    public RmTimingReportLast getRmTimingReportLast(String rtuAddr) {
-        List<RmTimingReportLast> list = this.rmTimingReportLastDao.getRmTimingReportLast(rtuAddr) ;
+    public RmTimingReportLast getRmTimingReportLast(Long intakeId) {
+        List<RmTimingReportLast> list = this.rmTimingReportLastDao.getRmTimingReportLast(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
@@ -224,12 +224,12 @@
 
     /**
      * 鏍规嵁闃�鎺у櫒鍦板潃鑾峰彇鏁寸偣涓婃姤鏈�鏂版暟鎹�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
     @Transactional(rollbackFor = Exception.class)
-    public RmOnHourReportLast getRmOnHourReportLast(String rtuAddr) {
-        List<RmOnHourReportLast> list = this.rmOnHourReportLastDao.getRmOnHourReportLast(rtuAddr) ;
+    public RmOnHourReportLast getRmOnHourReportLast(Long intakeId) {
+        List<RmOnHourReportLast> list = this.rmOnHourReportLastDao.getRmOnHourReportLast(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
@@ -261,11 +261,11 @@
     ////////////////////////////////////////////////
     /**
      * 寰楀埌鎺у埗鍣ㄥ紑鍏抽榾涓婃姤鏁版嵁鏈�鏂拌褰�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    public RmOpenCloseValveLast getRmOpenCloseValveLast(String rtuAddr){
-        List<RmOpenCloseValveLast> list = rmOpenCloseValveLastMapperDao.selectByRtuAddr(rtuAddr) ;
+    public RmOpenCloseValveLast getRmOpenCloseValveLast(Long intakeId){
+        List<RmOpenCloseValveLast> list = rmOpenCloseValveLastMapperDao.selectByIntakeId(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
@@ -321,11 +321,11 @@
     ////////////////////////////////////////////////
     /**
      * 寰楀埌鎺у埗鍣ㄤ笂鎶ユ暟鎹渶鏂拌褰�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    public RmWorkReportLast getRmWorkReportLast(String rtuAddr){
-        List<RmWorkReportLast> list = rmWorkReportLastMapperDao.selectByRtuAddr(rtuAddr) ;
+    public RmWorkReportLast getRmWorkReportLast(Long intakeId){
+        List<RmWorkReportLast> list = rmWorkReportLastMapperDao.selectByIntakeId(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
@@ -364,11 +364,11 @@
     ////////////////////////////////////////////////
     /**
      * 寰楀埌鎺у埗鍣ㄦ紡鎹熸按閲忕粺璁℃渶鏂拌褰�
-     * @param rtuAddr
+     * @param intakeId
      * @return
      */
-    public RmLossLast getRmLossLast(String rtuAddr){
-        List<RmLossLast> list = rmLossLastMapperDao.selectByRtuAddr(rtuAddr) ;
+    public RmLossLast getRmLossLast(Long intakeId){
+        List<RmLossLast> list = rmLossLastMapperDao.selectByIntakeId(intakeId) ;
         if(list != null && list.size() > 0){
             return list.get(0) ;
         }
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java
index 32e4271..a29a46a 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java
@@ -85,7 +85,7 @@
      * @param stateVo 鐘舵�佸璞�
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, String rtuDt, DataV1_0_1 dV1_0_1, DataAlarmVo alarmVo, DataStateVo stateVo) throws Exception {
-        RmAlarmStateLast po = sv.getRmAlarmStateLast(rtuAddr) ;
+        RmAlarmStateLast po = sv.getRmAlarmStateLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmAlarmStateLast();
             po.controllerId = controller==null?null:controller.getId() ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealCloseValveReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealCloseValveReport.java
index 40dde5d..3735170 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealCloseValveReport.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealCloseValveReport.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.Data;
 import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1;
 import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83CloseVo;
+import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83OpenVo;
 import com.dy.common.util.DateTime;
 import com.dy.pipIrrGlobal.pojoPr.PrController;
 import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveHistory;
@@ -57,7 +58,7 @@
      * @param dataCd83CloseVo 鍏抽榾涓婃姤鏁版嵁瀵硅薄
      */
     private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo) throws Exception {
-        RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(rtuAddr) ;
+        RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(controller.getIntakeId()) ;
         if(poLast == null){
             //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鎺у埗鍣ㄧ殑寮�鍏抽榾鏁版嵁
             //棣栧厛鐢熸垚鏈�鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛�
@@ -140,22 +141,12 @@
      * @throws Exception
      */
     private RmOpenCloseValveLast newRmOpenCloseValveLast(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo)throws Exception {
-        //RmOpenCloseValveLast po = new RmOpenCloseValveLast(null, null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
-        //        rtuAddr,
-        //        null, null, null, null, null, null,null,
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt),
-        //        dataCd83CloseVo.type,
-        //        dataCd83CloseVo.totalAmount,
-        //        dataCd83CloseVo.icCardNo,
-        //        dataCd83CloseVo.icCardAddr,
-        //        dataCd83CloseVo.remainMoney,
-        //        dataCd83CloseVo.thisAmount,
-        //        dataCd83CloseVo.thisMoney,
-        //        dataCd83CloseVo.thisTime,
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt),
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt)) ;
-        //return po ;
-        return null;
+        RmOpenCloseValveLast po = new RmOpenCloseValveLast() ;
+        po.controllerId = controller==null?null:controller.getId() ;
+        po.intakeId = controller==null?null:controller.getIntakeId() ;
+        po.rtuAddr = rtuAddr ;
+        po.valueFrom(dV1_0_1, dataCd83CloseVo);
+        return po ;
     }
 
 
@@ -169,22 +160,12 @@
      * @throws Exception
      */
     private RmOpenCloseValveHistory newRmOpenCloseValveHistory(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83CloseVo dataCd83CloseVo)throws Exception {
-        //RmOpenCloseValveHistory po = new RmOpenCloseValveHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
-        //        rtuAddr,
-        //        null, null, null, null, null, null,null,
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt),
-        //        dataCd83CloseVo.type,
-        //        dataCd83CloseVo.totalAmount,
-        //        dataCd83CloseVo.icCardNo,
-        //        dataCd83CloseVo.icCardAddr,
-        //        dataCd83CloseVo.remainMoney,
-        //        dataCd83CloseVo.thisAmount,
-        //        dataCd83CloseVo.thisMoney,
-        //        dataCd83CloseVo.thisTime,
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt),
-        //        DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt)) ;
-        //return po ;
-        return null;
+        RmOpenCloseValveHistory po = new RmOpenCloseValveHistory() ;
+        po.controllerId = controller==null?null:controller.getId() ;
+        po.intakeId = controller==null?null:controller.getIntakeId() ;
+        po.rtuAddr = rtuAddr ;
+        po.valueFrom(dV1_0_1, dataCd83CloseVo);
+        return po ;
     }
 
 
@@ -202,53 +183,14 @@
         poLast.controllerId = controller==null?null:controller.getId();
         poLast.intakeId = controller==null?null:controller.getIntakeId();
 
-        poLast.clDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt);
-        poLast.clType = dataCd83CloseVo.type;
-        poLast.clTotalAmount = dataCd83CloseVo.totalAmount;
-        poLast.clIcCardNo = dataCd83CloseVo.icCardNo;
-        poLast.clIcCardAddr = dataCd83CloseVo.icCardAddr;
-        poLast.clRemainMoney = dataCd83CloseVo.remainMoney;
-        poLast.clThisAmount = dataCd83CloseVo.thisAmount;
-        poLast.clThisMoney = dataCd83CloseVo.thisMoney;
-        poLast.clThisTime = dataCd83CloseVo.thisTime;
-        poLast.clOpenDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.openDt);
-        poLast.closeDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83CloseVo.closeDt) ;
+        poLast.updateFrom(dV1_0_1, dataCd83CloseVo, clearOpenValve);
 
         if(poHistory != null){
             poHistory.controllerId = controller==null?null:controller.getId();
             poHistory.intakeId = controller==null?null:controller.getIntakeId();
 
-            poHistory.clDt = poLast.clDt;
-            poHistory.clType = dataCd83CloseVo.type;
-            poHistory.clTotalAmount = dataCd83CloseVo.totalAmount;
-            poHistory.clIcCardNo = dataCd83CloseVo.icCardNo;
-            poHistory.clIcCardAddr = dataCd83CloseVo.icCardAddr;
-            poHistory.clRemainMoney = dataCd83CloseVo.remainMoney;
-            poHistory.clThisAmount = dataCd83CloseVo.thisAmount;
-            poHistory.clThisMoney = dataCd83CloseVo.thisMoney;
-            poHistory.clThisTime = dataCd83CloseVo.thisTime;
-            poHistory.clOpenDt = poLast.clOpenDt;
-            poHistory.closeDt = poLast.closeDt ;
+            poHistory.updateFrom(dV1_0_1, dataCd83CloseVo, clearOpenValve);
         }
 
-        if(clearOpenValve){
-            poLast.opDt = null ;
-            poLast.opType = null ;
-            poLast.opTotalAmount = null ;
-            poLast.opIcCardNo = null ;
-            poLast.opIcCardAddr = null ;
-            poLast.opRemainMoney = null ;
-            poLast.openDt = null ;
-
-            if(poHistory != null) {
-                poHistory.opDt = null ;
-                poHistory.opType = null ;
-                poHistory.opTotalAmount = null ;
-                poHistory.opIcCardNo = null ;
-                poHistory.opIcCardAddr = null ;
-                poHistory.opRemainMoney = null ;
-                poHistory.openDt = null ;
-            }
-        }
     }
 }
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java
index 3149e81..1dc4192 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java
@@ -56,7 +56,7 @@
      * @param dataCdC0Vo 寮�闃�涓婃姤鏁版嵁瀵硅薄
      */
     private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo) throws Exception {
-        RmLossLast poLast = sv.getRmLossLast(rtuAddr);
+        RmLossLast poLast = sv.getRmLossLast(controller.getIntakeId());
         if (poLast == null) {
             //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鎺у埗鍣ㄧ殑婕忔崯鏁版嵁
             //棣栧厛鐢熸垚鏈�鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛�
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOnHourReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOnHourReport.java
index 5f9f604..c04f4a0 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOnHourReport.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOnHourReport.java
@@ -68,7 +68,7 @@
      * @param cdData 鑷姤鏁版嵁瀵硅薄
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo cdData) throws Exception {
-        RmOnHourReportLast po = sv.getRmOnHourReportLast(rtuAddr) ;
+        RmOnHourReportLast po = sv.getRmOnHourReportLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmOnHourReportLast();
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java
index ec3519d..ca70667 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java
@@ -56,7 +56,7 @@
      * @param dataCd83OpenVo 寮�闃�涓婃姤鏁版嵁瀵硅薄
      */
     private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo) throws Exception {
-        RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(rtuAddr) ;
+        RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(controller.getIntakeId()) ;
         if(poLast == null){
             //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鎺у埗鍣ㄧ殑寮�鍏抽榾鏁版嵁
             //棣栧厛鐢熸垚寮�鍏抽榾鐨勬渶鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛�
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealWorkReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealWorkReport.java
index e7280fe..b7df2fa 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealWorkReport.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealWorkReport.java
@@ -65,7 +65,7 @@
      * @param cdData
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd84Vo cdData) throws Exception {
-        RmWorkReportLast po = sv.getRmWorkReportLast(rtuAddr) ;
+        RmWorkReportLast po = sv.getRmWorkReportLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmWorkReportLast() ;
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java
index b95b9ef..6770b91 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java
@@ -1,11 +1,15 @@
 package com.dy.rtuMw.server.rtuData.p206V1_0_0;
 
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.CommandType;
+import com.dy.common.mw.protocol.p206V1_0_0.CodeV1_0_1;
 import com.dy.rtuMw.server.rtuData.TaskSurpport;
 import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
 import com.dy.common.mw.protocol.Data;
 import com.dy.common.springUtil.SpringContextUtil;
 import com.dy.pipIrrGlobal.pojoPr.PrController;
 import com.dy.pipIrrGlobal.pojoPr.PrControllerTramp;
+import com.dy.rtuMw.web.com.CommandCtrl;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -36,7 +40,10 @@
 				//娴佹氮鑰呮帶鍒跺櫒
 				controllerTramp = sv.getPrControllerTrampByRtuAddr(rtuAddr);
 				if(controllerTramp == null){
+					//绗竴娆″彂鐜�
 					controllerTramp = new PrControllerTramp(null, rtuAddr, d.getProtocol(), new Date()) ;
+					//绗竴娆″彂鐜帮紝涓嬪彂娓呯┖RTU鍘嗗彶鍛戒护锛屼互浣垮叾閲嶆柊寮�濮嬭褰曟柊鍦扮偣鐨勬暟鎹�
+					this.sendClearCommand(rtuAddr, d.protocol);
 				}
 			}
 			//涓嶈鏄惁涓烘祦娴帶鍒跺櫒锛圧TU瀹炰綋锛夛紝閮借杩涜涓嬫宸ヤ綔锛岃褰曞叾涓婃姤鐨勪竴浜涙暟鎹紝褰撶粦瀹氭帶鍒跺櫒鍚庯紝鏁版嵁鑷姩鏈変簡褰掑睘
@@ -46,4 +53,25 @@
 			log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒癉bSv瀵硅薄");
 		}
 	}
+
+	/**
+	 * 鍙戦�佹竻绌篟TU鐨勫懡浠�
+	 * @param rtuAddr
+	 * @param protocol
+	 */
+	private void sendClearCommand(String rtuAddr, String protocol){
+		Command com = new Command() ;
+		com.id = Command.defaultId ;
+		com.rtuAddr = rtuAddr ;
+		com.protocol = protocol ;
+		com.type = CommandType.outerCommand;
+		com.code = CodeV1_0_1.cd_91 ;//褰撳墠鏄疨206V1_0_0鍗忚鐨勪换鍔�
+		com.rtuResultSendWebUrl = Command.ignoreRtuResultSendWebUrl ;
+		com.param = null ;
+		com.attachment = null ;
+		CommandCtrl comCtrl = SpringContextUtil.getBean(CommandCtrl.class) ;
+		if(comCtrl != null){
+			comCtrl.sendOutComFromLocal(com) ;
+		}
+	}
 }
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java
index 3686852..c71cbd4 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java
@@ -82,7 +82,7 @@
                                   String rtuDt,
                                   AlarmVo alarmVo,
                                   String receiveDt) throws Exception {
-        RmAlarmStateLast po = sv.getRmAlarmStateLast(rtuAddr) ;
+        RmAlarmStateLast po = sv.getRmAlarmStateLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmAlarmStateLast(null,
                     controller==null?null:controller.getId(),
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
index 12a7da7..86b5fe4 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
@@ -18,7 +18,7 @@
  * @Description
  */
 public class TkDealCloseValveReportV202404 extends TaskSurpport {
-    private static final Logger log = LogManager.getLogger(TkDealTimingReportV202404.class.getName());
+    private static final Logger log = LogManager.getLogger(TkDealCloseValveReportV202404.class.getName());
 
     //绫籌D锛屼竴瀹氫笌Tree.xml閰嶇疆鏂囦欢涓厤缃竴鑷�
     public static final String taskId = "TkDealCloseValveReportV202404";
@@ -69,7 +69,7 @@
      * @param cdData 鍔熻兘鏁版嵁
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV202404 dataV202404, DataCd85Vo cdData)throws Exception {
-        RmOpenCloseValveLast po = sv.getRmOpenCloseValveLast(rtuAddr);
+        RmOpenCloseValveLast po = sv.getRmOpenCloseValveLast(controller.getIntakeId());
         if(po == null){
             po = new RmOpenCloseValveLast();
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
index 73305a7..78dbea4 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
@@ -69,7 +69,7 @@
      * @param cdData 鍔熻兘鏁版嵁
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV202404 dataV202404, DataCd84Vo cdData)throws Exception {
-        RmOpenCloseValveLast po = sv.getRmOpenCloseValveLast(rtuAddr);
+        RmOpenCloseValveLast po = sv.getRmOpenCloseValveLast(controller.getIntakeId());
         if(po == null){
             po = new RmOpenCloseValveLast();
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealTimingReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealTimingReportV202404.java
index 011161e..23490d3 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealTimingReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealTimingReportV202404.java
@@ -66,7 +66,7 @@
      * @param cdData 鍔熻兘鏁版嵁
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV202404 dataV202404, DataCd83Vo cdData)throws Exception {
-        RmTimingReportLast po = sv.getRmTimingReportLast(rtuAddr) ;
+        RmTimingReportLast po = sv.getRmTimingReportLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmTimingReportLast();
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealWorkingReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealWorkingReportV202404.java
index c0f5409..a9f28c9 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealWorkingReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealWorkingReportV202404.java
@@ -68,7 +68,7 @@
      * @param cdData 鍔熻兘鏁版嵁
      */
     private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataV202404 dataV202404, DataCd80_5BVo cdData)throws Exception {
-        RmWorkReportLast po = sv.getRmWorkReportLast(rtuAddr) ;
+        RmWorkReportLast po = sv.getRmWorkReportLast(controller.getIntakeId()) ;
         if(po == null){
             po = new RmWorkReportLast();
             po.controllerId = controller==null?null:controller.getId();
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkPreGenObjsV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkPreGenObjsV202404.java
index 71869a8..3158cfb 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkPreGenObjsV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkPreGenObjsV202404.java
@@ -1,11 +1,16 @@
 package com.dy.rtuMw.server.rtuData.p206V202404;
 
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.CommandType;
 import com.dy.common.mw.protocol.Data;
+import com.dy.common.mw.protocol.p206V1_0_0.CodeV1_0_1;
+import com.dy.common.mw.protocol.p206V202404.CodeV202404;
 import com.dy.common.springUtil.SpringContextUtil;
 import com.dy.pipIrrGlobal.pojoPr.PrController;
 import com.dy.pipIrrGlobal.pojoPr.PrControllerTramp;
 import com.dy.rtuMw.server.rtuData.TaskSurpport;
 import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
+import com.dy.rtuMw.web.com.CommandCtrl;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -39,7 +44,10 @@
                 //娴佹氮鑰呮帶鍒跺櫒
                 controllerTramp = sv.getPrControllerTrampByRtuAddr(rtuAddr);
                 if(controllerTramp == null){
+                    //绗竴娆″彂鐜�
                     controllerTramp = new PrControllerTramp(null, rtuAddr, d.getProtocol(), new Date()) ;
+                    //绗竴娆″彂鐜帮紝涓嬪彂娓呯┖RTU鍘嗗彶鍛戒护锛屼互浣垮叾閲嶆柊寮�濮嬭褰曟柊鍦扮偣鐨勬暟鎹�
+                    this.sendClearCommand(rtuAddr, d.protocol);
                 }
             }
             //涓嶈鏄惁涓烘祦娴帶鍒跺櫒锛圧TU瀹炰綋锛夛紝閮借杩涜涓嬫宸ヤ綔锛岃褰曞叾涓婃姤鐨勪竴浜涙暟鎹紝褰撶粦瀹氭帶鍒跺櫒鍚庯紝鏁版嵁鑷姩鏈変簡褰掑睘
@@ -49,4 +57,25 @@
             log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒癉bSv瀵硅薄");
         }
     }
+
+    /**
+     * 鍙戦�佹竻绌篟TU鐨勫懡浠�
+     * @param rtuAddr
+     * @param protocol
+     */
+    private void sendClearCommand(String rtuAddr, String protocol){
+        Command com = new Command() ;
+        com.id = Command.defaultId ;
+        com.rtuAddr = rtuAddr ;
+        com.protocol = protocol ;
+        com.type = CommandType.outerCommand;
+        com.code = CodeV202404.cd_99 ;//褰撳墠鏄痯206V202404鍗忚鐨勪换鍔�
+        com.rtuResultSendWebUrl = Command.ignoreRtuResultSendWebUrl ;
+        com.param = null ;
+        com.attachment = null ;
+        CommandCtrl comCtrl = SpringContextUtil.getBean(CommandCtrl.class) ;
+        if(comCtrl != null){
+            comCtrl.sendOutComFromLocal(com) ;
+        }
+    }
 }
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java
index 9abfa02..b8914a4 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java
@@ -87,6 +87,20 @@
     }
 
     /**
+     * 鏈湴璋冪敤锛屼緥濡傞噸浠诲姟鏍戜腑鏌愪釜浠诲姟涓嬪彂鐨勫懡浠わ紙濡傛竻绌哄懡浠わ級
+     * @param com
+     * @return
+     */
+    public BaseResponse<Command> sendOutComFromLocal(Command com) {
+        try{
+            return this.dealOuterCommand(com) ;
+        }catch(Exception e){
+            return BaseResponseUtils.buildError(ReturnCommand.errored("澶勭悊鍙戝悜RTU鐨勫閮ㄥ懡浠ゅ嚭閿�" + (e.getMessage() == null?"":("锛�" + e.getMessage())), com.getId(), com.getCode()) );
+        }
+    }
+
+
+    /**
      * 澶勭悊鍙戝悜RTU鐨勫閮ㄥ懡浠�
      * @return 缁撴灉
      */
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
index b867a3f..10534e5 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/comResult/CommandResultDeal.java
@@ -1,5 +1,6 @@
 package com.dy.rtuMw.web.comResult;
 
+import com.dy.common.mw.protocol.Command;
 import com.dy.common.mw.protocol.Data;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -29,7 +30,9 @@
     }
 
     public void deal(Data data) {
-        if (data.rtuResultSendWebUrl != null && !data.rtuResultSendWebUrl.trim().equals("")) {
+        if (data.rtuResultSendWebUrl != null
+                && !data.rtuResultSendWebUrl.trim().equals("")
+                && !data.rtuResultSendWebUrl.trim().equals(Command.ignoreRtuResultSendWebUrl)) {
             String url = UriComponentsBuilder.fromUriString(data.rtuResultSendWebUrl)
                     .build()
                     .toUriString();
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
index b15fe11..746247a 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-mwTest-web/src/main/java/com/dy/pipIrrMwTestWeb/p206V1_0_0/CommandP206V1_0_0Ctrl.java
@@ -33,16 +33,30 @@
                 rt = this.cd21() ;
             }else if(com.equals("37")){
                 rt = this.cd37() ;
+            }else if(com.equals("67")){
+                rt = this.cd67() ;
             }else if(com.equals("38")){
                 rt = this.cd38() ;
+            }else if(com.equals("68")){
+                rt = this.cd68() ;
             }else if(com.equals("39")){
                 rt = this.cd39() ;
+            }else if(com.equals("69")){
+                rt = this.cd69() ;
             }else if(com.equals("3A")){
                 rt = this.cd3A() ;
+            }else if(com.equals("6A")){
+                rt = this.cd6A() ;
             }else if(com.equals("3B")){
                 rt = this.cd3B() ;
+            }else if(com.equals("6B")){
+                rt = this.cd6B() ;
             }else if(com.equals("3C")){
                 rt = this.cd3C() ;
+            }else if(com.equals("65")){
+                rt = this.cd65() ;
+            }else if(com.equals("91")){
+                rt = this.cd91() ;
             }else if(com.equals("92")){
                 rt = this.cd92() ;
             }else if(com.equals("93")){
@@ -57,6 +71,7 @@
         }
         return rt ;
     }
+
 
     /**
      * 娴嬭瘯杩為�氭��
@@ -75,8 +90,12 @@
 
     private BaseResponse cd37(){
         Com37Vo comVo = new Com37Vo() ;
-        comVo.seconds = 20 ;
+        comVo.seconds = 20 ;//鍗曚綅绉�
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_37, comVo, null)) ;
+    }
+    private BaseResponse cd67(){
+        Com37Vo comVo = new Com37Vo() ;
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_67, comVo, null)) ;
     }
 
     private BaseResponse cd38(){
@@ -85,10 +104,18 @@
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_38, comVo, null)) ;
     }
 
+    private BaseResponse cd68(){
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_68, null, null)) ;
+    }
+
     private BaseResponse cd39(){
         Com39Vo comVo = new Com39Vo() ;
-        comVo.batteryVoltAlarm = 1.0 ;//鐢垫睜鐢靛帇鎶ヨ鍊�(澶т簬0.1)
+        comVo.batteryVoltAlarm = 7.0 ;//鐢垫睜鐢靛帇鎶ヨ鍊�(澶т簬0.1)
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_39, comVo, null)) ;
+    }
+
+    private BaseResponse cd69(){
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_69, null, null)) ;
     }
 
     private BaseResponse cd3A(){
@@ -97,18 +124,34 @@
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_3A, comVo, null)) ;
     }
 
+    private BaseResponse cd6A(){
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_6A, null, null)) ;
+    }
+
     private BaseResponse cd3B(){
         Com3BVo comVo = new Com3BVo() ;
         comVo.second = 30 ;//闃�闂ㄨ秴鏃舵椂闂�(绉�)(澶т簬1)
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_3B, comVo, null)) ;
     }
 
+    private BaseResponse cd6B(){
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_6B, null, null)) ;
+    }
+
     private BaseResponse cd3C(){
         Com3CVo comVo = new Com3CVo() ;
-        comVo.minute = 10 ;//鑷姤鍛ㄦ湡(鍒嗛挓)(澶т簬0)
+        comVo.minute = 60 ;
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_3C, comVo, null)) ;
     }
 
+    private BaseResponse cd65(){
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_65, null, null)) ;
+    }
+
+    private BaseResponse<String> cd91() {
+        return this.sendCom2Mw(this.command(CodeV1_0_1.cd_91, null, null)) ;
+    }
+
     private BaseResponse cd92(){
         return this.sendCom2Mw(this.command(CodeV1_0_1.cd_92, null, null)) ;
     }

--
Gitblit v1.8.0