From cf3aaffad0b0f858c869bb21c9a01bf778dd8adc Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期二, 05 十一月 2024 15:27:06 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/global/GlCreate.java                     |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Up.java                            |    8 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Up.java                            |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java                                              |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForDownV202404.java            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForDownV1.java                      |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Down.java                          |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownConstantTask.java                    |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Down.java                          |    3 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/web/com/CommandCtrl.java                                 |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Up.java                            |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/protocolDriver/RtuInfoNotify.java                 |   42 +
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Up.java                            |   12 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Up.java                            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Up.java                            |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatusDealer.java                       |  244 +++---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Up.java                            |   11 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Up.java                            |   18 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Up.java                            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/CommonV2.java                                  |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java                            |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/OnLineV2.java                                  |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForDownV2.java                      |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java                                  |    5 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd85Vo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/ValveStateInfo.java                          |   22 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_B0_Down.java                          |    3 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/CommandInnerDeaLer.java                     |   29 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java                  |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpDownCommandObj.java                     |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Up.java                            |    7 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSession.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Up.java                       |    8 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileVo.java                                  |   47 +
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Down.java                          |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCache.java                       |  146 ++--
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/CommonV1.java                                  |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd84Vo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Up.java                            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java                  |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileParse.java                               |  175 +++++
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultFromRtu.java                                 |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_B0_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Up.java                            |   12 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Command.java                                          |   12 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Up.java                            |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/RtuStatusDeal.java            |   28 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Up.java                            |   19 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java                     |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java                              |   45 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java                       |   17 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Up.java                            |   10 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java                                                |   45 +
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Up.java                            |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Up.java                            |   11 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Up.java                       |    9 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/NotifyInfo.java                                       |    9 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Up.java                            |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Up.java                            |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Up.java                            |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealIcRemainMoneyV2.java         |   20 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForUpV2.java                        |   20 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Up.java                       |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForUpV202404.java              |   12 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd68Vo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Up.java                            |   14 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Up.java                    |    9 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Down.java                          |    3 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/AdapterImp_ProtocolUnit.java                      |   13 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Down.java                          |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealIcRemainMoney.java           |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForUpV1.java                        |   10 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLine.java                                           |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Up.java                            |    8 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java                    |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java                  |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Up.java                       |    1 
 pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/rtuMw/CodeLocal.java                                        |    4 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Up.java                       |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Up.java                            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Driver.java                                           |   11 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Down.java                     |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/WebDownComTask.java                         |   72 ++
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Up.java                       |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/CodeLocal.java                |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Up.java                            |   13 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Notify.java                                           |   20 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Up.java                            |    6 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java                                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Up.java                            |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Up.java                       |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Up.java                            |    1 
 pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd55Vo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd56Vo.java                     |    2 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java             |    7 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/OnLineV1.java                                  |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/DriverV2.java                                  |   10 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java                  |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Up.java                       |   11 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Down.java                     |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCacheBk.java                     |   44 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/CodeParseCallback.java                                |    8 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Down.java                          |    1 
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatus.java                             |   95 ++
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd5CVo.java                     |    2 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java                       |    8 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Down.java                     |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Down.java                          |    3 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultToRtu.java                                   |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/DriverV202404.java                        |   11 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd83Vo.java                     |    2 
 /dev/null                                                                                                                   |   68 --
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java                       |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Up.java                            |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Down.java                          |    1 
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnitAdapter.java                              |    7 
 274 files changed, 1,517 insertions(+), 388 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/CodeParseCallback.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/CodeParseCallback.java
index eb5141b..ed45a9f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/CodeParseCallback.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/CodeParseCallback.java
@@ -8,5 +8,11 @@
 	 * @param reportOrResponse_trueOrFalse 涓婃姤鏄痶rue锛屽懡浠ゅ搷搴旀槸false
 	 */
 	void callback(Boolean reportOrResponse_trueOrFalse) ;
-	
+
+	/**
+	 * 鍙湁鍗忚瑙f瀽鍣ㄦ墠鐭ラ亾RTU鐪熷疄鐨勭姸鎬侊紝鎵�璁ゆ彁渚涙鎺ュ彛锛屽悜澶栭�氱煡璁惧鐨勪竴浜涚姸鎬�
+	 * @param infos
+	 */
+	void notify(NotifyInfo ...infos) ;
+
 }
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 ed3cd69..f7334b8 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
@@ -28,13 +28,18 @@
 	 * 鏈潯鍛戒护鐨処D
 	 * 涓�鑸槸鍛戒护鍦ㄦ暟鎹簱涓瓨鍌ㄨ褰旾D鐨勫瓧绗︿覆褰㈠紡
 	 */
-	public String id; 
-	
+	public String id;
+
 	/**
 	 * RTU鍗忚鍚嶇О锛岃繖涓彲浠ヤ负绌猴紝鍥犱负RTU涓婅鏁版嵁瑙f瀽鍑哄崗璁悕绉帮紝鐒跺悗绯荤粺鎶婂崗璁悕绉颁繚瀛樺湪RTU鏁版嵁璁板綍涓紝浠庢鍗忚鍚嶇О灏变笉鍐嶇┖浜�
 	 */
 	public String protocol;
-	
+
+	/**
+	 * RTU鍗忚鍚嶇О锛岃繖涓彲浠ヤ负绌�
+	 */
+	public Short protocolVersion;
+
 	/**
 	 * RTU 鍦板潃
 	 */
@@ -69,6 +74,7 @@
 	public String toString(){
 		String s = "鍛戒护id=" + id + "\n" ;
 		s += (protocol == null ? "" : ("鍗忚=" + protocol + "\n"));
+		s += (protocolVersion == null ? "" : ("鍗忚鐗堟湰鍙�=" + protocolVersion + "\n"));
 		s += (rtuAddr == null ? "" : ("Rtu鍦板潃=" + rtuAddr + "\n"));
 		s += "鍛戒护绫诲瀷=" + (type.equals(CommandType.innerCommand)?"鍐呴儴鍛戒护":"RTU鍛戒护") + "\n" ;
 		s += (code == null ? "" : ("鍔熻兘鐮�=" + code + "\n")) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Driver.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Driver.java
index 7593dab..3e7a3e3 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Driver.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Driver.java
@@ -14,10 +14,21 @@
 	protected HashMap<String, Class<CodeParse>> downCode2Class = new HashMap<>() ;
 	protected HashMap<String, CodeParse> downCode2ClassInstance = new HashMap<>() ;
 
+	protected Notify notify ;
+
 	/**
 	 * 娓呯┖鑷繁
 	 */
 	public abstract void clear() ;
+
+	/**
+     * 璁剧疆RTU淇℃伅閫氱煡鍣�
+     * @param notify 閫氱煡
+     */
+	public void setNotify(Notify notify){
+		this.notify = notify ;
+	}
+
 	/**
 	 * 鍗曠嚎绋嬪崟渚婦river妯″紡涓嬭繍琛�
 	 * 鎵弿璇嗗埆鍔熻兘鐮佹敞瑙g被
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultFromRtu.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultFromRtu.java
index 51289ac..a7464d6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultFromRtu.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultFromRtu.java
@@ -14,6 +14,7 @@
 
 	public String rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
 	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;//鍗忚鐗堟湰鍙�
 	public String rtuAddr ;//Rtu鍦板潃
 	public String upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
 	public String upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultToRtu.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultToRtu.java
index ffa2ef9..5640128 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultToRtu.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/MidResultToRtu.java
@@ -12,6 +12,7 @@
 
 	public String rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
 	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;//鍗忚鐗堟湰鍙�
 	public String rtuAddr ;//Rtu鍦板潃
 	public String commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
 	public String downCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Notify.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Notify.java
new file mode 100644
index 0000000..e1b1bde
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/Notify.java
@@ -0,0 +1,20 @@
+package com.dy.common.mw.protocol;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/3 13:12
+ * @Description 鍙湁椹卞姩+鍗忚瑙f瀽鍣ㄦ墠鐭ラ亾RTU鐪熷疄鐨勭姸鎬侊紝鎵�浠ユ彁渚涙鎺ュ彛锛屽悜澶栭�氱煡璁惧鐨勪竴浜涚姸鎬�
+ */
+public interface Notify {
+    /**
+     * RTU淇℃伅閫氱煡
+     * @param rtuAddr
+     * @param protocolName
+     * @param protocolVersion
+     * @param info
+     */
+    void notify(String rtuAddr,
+                       String protocolName,
+                       Short protocolVersion,
+                       NotifyInfo ...info) ;
+}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/NotifyInfo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/NotifyInfo.java
new file mode 100644
index 0000000..87b209b
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/NotifyInfo.java
@@ -0,0 +1,9 @@
+package com.dy.common.mw.protocol;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/3 13:12
+ * @Description 椹卞姩妯″潡閫氱煡鐨勪俊鎭紝鏍囪瘑绫绘帴鍙o紝鏃犲叿浣撴柟娉�
+ */
+public interface NotifyInfo {
+}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLine.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLine.java
index 746e926..71cfe87 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLine.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/OnLine.java
@@ -16,6 +16,7 @@
 	class OnLineResult{
 		public int result ;//鍒嗘瀽缁撴灉
 		public String protocolName ;//鍗忚鍚嶇О
+		public Short protocolVersion ;//鍗忚鐗堟湰鍙�
 		public String rtuAddr ;//Rtu鍦板潃
 		public byte[] remoteData;//闇�瑕佸悜Rtu鍥炲啓鐨勬暟鎹�
 		public OnLineResult(){
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
index c33a3c3..7a3c529 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnit.java
@@ -55,6 +55,7 @@
 			Driver dri = ProtocolCache.getDriver(protocolName) ;
 			if(dri != null){
 				dri.scanAnnotationCode();
+				dri.setNotify(adapter.getSingleRtuInfoNotify(protocolName));
 			}
 		}
 		if(adapter.getConfig().showStartInfo){
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnitAdapter.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnitAdapter.java
index 21b2ec0..767852b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnitAdapter.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/ProtocolUnitAdapter.java
@@ -9,6 +9,13 @@
 	 * @return ProtocolConfigVo
 	 */
 	ProtocolConfigVo getConfig() ;
+
+	/**
+	 * 鍗曠嚎绋嬬幆澧冧腑杩愯锛屽緱鍒板崟涓猂TU淇℃伅閫氱煡鍣�
+	 * @param protocolName 鍗忚鍚嶇О
+	 * @return MidResultAction
+	 */
+	Notify getSingleRtuInfoNotify(String protocolName) ;
 	/**
 	 * 鍗曠嚎绋嬬幆澧冧腑杩愯锛屽緱鍒板崟涓鐞哛TU涓嬭鏁版嵁鐨刟ction鎵ц瀵硅薄
 	 * @param protocolName 鍗忚鍚嶇О
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/aepRtuStatus/OnOffLineVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/aepRtuStatus/OnOffLineVo.java
deleted file mode 100644
index bde7b9e..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/aepRtuStatus/OnOffLineVo.java
+++ /dev/null
@@ -1,87 +0,0 @@
-package com.dy.common.mw.protocol.aepRtuStatus;
-
-import com.alibaba.fastjson2.JSON ;
-
-/**
- * 涓婁笅绾垮�煎璞�
- * 鍙湁搴旂敤鐢典俊骞冲彴鏃舵湁鏁�
- */
-@SuppressWarnings("unused")
-public class OnOffLineVo {
-	
-	public String rtuAddr; //:"862592059434970"
-	public String deviceId; //:"59a4d90bf7a04a4d3523fe15d6f3f",
-	public String productId; //:"15410798",
-	public String ipv4Address; //:"117.132.195.213",
-	public Boolean onTrueOffFalse ;
-	
-	public String toString(){
-		String s = "rtuAddr: " + rtuAddr  ;
-		s += "\ndeviceId锛�" + deviceId ;
-		s += "\nproductId锛�" + productId ;
-		s += "\nipv4Address锛�" + ipv4Address ;
-		s += "\nonTrueOffFalse锛�" + onTrueOffFalse ;
-		return s ;
-	}
-	
-	/**
-	 * 瀵硅薄杞垚json
-	 * @return json
-	 * @throws Exception 寮傚父
-	 */
-	public String toJson()throws Exception{
-		try{
-			return JSON.toJSONString(this) ;
-		}catch(Exception e){
-			throw new Exception(e.getMessage() , e ) ;
-		}
-	}
-	/**
-	 * json杞垚瀵硅薄
-	 * @param json json
-	 * @return OnOffLineVo
-	 * @throws Exception 寮傚父
-	 */
-	public static OnOffLineVo jsonToObject(String json)throws Exception{
-		try{
-			return JSON.parseObject(json, OnOffLineVo.class) ;
-		}catch(Exception e){
-			throw new Exception(e.getMessage() , e ) ;
-		}
-	}
-	
-	public String getRtuAddr() {
-		return rtuAddr;
-	}
-	public void setRtuAddr(String rtuAddr) {
-		this.rtuAddr = rtuAddr;
-	}
-	public String getDeviceId() {
-		return deviceId;
-	}
-	public void setDeviceId(String deviceId) {
-		this.deviceId = deviceId;
-	}
-	public String getProductId() {
-		return productId;
-	}
-	public void setProductId(String productId) {
-		this.productId = productId;
-	}
-	@SuppressWarnings("unused")
-	public String getIpv4Address() {
-		return ipv4Address;
-	}
-	@SuppressWarnings("unused")
-	public void setIpv4Address(String ipv4Address) {
-		this.ipv4Address = ipv4Address;
-	}
-	@SuppressWarnings("unused")
-	public Boolean getOnTrueOffFalse() {
-		return onTrueOffFalse;
-	}
-	@SuppressWarnings("unused")
-	public void setOnTrueOffFalse(Boolean onTrueOffFalse) {
-		this.onTrueOffFalse = onTrueOffFalse;
-	}
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/CommonV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/CommonV1.java
index 43fd2db..fb408c2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/CommonV1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/CommonV1.java
@@ -15,7 +15,7 @@
 	public Boolean isThisProtocolHead(byte[] bs) throws Exception{
 		if(bs == null){
 			return null ;
-		}else if(bs.length >= (ProtocolConstantV206V1.ctrlIndex - 1)
+		}else if(bs.length >= (ProtocolConstantV206V1.ctrlIndex)
 				&& bs[0] == ProtocolConstantV206V1.P_Head_Byte
 				&& bs[2] == ProtocolConstantV206V1.P_Head_Byte){
 			//String vs = this.parseVersion(bs) ;
@@ -32,7 +32,9 @@
 	 * @throws Exception 寮傚父
 	 */
 	public void checkHead(byte[] bs) throws Exception{
-		if(bs.length < ProtocolConstantV206V1.onLineDataMinLength || bs[0] != ProtocolConstantV206V1.P_Head_Byte || bs[2] != ProtocolConstantV206V1.P_Head_Byte){
+		if(bs.length < ProtocolConstantV206V1.onLineDataMinLength
+				|| bs[0] != ProtocolConstantV206V1.P_Head_Byte
+				|| bs[2] != ProtocolConstantV206V1.P_Head_Byte){
 			throw new Exception("涓婅鏁版嵁甯уご涓嶆纭紒") ;
 		}
 	}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java
index 9f58c9b..fc13a7c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java
@@ -87,6 +87,7 @@
 			upData.setSubData(dV1) ;
 			
 			this.upCpParams.setValue(ProtocolConstantV206V1.protocolName,
+					ProtocolConstantV206V1.protocolVer,
 					rtuAddr, 
 					upCode,
 					upHex, 
@@ -101,6 +102,9 @@
 					public void callback(Boolean flag) {
 						reportOrResponse_trueOrFalse = flag ;
 						rtuAddrInData = dV1.getRtuAddr() ;
+					}
+					@Override
+					public void notify(NotifyInfo ...infos) {
 					}
 				});
 			}
@@ -136,6 +140,7 @@
 			this.downCpParams.setValue(
 					RtuResultSendWebUrl,
 					ProtocolConstantV206V1.protocolName,
+					command.protocolVersion==null?ProtocolConstantV206V1.protocolVer:command.protocolVersion,
 					rtuAddr, 
 					command.getId(),
 					commandCode, 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/OnLineV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/OnLineV1.java
index 7da5eab..20f1359 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/OnLineV1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/OnLineV1.java
@@ -33,6 +33,7 @@
 			olr.result = OnLine.OnLineAction_success ;
 			olr.rtuAddr = cp.parseRtuAddr(upBuf) ;
 			olr.protocolName = ProtocolConstantV206V1.protocolName ;
+			olr.protocolVersion = ProtocolConstantV206V1.protocolVer ;
 		}
 		return olr;
 	}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForDownV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForDownV1.java
index 04cca4f..782c3f2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForDownV1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForDownV1.java
@@ -6,6 +6,7 @@
 
 	public String rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
 	public String protocolName ;
+	public Short protocolVersion ;
 	public String rtuAddr ;//鎺у埗鍣ㄥ湴鍧�
 	public String commandId ;
 	public String commandCode ;
@@ -16,7 +17,8 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.commandId = null ;
 		this.commandCode = null ; 
 		this.param = null ; 
@@ -26,6 +28,7 @@
 	public void setValue(
 			String rtuResultSendWebUrl,
 			String protocolName,
+			Short protocolVersion,
 			String rtuAddr,
 			String commandId,
 			String commandCode, 
@@ -33,6 +36,7 @@
 			Object attachment ){
 		this.rtuResultSendWebUrl = rtuResultSendWebUrl ;
 		this.protocolName = protocolName ;
+		this.protocolVersion = protocolVersion ;
 		this.rtuAddr = rtuAddr ;
 		this.commandId = commandId ;
 		this.commandCode = commandCode ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForUpV1.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForUpV1.java
index f6cea05..5500d20 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForUpV1.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/ParseParamsForUpV1.java
@@ -6,6 +6,7 @@
 public class ParseParamsForUpV1 implements CodeParseParams{
 	
 	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;
 	public String rtuAddr ;//鎺у埗鍣ㄥ潃
 	public String upCode ;//涓婅鎶ユ枃鏁版嵁涓殑鍔熻兘鐮�
 	public String upHex ;//琛屾姤鏂囨暟鎹崄鍏繘鍒跺舰寮�
@@ -16,7 +17,8 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.upCode = null ;
 		this.upHex = null ; 
 		this.upBuffer = null ; 
@@ -24,13 +26,15 @@
 	}
 	
 	public void setValue(String protocolName, 
-			String rtuAddr, 
+			Short protocolVersion,
+			String rtuAddr,
 			String upCode,
 			String upHex, 
 			byte[] upBuffer,
 			Data data){
 		this.protocolName = protocolName ; 
-		this.rtuAddr = rtuAddr ; 
+		this.protocolVersion = protocolVersion ;
+		this.rtuAddr = rtuAddr ;
 		this.upCode = upCode ;
 		this.upHex = upHex ; 
 		this.upBuffer = upBuffer ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Down.java
index dcd0844..dabe900 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Down.java
@@ -20,6 +20,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Up.java
index 694fedc..6d24b13 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_02_Up.java
@@ -34,6 +34,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +48,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V1.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +59,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Down.java
index f622e9d..855fff8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Down.java
@@ -30,6 +30,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Up.java
index 3e9d66f..8c7d5da 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_10_Up.java
@@ -36,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Down.java
index 2abfde2..b8beabb 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Up.java
index 8fbfea1..d8677cd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_12_Up.java
@@ -31,6 +31,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Down.java
index 89cf6bb..813a1c2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Up.java
index edc48b5..95a4534 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_21_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Down.java
index 14d8cdf..70a348d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Down.java
@@ -28,6 +28,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Up.java
index 1cf81e3..f51d558 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_36_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Down.java
index 8bdbaed..aeef95e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Up.java
index 8902c37..39479b6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_37_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Down.java
index aa75afc..f749acd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Down.java
@@ -30,6 +30,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Up.java
index 86e7290..676ca54 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_38_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Down.java
index ad04dfc..20ca593 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Up.java
index 48ad54e..3227b6e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_39_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Down.java
index ced9d16..77b8d44 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Up.java
index 1b5b24a..1da4cc6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3A_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Down.java
index 2de63b8..d43bbed 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Up.java
index 329e078..52632dd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3B_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Down.java
index 9e236be..4aae89a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Up.java
index 9448fd2..60b5bd7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3C_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Down.java
index 9ecc1f9..2f0f4bf 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Down.java
@@ -28,6 +28,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Up.java
index 8084f10..f5c4653 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_3D_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Down.java
index 07310e5..ba5ca46 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Up.java
index 619c88a..3835d21 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_51_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Down.java
index fb2fa8f..c818e1a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Up.java
index 9776589..6827ac6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_5E_Up.java
@@ -36,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Down.java
index 0a8f714..f7fab42 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Up.java
index c7f5048..a606c52 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_65_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Down.java
index b362865..4a112e2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Down.java
@@ -29,6 +29,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Up.java
index 30ce892..fabbb8d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_66_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Down.java
index 9d94181..3949595 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Up.java
index 81cfacb..840034d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_67_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Down.java
index 19071b2..27a8a01 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Up.java
index 15ec71b..51198e6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_68_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Down.java
index 5c1dd45..bad903b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Up.java
index 94caf4a..8046831 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_69_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Down.java
index 4d5a23a..6b6b63b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Up.java
index 175f2b6..4f1c8cb 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6A_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Down.java
index 2aa5b0c..c899d81 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Up.java
index 9d8cb3d..9c3547d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6B_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Down.java
index b5737c5..8a93e72 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Up.java
index 9c41bdf..fa6df59 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_6D_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Down.java
index 298271d..b9faef1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Up.java
index 0106d2a..5fa37cd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_81_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd81Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +34,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V1.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +59,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,13 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd81Vo cdData = (DataCd81Vo)((DataV1)para.data.getSubData()).subData ;
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Down.java
index c47e7fd..e1892c4 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Up.java
index 05ed673..75ca70d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_83_Up.java
@@ -3,8 +3,10 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd81Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd83CloseVo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd83OpenVo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +50,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V1.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +61,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -72,6 +77,14 @@
             //浣庡姛鑰楁椂锛屽敖蹇彂閫�
             confirmCommand.isQuickSend = true ;
         }
+        if(para.data != null && para.data.getSubData() != null){
+            Object subData = ((DataV1)para.data.getSubData()).subData ;
+            if(subData instanceof DataCd83OpenVo){
+                callback.notify(new ValveStateInfo(true));
+            }else if(subData instanceof DataCd83CloseVo){
+                callback.notify(new ValveStateInfo(false));
+            }
+        }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
         return new MidResult[]{midRs, confirmCommand} ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Down.java
index 7407bd6..ef8be95 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Up.java
index 534a7e7..02e99ce 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_84_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd84Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +34,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V1.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +59,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,20 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd84Vo cdData = (DataCd84Vo)((DataV1)para.data.getSubData()).subData ;
+            if(CommonV1.isCloseValveType(cdData.opType)){
+                callback.notify(new ValveStateInfo(false)) ;
+            }else{
+                callback.notify(new ValveStateInfo(true)) ;
+            }
+            /* 浠ヤ笅鍒ゆ柇闃�闂ㄥ紑鍚姩涓庡叧闂�佷笉鍙彇锛屽洜涓哄湪闃�鎵撳紑杩囩▼涓紝宸ヤ綔鎶ヤ腑鐨勯榾鐘舵�佷笉姝g‘锛屼緥濡傚湪寮�鍚繃绋嬩腑闃�闂ㄧ姸鎬佹槸鍏抽棴鎬�
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+            */
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Down.java
index 33bea0b..ddb5366 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Up.java
index fe3104c..d4bb338 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_91_Up.java
@@ -30,6 +30,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Down.java
index 27cd937..34b3cf6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Up.java
index f4b05ca..66ed0e1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_92_Up.java
@@ -2,7 +2,10 @@
 
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd83CloseVo;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd83OpenVo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd92Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -38,6 +41,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +51,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd92Vo subData = (DataCd92Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Down.java
index 246db78..0a0824a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Up.java
index 5c2d1d7..b6d0c64 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_93_Up.java
@@ -2,7 +2,9 @@
 
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd92Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd93Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -38,6 +40,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +50,11 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd93Vo subData = (DataCd93Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(!subData.success));
+        }
+
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Down.java
index ddb8938..c8381c1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Down.java
@@ -30,6 +30,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Up.java
index 49e8c59..280e67f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_97_Up.java
@@ -3,7 +3,9 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd92Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd97Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -38,6 +40,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +50,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd97Vo subData = (DataCd97Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Down.java
index 8a7c310..f2fe152 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Down.java
@@ -30,6 +30,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java
index 096d801..5fe1408 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java
@@ -3,7 +3,9 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd97Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd98Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -38,6 +40,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +50,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd98Vo subData = (DataCd98Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(!subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Down.java
index 42903bb..9579587 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Up.java
index 93232bf..7ecbfbf 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_99_Up.java
@@ -3,7 +3,9 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd98Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCd99Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -37,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +49,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd99Vo subData = (DataCd99Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Down.java
index 719c3f8..3a252d9 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Up.java
index ec5d1f7..b9c3eac 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A0_Up.java
@@ -3,7 +3,9 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V1.upVos.DataCd99Vo;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCdA0Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -37,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +49,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCdA0Vo subData = (DataCdA0Vo)((DataV1)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Down.java
index 7f9c086..2777710 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Up.java
index 5969a4a..7a77b8c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A1_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Down.java
index bfd22cb..c72ffa1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Up.java
index 9e804cc..60caa89 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_A2_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_B0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_B0_Down.java
index 843ae61..7111063 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_B0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_B0_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Down.java
index 7b18575..c521fcd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Up.java
index 208d750..8c0d643 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_C0_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V1.*;
 import com.dy.common.mw.protocol.p206V1.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V1.upVos.DataCdC0Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +34,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion; //鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V1.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +59,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,13 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCdC0Vo cdData = (DataCdC0Vo)((DataV1)para.data.getSubData()).subData ;
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/CommonV2.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/CommonV2.java
index 1381905..a0d3c47 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/CommonV2.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/CommonV2.java
@@ -15,7 +15,7 @@
 	public Boolean isThisProtocolHead(byte[] bs) throws Exception{
 		if(bs == null){
 			return null ;
-		}else if(bs.length >= (ProtocolConstantV206V2.ctrlIndex - 1)
+		}else if(bs.length >= (ProtocolConstantV206V2.ctrlIndex)
 				&& bs[ProtocolConstantV206V2.headFlag1Index] == ProtocolConstantV206V2.P_Head_Byte
 				&& bs[ProtocolConstantV206V2.headFlag2Index] == ProtocolConstantV206V2.P_Head_Byte){
 			Short vs = this.parseVersion(bs) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/DriverV2.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/DriverV2.java
index 7f3b0ef..f1defc1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/DriverV2.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/DriverV2.java
@@ -57,6 +57,7 @@
 		this.clear();
 		boolean isFail = false ;
 		String upCode = null ;
+		Short protocolVersion = null ;
 		try{
 			CommonV2 cp = new CommonV2() ;
 			cp.checkHead(upBuffer) ;
@@ -66,6 +67,7 @@
 				return new MidResult[]{(new MidResultError(ProtocolConstantV206V2.protocolName, rtuAddr, "涓ラ噸閿欒锛屼笂琛屾暟鎹瓹RC妫�鏌ュけ璐ワ紝" + crcStr, null))} ;
 			}
 			rtuAddr = cp.parseRtuAddr(upBuffer) ;
+			protocolVersion = cp.parseVersion(upBuffer) ;
 			upCode = cp.parseCode(upBuffer) ;
 			if(upCode == null){
 				return new MidResult[]{(new MidResultError(ProtocolConstantV206V2.protocolName, rtuAddr, "涓ラ噸閿欒锛屾湭鑳戒粠涓婅鏁版嵁涓В鏋愬嚭鍔熻兘鐮侊紒", null))} ;
@@ -74,19 +76,19 @@
 			Data upData = new Data() ;
 			upData.setRtuAddr(rtuAddr) ;
 			upData.setProtocol(ProtocolConstantV206V2.protocolName);
-			upData.setProtocolVer(ProtocolConstantV206V2.protocolVer);
+			upData.setProtocolVer(protocolVersion);
 			upData.setCode(upCode) ;
 			upData.setHex(upHex) ;
 			
 			
 			DataV2 dV2 = new DataV2() ;
-			//dV2.version = cp.parseVersion(upBuffer) ;
 			dV2.rtuAddr = rtuAddr ;
 			dV2.dt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
 
 			upData.setSubData(dV2) ;
 			
 			this.upCpParams.setValue(ProtocolConstantV206V2.protocolName,
+					protocolVersion,
 					rtuAddr, 
 					upCode,
 					upHex, 
@@ -101,6 +103,9 @@
 					public void callback(Boolean flag) {
 						reportOrResponse_trueOrFalse = flag ;
 						rtuAddrInData = dV2.getRtuAddr() ;
+					}
+					@Override
+					public void notify(NotifyInfo ...infos) {
 					}
 				});
 			}
@@ -136,6 +141,7 @@
 			this.downCpParams.setValue(
 					RtuResultSendWebUrl,
 					ProtocolConstantV206V2.protocolName,
+					command.protocolVersion==null?ProtocolConstantV206V2.protocolVer:command.protocolVersion ,
 					rtuAddr, 
 					command.getId(),
 					commandCode, 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/OnLineV2.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/OnLineV2.java
index 090d655..7ca3647 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/OnLineV2.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/OnLineV2.java
@@ -2,6 +2,7 @@
 
 import com.dy.common.mw.protocol.AnnotationOnLine;
 import com.dy.common.mw.protocol.OnLine;
+import com.dy.common.mw.protocol.p206V1.ProtocolConstantV206V1;
 
 @AnnotationOnLine(
 		enable = true,
@@ -33,6 +34,7 @@
 			olr.result = OnLine.OnLineAction_success ;
 			olr.rtuAddr = cp.parseRtuAddr(upBuf) ;
 			olr.protocolName = ProtocolConstantV206V2.protocolName ;
+			olr.protocolVersion = cp.parseVersion(upBuf) ;
 		}
 		return olr;
 	}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForDownV2.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForDownV2.java
index b4e5305..3888618 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForDownV2.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForDownV2.java
@@ -6,6 +6,7 @@
 
 	public String rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
 	public String protocolName ;
+	public Short protocolVersion ;
 	public String rtuAddr ;//鎺у埗鍣ㄥ湴鍧�
 	public String commandId ;
 	public String commandCode ;
@@ -16,7 +17,8 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.commandId = null ;
 		this.commandCode = null ; 
 		this.param = null ; 
@@ -26,6 +28,7 @@
 	public void setValue(
 			String rtuResultSendWebUrl,
 			String protocolName,
+			Short protocolVersion,
 			String rtuAddr,
 			String commandId,
 			String commandCode, 
@@ -33,6 +36,7 @@
 			Object attachment ){
 		this.rtuResultSendWebUrl = rtuResultSendWebUrl ;
 		this.protocolName = protocolName ;
+		this.protocolVersion = protocolVersion ;
 		this.rtuAddr = rtuAddr ;
 		this.commandId = commandId ;
 		this.commandCode = commandCode ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForUpV2.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForUpV2.java
index a8c3f1d..bfed77a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForUpV2.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/ParseParamsForUpV2.java
@@ -6,6 +6,7 @@
 public class ParseParamsForUpV2 implements CodeParseParams{
 	
 	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;//鍗忚鐗堟湰鍙�
 	public String rtuAddr ;//鎺у埗鍣ㄥ潃
 	public String upCode ;//涓婅鎶ユ枃鏁版嵁涓殑鍔熻兘鐮�
 	public String upHex ;//琛屾姤鏂囨暟鎹崄鍏繘鍒跺舰寮�
@@ -16,21 +17,24 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.upCode = null ;
 		this.upHex = null ; 
 		this.upBuffer = null ; 
 		this.data = null ;
 	}
 	
-	public void setValue(String protocolName, 
-			String rtuAddr, 
-			String upCode,
-			String upHex, 
-			byte[] upBuffer,
-			Data data){
+	public void setValue(String protocolName,
+						Short protocolVersion,
+						String rtuAddr,
+						String upCode,
+						String upHex,
+						byte[] upBuffer,
+						Data data){
 		this.protocolName = protocolName ; 
-		this.rtuAddr = rtuAddr ; 
+		this.protocolVersion = protocolVersion ;
+		this.rtuAddr = rtuAddr ;
 		this.upCode = upCode ;
 		this.upHex = upHex ; 
 		this.upBuffer = upBuffer ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Down.java
index 3a86704..aa4c391 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Down.java
@@ -23,6 +23,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -51,7 +52,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Up.java
index 254c153..82e8a79 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_02_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd02Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V2.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -72,7 +76,15 @@
             //浣庡姛鑰楁椂锛屽敖蹇彂閫�
             confirmCommand.isQuickSend = true ;
         }
+
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd02Vo cdData = (DataCd02Vo)((DataV2)para.data.getSubData()).subData ;
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Down.java
index 3dde8dc..b0e7deb 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Down.java
@@ -30,6 +30,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -71,7 +72,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Up.java
index 17a5ae4..940ee74 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_10_Up.java
@@ -36,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Down.java
index 8d43c6b..8351ca8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -51,7 +52,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Up.java
index ea90b5c..851d6a6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_12_Up.java
@@ -31,6 +31,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Down.java
index 2c26258..329e340 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -77,7 +78,7 @@
             CommonV2 commonV_1 = new CommonV2() ;
             byte[] bytes ;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++ ;
             bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Up.java
index c34c1e4..83574ef 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_21_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Down.java
index 83229bd..2647f44 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Down.java
@@ -28,6 +28,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -56,7 +57,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Up.java
index ac80b4c..8277a5d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_36_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Down.java
index c007117..c8b4557 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,7 +75,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Up.java
index afc2b70..9ced353 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_37_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Down.java
index 711b548..2cca9d1 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Down.java
@@ -30,6 +30,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,7 +74,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Up.java
index 615ac5a..cf7218b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_38_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Down.java
index 7d8ab6c..c0a4aa3 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,7 +75,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Up.java
index b8614f9..6ad3d7e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_39_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Down.java
index edcf6ae..c8ea469 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,7 +75,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Up.java
index 102edd0..28f5f9b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3A_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Down.java
index cfc6b47..359a9f7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,7 +75,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Up.java
index fb04668..d270f86 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3B_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Down.java
index 2ac3745..1958647 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Down.java
@@ -31,6 +31,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,7 +75,7 @@
             CommonV2 commonV_1 = new CommonV2();
             byte[] bytes;
             byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code];
-            byte index = GlCreate.createHead(bsHead);
+            byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
             index++;
             bsHead[index] = commonV_1.createCtrl((byte) 0, (byte) 0);
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Up.java
index ffde460..60fe17b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3C_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Down.java
index 33dd429..4d95dab 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Down.java
@@ -28,6 +28,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -56,7 +57,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Up.java
index ebb74db..6038b85 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_3D_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Down.java
index b93822f..aaeb0fe 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Up.java
index 0b3b1d2..9ad1b8a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_51_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Down.java
index b38a63d..d3869d5 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Up.java
index 7c4dfa0..06d497c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_5E_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Down.java
index 58c5788..5c7d953 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Up.java
index c9366bf..088de81 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_65_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Down.java
index de4a1b0..b12bf34 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Down.java
@@ -29,6 +29,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -57,7 +58,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Up.java
index fd7eecd..963bdcf 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_66_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Down.java
index db99e2d..21ccbeb 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Up.java
index db0a2cc..93f8c01 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_67_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Down.java
index ab63a79..30bdd70 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Up.java
index daa2d44..c0ba79d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_68_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Down.java
index b15fab4..43c68f7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Up.java
index 41bfea0..5c8c07e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_69_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Down.java
index 95040eb..5064b82 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Up.java
index 139556a..f42b986 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6A_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Down.java
index a0c4f37..436ca71 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Up.java
index 0e2192c..e7e3b34 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6B_Up.java
@@ -38,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Down.java
index 128b354..0b8d1d9 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Up.java
index d08cc17..638f676 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_6D_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Down.java
index 6432ce0..55eee92 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -52,7 +53,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Up.java
index 00000b5..97b434d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_81_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd81Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +34,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V2.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +59,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,12 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd81Vo cdData = (DataCd81Vo)((DataV2)para.data.getSubData()).subData ;
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+        }
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Down.java
index 80490fa..a3b6840 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -52,7 +53,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Up.java
index 0c42ae1..6d2b8c7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_83_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd83CloseVo;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd83OpenVo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V2.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -74,6 +78,14 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            Object subData = ((DataV2)para.data.getSubData()).subData ;
+            if(subData instanceof DataCd83OpenVo){
+                callback.notify(new ValveStateInfo(true));
+            }else if(subData instanceof DataCd83CloseVo){
+                callback.notify(new ValveStateInfo(false));
+            }
+        }
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Down.java
index dd6e540..cc658e2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -52,7 +53,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Up.java
index 3860d97..be8fd85 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_84_Up.java
@@ -1,9 +1,11 @@
 package com.dy.common.mw.protocol.p206V2.parse;
 
 import com.dy.common.mw.protocol.*;
+import com.dy.common.mw.protocol.p206V1.CommonV1;
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd84Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V2.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +78,20 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd84Vo cdData = (DataCd84Vo)((DataV2)para.data.getSubData()).subData ;
+            if(CommonV1.isCloseValveType(cdData.opType)){
+                callback.notify(new ValveStateInfo(false)) ;
+            }else{
+                callback.notify(new ValveStateInfo(true)) ;
+            }
+            /* 浠ヤ笅鍒ゆ柇闃�闂ㄥ紑鍚姩涓庡叧闂�佷笉鍙彇锛屽洜涓哄湪闃�鎵撳紑杩囩▼涓紝宸ヤ綔鎶ヤ腑鐨勯榾鐘舵�佷笉姝g‘锛屼緥濡傚湪寮�鍚繃绋嬩腑闃�闂ㄧ姸鎬佹槸鍏抽棴鎬�
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+            */
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Down.java
index 33e6d3f..d9f0d78 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Up.java
index 2d91cd7..e3679f5 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_91_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Down.java
index e446cee..91a2a8e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Up.java
index a432879..a97a04b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_92_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd92Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -38,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd92Vo subData = (DataCd92Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Down.java
index 9926b08..187daab 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Up.java
index c2cec01..ea0543b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_93_Up.java
@@ -3,6 +3,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd93Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -38,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,11 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd93Vo subData = (DataCd93Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(!subData.success));
+        }
+
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Down.java
index 24b78ff..076681a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Down.java
@@ -30,6 +30,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -59,7 +60,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Up.java
index ab2e7f3..795a6ab 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_97_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd97Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -38,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd97Vo subData = (DataCd97Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Down.java
index 569c39c..6408217 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Down.java
@@ -30,6 +30,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -59,7 +60,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Up.java
index 8624b01..c677074 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_98_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd98Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -38,6 +39,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd98Vo subData = (DataCd98Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(!subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Down.java
index 4918916..4bb9ed4 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -58,7 +59,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Up.java
index b62d03e..6a17419 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_99_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCd99Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -37,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd99Vo subData = (DataCd99Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Down.java
index f820560..e3ab9ca 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -58,7 +59,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Up.java
index cebe732..4f06338 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A0_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCdA0Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -37,6 +38,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +48,10 @@
         midRs.reportOrResponse_trueOrFalse = false ;//涓诲姩涓婃姤
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCdA0Vo subData = (DataCdA0Vo)((DataV2)para.data.getSubData()).subData ;
+            callback.notify(new ValveStateInfo(subData.success));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Down.java
index 57c8b45..2806208 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -58,7 +59,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Up.java
index d6757db..9b1767e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A1_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Down.java
index db3db2b..45f6d92 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Down.java
@@ -29,6 +29,7 @@
 
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -58,7 +59,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Up.java
index 832125b..10f3160 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_A2_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_B0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_B0_Down.java
index 7c9ecce..0eda84c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_B0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_B0_Down.java
@@ -27,6 +27,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -55,7 +56,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Down.java
index 9a5d45e..e7515db 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Down.java
@@ -23,6 +23,7 @@
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         midRs.downCode = para.commandCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -52,7 +53,7 @@
         CommonV2 commonV_1 = new CommonV2() ;
         byte[] bytes ;
         byte[] bsHead = new byte[ProtocolConstantV206V2.lenHead2Code] ;
-        byte index = GlCreate.createHead(bsHead);
+        byte index = GlCreate.createHead(para.protocolVersion, bsHead);
 
         index++ ;
         bsHead[index] = commonV_1.createCtrl((byte)0, (byte)0) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Up.java
index cbfc332..24a2992 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/Cd_C0_Up.java
@@ -1,9 +1,13 @@
 package com.dy.common.mw.protocol.p206V2.parse;
 
 import com.dy.common.mw.protocol.*;
+import com.dy.common.mw.protocol.p206V1.CommonV1;
 import com.dy.common.mw.protocol.p206V2.*;
 import com.dy.common.mw.protocol.p206V2.parse.global.GlParse;
+import com.dy.common.mw.protocol.p206V2.upVos.DataCd81Vo;
+import com.dy.common.mw.protocol.p206V2.upVos.DataCd84Vo;
 import com.dy.common.mw.protocol.p206V2.upVos.DataCdC0Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -33,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +51,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V2.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +62,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +80,13 @@
         }
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCdC0Vo cdData = (DataCdC0Vo)((DataV2)para.data.getSubData()).subData ;
+            if(cdData.stateVo != null && cdData.stateVo.valveState != null){
+                callback.notify(new ValveStateInfo(cdData.stateVo.valveState.byteValue()== 1?false:true));
+            }
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/global/GlCreate.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/global/GlCreate.java
index a20b2f3..d57ca14 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/global/GlCreate.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V2/parse/global/GlCreate.java
@@ -8,11 +8,11 @@
 
 public class GlCreate {
 
-    public static byte createHead(byte[] bsHead) throws Exception {
+    public static byte createHead(Short protocolVersion, byte[] bsHead) throws Exception {
         byte index = 0;
         bsHead[index++] = ProtocolConstantV206V2.P_Head_Byte;
         bsHead[index++] = 0;//甯ч暱搴�
-        bsHead[index++] = ProtocolConstantV206V2.protocolVer.byteValue();
+        bsHead[index++] = protocolVersion.byteValue();
         bsHead[index] = ProtocolConstantV206V2.P_Head_Byte;
         return index ;
     }
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/DriverV202404.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/DriverV202404.java
index 6f95d48..8069bf4 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/DriverV202404.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/DriverV202404.java
@@ -14,7 +14,6 @@
 	private ParseParamsForDownV202404 downCpParams ;
 	
 	private Boolean reportOrResponse_trueOrFalse = null ;
-	private String rtuAddrInData = null ;
 
 	public DriverV202404(){
 		upCpParams = new ParseParamsForUpV202404() ;
@@ -33,7 +32,6 @@
 			this.downCpParams.clear();
 		}
 		this.reportOrResponse_trueOrFalse = null ;
-		this.rtuAddrInData = null ;
 	}
 
 	/**
@@ -88,6 +86,7 @@
 			upData.setSubData(dV201) ;
 			
 			this.upCpParams.setValue(ProtocolConstantV206V202404.protocolName,
+					ProtocolConstantV206V202404.protocolVer,
 					rtuAddr, 
 					upCode,
 					upHex, 
@@ -101,7 +100,10 @@
 					@Override
 					public void callback(Boolean flag) {
 						reportOrResponse_trueOrFalse = flag ;
-						rtuAddrInData = dV201.getRtuAddr() ;
+						//rtuAddrInData = dV201.getRtuAddr() ;
+					}
+					@Override
+					public void notify(NotifyInfo ...infos) {
 					}
 				});
 			}
@@ -136,7 +138,8 @@
 			
 			this.downCpParams.setValue(
 					RtuResultSendWebUrl,
-					ProtocolConstantV206V202404.protocolName, 
+					ProtocolConstantV206V202404.protocolName,
+					command.protocolVersion==null?ProtocolConstantV206V202404.protocolVer:command.protocolVersion,
 					rtuAddr, 
 					command.getId(),
 					commandCode, 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForDownV202404.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForDownV202404.java
index ee77e4a..deeca39 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForDownV202404.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForDownV202404.java
@@ -6,6 +6,7 @@
 
 	public String rtuResultSendWebUrl ;//rtu杩斿洖鍛戒护缁撴灉 鍙戝悜鐩殑鍦皐eb URL
 	public String protocolName ;
+	public Short protocolVersion ;
 	public String rtuAddr ;//鎺у埗鍣ㄥ湴鍧�
 	public String commandId ;
 	public String commandCode ;
@@ -16,7 +17,8 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.commandId = null ;
 		this.commandCode = null ; 
 		this.param = null ; 
@@ -26,6 +28,7 @@
 	public void setValue(
 			String rtuResultSendWebUrl,
 			String protocolName,
+			Short protocolVersion,
 			String rtuAddr,
 			String commandId,
 			String commandCode, 
@@ -33,6 +36,7 @@
 			Object attachment ){
 		this.rtuResultSendWebUrl = rtuResultSendWebUrl ;
 		this.protocolName = protocolName ;
+		this.protocolVersion = protocolVersion ;
 		this.rtuAddr = rtuAddr ;
 		this.commandId = commandId ;
 		this.commandCode = commandCode ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForUpV202404.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForUpV202404.java
index 52a2097..aa261ab 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForUpV202404.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/ParseParamsForUpV202404.java
@@ -6,6 +6,7 @@
 public class ParseParamsForUpV202404 implements CodeParseParams{
 	
 	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;//鍗忚鐗堟湰鍙�
 	public String rtuAddr ;//鎺у埗鍣ㄥ潃
 	public String upCode ;//涓婅鎶ユ枃鏁版嵁涓殑鍔熻兘鐮�
 	public String upHex ;//琛屾姤鏂囨暟鎹崄鍏繘鍒跺舰寮�
@@ -16,21 +17,24 @@
 	
 	public void clear(){
 		this.protocolName = null ; 
-		this.rtuAddr = null ; 
+		this.protocolVersion = null ;
+		this.rtuAddr = null ;
 		this.upCode = null ;
 		this.upHex = null ; 
 		this.upBuffer = null ; 
 		this.data = null ;
 	}
 	
-	public void setValue(String protocolName, 
-			String rtuAddr, 
+	public void setValue(String protocolName,
+						 Short protocolVersion,
+			String rtuAddr,
 			String upCode,
 			String upHex, 
 			byte[] upBuffer,
 			Data data){
 		this.protocolName = protocolName ; 
-		this.rtuAddr = rtuAddr ; 
+		this.protocolVersion = protocolVersion ;
+		this.rtuAddr = rtuAddr ;
 		this.upCode = upCode ;
 		this.upHex = upHex ; 
 		this.upBuffer = upBuffer ; 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Down.java
index 2c86b74..45206f6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Up.java
index dde3324..0e89801 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_02_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +47,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +58,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Down.java
index 1881e43..a765f71 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Up.java
index 08054e5..d5e085c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_10_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Down.java
index ed08e68..f18be22 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Down.java
@@ -22,6 +22,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Up.java
index 64f3efd..c8fb493 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_15_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Down.java
index 96b5166..bf44865 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Up.java
index f16db5c..6139a1a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_16_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java
index a1fd00c..d064715 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Down.java
@@ -23,6 +23,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Up.java
index 1b84eeb..2086c11 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_21_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Down.java
index 16c9ad4..7efb836 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Up.java
index 4d869a6..700672b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_22_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java
index dc98e71..615ee73 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Down.java
@@ -23,6 +23,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Up.java
index 5287a06..6d7578c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_23_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java
index 5b633d4..15ba2e4 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Down.java
@@ -22,6 +22,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Up.java
index 408bcec..81a2128 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_24_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Down.java
index 2a9b372..a95f1b8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Up.java
index 398a4b0..ce89f4a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_25_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java
index a7ce2f7..29eff46 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Up.java
index 1041bfb..c566ec3 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_26_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Down.java
index 2798895..639a851 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Up.java
index f78a457..a50403c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_30_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Down.java
index 47c8def..1b8c566 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Up.java
index eef1a08..7b0f8e7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_31_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Down.java
index 5f54353..2310171 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Up.java
index c102987..892a961 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_50_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Down.java
index 1f818f5..08e5e2a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Up.java
index ebedf32..1549a37 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_55_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Down.java
index 146d871..148c0be 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Up.java
index 2cf7313..bc7fc93 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_56_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Down.java
index b8877f6..ecb3840 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Up.java
index d0a5903..6e5aced 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5B_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Down.java
index 27008e2..f79cc64 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java
index 90b78cf..0e97971 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_5C_Up.java
@@ -36,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Down.java
index f471de1..2a66b36 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Up.java
index 768acf9..e3d9320 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_65_Up.java
@@ -37,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Down.java
index 269ad03..0d43cb4 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Up.java
index 3568039..aea14e7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_68_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Down.java
index a212efb..1ed7311 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Up.java
index 4959c69..522d2dc 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_80_Up.java
@@ -2,9 +2,11 @@
 
 
 import com.dy.common.mw.protocol.*;
+import com.dy.common.mw.protocol.p206V1.CommonV1;
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd80_5BVo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +50,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +61,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +78,10 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            callback.notify(new ValveStateInfo(true)) ;
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Down.java
index 11ad43c..b3e53bc 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Up.java
index f234e1f..0a92089 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_81_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd81Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,13 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd81Vo cdData = (DataCd81Vo)((DataV202404)para.data.getSubData()).subData ;
+            if(cdData.statePump != null){
+                //娉�/闃�鐘舵��	(1锛氬紑娉�/闃�锛�0锛氬叧娉�/闃�)
+                callback.notify(new ValveStateInfo(cdData.statePump.byteValue()== 1?true:false));
+            }
+        }
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Down.java
index 8c89b70..f883cb8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Up.java
index cb26ee7..2bb9721 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_83_Up.java
@@ -4,6 +4,7 @@
 import com.dy.common.mw.protocol.*;
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd83Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import com.dy.common.util.DateTime;
 import org.apache.logging.log4j.LogManager;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,8 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +78,7 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Down.java
index 8507173..6c99635 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
index 32972bf..5ef45a9 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_84_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd84Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -72,6 +76,10 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && ((DataV202404)para.data.getSubData()).subData != null){
+            callback.notify(new ValveStateInfo(true));
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Down.java
index 6e1715f..4687060 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Up.java
index e14ca44..53cae94 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_85_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd85Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +35,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +49,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +60,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +77,10 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && ((DataV202404)para.data.getSubData()).subData != null){
+            callback.notify(new ValveStateInfo(false));
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Down.java
index 83eed2d..b58f1d8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java
index f07d675..02e5bc6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_86_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Down.java
index 31e0ef0..9adf52f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java
index 769a15c..7afd97e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_87_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Down.java
index a90a27f..c35d97c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Up.java
index 927f1d7..24e182b 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_88_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Down.java
index 3bd7525..5655c48 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Up.java
index 9500a15..78c68dd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_8A_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -46,6 +47,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -56,6 +58,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
index 182609a..26eb4b6 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Down.java
@@ -23,6 +23,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java
index 1e3546a..acb78d3 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_92_A2_Up.java
@@ -5,6 +5,7 @@
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd92_A2Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -35,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -44,6 +46,11 @@
         midRs.reportOrResponse_trueOrFalse = false ;
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd92_A2Vo subData = (DataCd92_A2Vo)((DataV202404)para.data.getSubData()).subData ;
+            //opResult ;//寮�鍚车/闃�缁撴灉: 0x00:鎴愬姛 0x81:澶辫触
+            callback.notify(new ValveStateInfo(subData.opResult.byteValue() == 0 ? true:false));
+        }
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java
index ca9120a..dc8c81a 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Down.java
@@ -23,6 +23,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Up.java
index bcdd33a..b2fa8c0 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_93_A3_Up.java
@@ -2,9 +2,11 @@
 
 
 import com.dy.common.mw.protocol.*;
+import com.dy.common.mw.protocol.p206V2.upVos.DataCd93Vo;
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCd93_A3Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
@@ -34,6 +36,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -43,6 +46,12 @@
         midRs.reportOrResponse_trueOrFalse = false ;
 
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCd93_A3Vo subData = (DataCd93_A3Vo)((DataV202404)para.data.getSubData()).subData ;
+            //opResult ;//鍏虫车/闃�缁撴灉: 0x00:鎴愬姛 0x81:澶辫触
+            callback.notify(new ValveStateInfo(subData.opResult.byteValue()==0?false:true));
+        }
+
         return new MidResult[]{midRs} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Down.java
index f42c224..fabdc44 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Up.java
index 298dabd..cb40710 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_97_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Down.java
index d659632..8edd28e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Up.java
index 9fb5e76..1a9bc50 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_98_Up.java
@@ -33,6 +33,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Down.java
index f954e74..bd6f63c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Up.java
index eb8bb64..7ae5965 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_99_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Down.java
index 5362b39..f9f22f9 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java
index b24993a..4f0149c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9A_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Down.java
index 7c7dcc4..76fe6ef 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Down.java
@@ -21,6 +21,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Up.java
index 9c3ad3a..9f3a2fd 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_9C_Up.java
@@ -32,6 +32,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Down.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Down.java
index 0942e55..f698ae9 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Down.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Down.java
@@ -19,6 +19,7 @@
 
         MidResultToRtu midRs = new MidResultToRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuResultSendWebUrl = para.rtuResultSendWebUrl ;
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.commandId = para.commandId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java
index e689d31..037cf9c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/Cd_C2_Up.java
@@ -2,9 +2,12 @@
 
 
 import com.dy.common.mw.protocol.*;
+import com.dy.common.mw.protocol.p206V2.upVos.DataCd83CloseVo;
+import com.dy.common.mw.protocol.p206V2.upVos.DataCd83OpenVo;
 import com.dy.common.mw.protocol.p206V202404.*;
 import com.dy.common.mw.protocol.p206V202404.parse.global.GlParse;
 import com.dy.common.mw.protocol.p206V202404.upVos.DataCdC2Vo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
 import com.dy.common.util.ByteUtil;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -34,6 +37,7 @@
 
         MidResultFromRtu midRs = new MidResultFromRtu() ;
         midRs.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        midRs.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         midRs.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         midRs.upCode = para.upCode ;//涓婅鏁版嵁涓殑鍔熻兘鐮�
         midRs.upHex = para.upHex ;//涓婅鏁版嵁鍗佸叚杩涘埗褰㈠紡
@@ -47,6 +51,7 @@
         downCpParams.setValue(
                 null,
                 ProtocolConstantV206V202404.protocolName,
+                para.protocolVersion,
                 para.rtuAddr,
                 Command.defaultId,
                 confirmComCode,
@@ -57,6 +62,7 @@
 
         MidResultToRtu confirmCommand = new MidResultToRtu() ;
         confirmCommand.protocolName = para.protocolName ;//鍗忚鍚嶇О
+        confirmCommand.protocolVersion = para.protocolVersion ;//鍗忚鐗堟湰鍙�
         confirmCommand.rtuAddr = para.rtuAddr ;//Rtu鍦板潃
         confirmCommand.commandId = Command.defaultId ;//鍛戒护ID锛屽彂璧峰懡浠ょ殑瀹㈡埛绔�(web绔�)鐢熸垚锛屼互鍖归厤鍛戒护缁撴灉
         confirmCommand.downCode = confirmComCode ;//涓嬭鍛戒护鍔熻兘鐮�;
@@ -73,6 +79,17 @@
             confirmCommand.isQuickSend = true ;
         }
         callback.callback(midRs.reportOrResponse_trueOrFalse);
+        if(para.data != null && para.data.getSubData() != null){
+            DataCdC2Vo subData = (DataCdC2Vo)((DataV202404)para.data.getSubData()).subData ;
+            //	public Byte opType2 ;//寮�鍚叧闂細0: 寮�鍚� -1:鍏抽棴
+            //	public Boolean success ;//鎵ц缁撴灉锛坱rue鎴愬姛, false澶辫触锛�
+            if(subData.opType2.byteValue() == 0 && subData.success){
+                callback.notify(new ValveStateInfo(true));
+            }else if(subData.opType2.byteValue() == 1 && subData.success){
+                callback.notify(new ValveStateInfo(false));
+            }
+        }
+
         return new MidResult[]{midRs, confirmCommand} ;
     }
     /**
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd55Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd55Vo.java
index d484bf5..893a53d 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd55Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd55Vo.java
@@ -7,7 +7,7 @@
 public class DataCd55Vo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public String icCardAddr ;//IC鍗″湴鍧�(8浣嶆暟瀛楁垨瀛楁瘝)
 	public String icCardNo ;//鐢ㄦ埛鍗″簭鍒楀彿锛�16浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
 	public Double chargeMoney ;//鍗曚綅:鍏�  2浣嶅皬鏁扮偣(鏈�澶у�� 99999999.99)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd56Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd56Vo.java
index 157d4aa..0e899dc 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd56Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd56Vo.java
@@ -7,7 +7,7 @@
 public class DataCd56Vo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Integer waterAlarm ;//鍓╀綑姘撮噺鎶ヨ鍊�,鍗曚綅:m3銆傛暣鏁帮紝鍙栧�艰寖鍥�0~65535
 	public Integer moneyAlarm ;//鍓╀綑閲戦鎶ヨ鍊�,鍗曚綅:鍏冦�傛暣鏁帮紝鍙栧�艰寖鍥�0~65535
 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd5CVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd5CVo.java
index 514e58d..d7659d8 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd5CVo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd5CVo.java
@@ -7,7 +7,7 @@
 public class DataCd5CVo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public String dt ;//瑙傚療鏃堕棿锛坹yyy-mm-dd HH锛�
 	public Double meterAmountDay ;//褰撴棩姘磋〃鍑�娴侀噺锛�2涓皬鏁扮偣
 	public Double farmerAmountDay ;//褰撴棩鐢ㄦ埛鐢ㄦ按閲忥紝2涓皬鏁扮偣
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd68Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd68Vo.java
index 22705f8..72235ad 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd68Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd68Vo.java
@@ -7,7 +7,7 @@
 public class DataCd68Vo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Integer maxAmountYear ;//鏈轰簳骞存渶澶х敤姘撮噺  鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999
 	public Double limitLevel ;//姘翠綅涓嬮檺 鍗曚綅锛歮 鍙栧�艰寖鍥�:0~9999.99
 
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd83Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd83Vo.java
index 9260479..711f28f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd83Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd83Vo.java
@@ -7,7 +7,7 @@
 public class DataCd83Vo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Double waterTotalAmountYear ;//鏈勾绱娴侀噺
 	public Double waterTotalAmountMeter ;//姘磋〃绱娴侀噺
 	public Double eleTotalAmountYear ;//鏈勾绱鐢甸噺
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd84Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd84Vo.java
index ac2df0b..8b865c7 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd84Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd84Vo.java
@@ -7,7 +7,7 @@
 public class DataCd84Vo extends AlarmVo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public String openDt;//寮�娉�/闃�鏃堕棿(yyyy-mm-dd HH:MM:SS)
 	public String icCardAddr ;//IC鍗″湴鍧�锛堣繙绋嬪叧闂椂涓�0锛�
 	public String icCardNo ;//IC鍗$紪鍙凤紙17浣嶆暟瀛楋級
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd85Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd85Vo.java
index 5037c15..3ea4922 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd85Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd85Vo.java
@@ -7,7 +7,7 @@
 public class DataCd85Vo extends AlarmVo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Byte opType ;//鍏虫车/闃�鏂瑰紡:  0x00:鍒峰崱闂� 0x01:骞冲彴鍏� 0x02:APP鍏�  0x03:闈炴硶鍗″叧 0x04:姘磋〃寮傚父鍏� 0x05:鐢佃〃寮傚父鍏� 0x06:鍓╀綑姘撮噺涓嶈冻鍏� 0x07:鍓╀綑閲戦涓嶈冻鍏� 0x08:寮�娉�/闃�鍚庣閬撴病鏈夋祦閲忓叧 0x09:鎺夌數鍐嶄笂鐢点��
 	public String icCardAddr ;//IC鍗″湴鍧�锛堣繙绋嬪叧闂椂涓�0锛�
 	public String icCardNo ;//IC鍗$紪鍙凤紙17浣嶆暟瀛楋級
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
index 928ae12..763a30e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
@@ -7,7 +7,7 @@
 public class DataCd92_A2Vo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public String icCardNo ;//IC鍗$紪鍙凤紙17浣嶆暟瀛楋級
 	public String orderNo ;//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
 	public String opDt ;//寮�娉�/闃�鏃堕棿锛坹yyy-mm-dd HH:MM:SS锛�
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
index fa96d54..0b2c75e 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
@@ -7,7 +7,7 @@
 public class DataCd93_A3Vo extends AlarmVo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Byte opResult ;//鍏虫车/闃�缁撴灉: 0x00:鎴愬姛 0x81:澶辫触
 	public Byte opType ;//鍏虫车/闃�鏂瑰紡:  0x00:鍒峰崱闂� 0x01:骞冲彴鍏� 0x02:APP鍏�  0x03:闈炴硶鍗″叧 0x04:姘磋〃寮傚父鍏� 0x05:鐢佃〃寮傚父鍏� 0x06:鍓╀綑姘撮噺涓嶈冻鍏� 0x07:鍓╀綑閲戦涓嶈冻鍏� 0x08:寮�娉�/闃�鍚庣閬撴病鏈夋祦閲忓叧 0x09:鎺夌數鍐嶄笂鐢点��
 	public String icCardAddr ;//IC鍗″湴鍧�锛堣繙绋嬪叧闂椂涓�0锛�
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java
index c1c590f..c49025c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd9AVo.java
@@ -7,7 +7,7 @@
 public class DataCd9AVo {
 
 	public String controllerType;//鎺у埗鍣ㄧ被鍨� 01锛�0x01锛�:娴嬫帶涓�浣撻榾锛�57(0x57):浜曠數鎺у埗鍣�
-	public Integer projectNo ;//鎺у埗鍣ㄧ被鍨� 0x01:娴嬫帶涓�浣撻榾锛�0x57:浜曠數鎺у埗鍣�
+	public Integer projectNo ;//椤圭洰缂栧彿
 	public Integer maxAmountYear ;//璁惧缁堢骞寸敤姘撮噺 鍗曚綅锛歮3 鏁存暟锛屽彇鍊艰寖鍥�0~99999999
 
 	public String comName ;//鍛戒护鍚嶇О
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/ValveStateInfo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/ValveStateInfo.java
new file mode 100644
index 0000000..13ea8d4
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuState/ValveStateInfo.java
@@ -0,0 +1,22 @@
+package com.dy.common.mw.protocol.rtuState;
+
+import com.dy.common.mw.protocol.NotifyInfo;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/3 13:44
+ * @Description
+ */
+public class ValveStateInfo implements NotifyInfo {
+    /**
+     * 闃�闂ㄧ姸鎬侊紝true琛ㄧず寮�鍚�侊紝false琛ㄧず鍏抽棴
+     * 璇存槑锛�
+     * 寮�鍚�佹寚鐨勬槸闃�闂ㄥ凡缁忔墦寮�鎴栧嵆姝e湪鎵撳紑杩囩▼涓紝
+     * 褰撳墠鎺у埗鍣ㄩ�昏緫鏄細褰撴敹鍒板紑闃�鍛戒护锛屽湪寮�闃�闂ㄨ繃绋嬩腑鎺у埗鍣ㄤ笂鎶ユ暟鎹腑闃�闂ㄧ姸鎬佷粛鏃跺叧闂�侊紝浣嗘垜浠▼搴忚涓鸿繖鏃堕榾闂ㄦ槸寮�鍚�侊紱
+     * 杩欐牱璁捐鐨勭洰鐨勬槸涓哄崌绾ф湇鍔★紝褰撻榾闂ㄦ槸寮�鍚�佹椂涓嶈兘杩涜杩滅▼鍗囩骇
+     */
+    public Boolean openTrueCloseFalse ;
+    public ValveStateInfo(boolean openTrueCloseFalse){
+        this.openTrueCloseFalse = openTrueCloseFalse ;
+    }
+}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/RtuStatuz.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/RtuStatuz.java
deleted file mode 100644
index 3b805fd..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/RtuStatuz.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-import java.io.Serial;
-
-//鐢ㄧ被鍚峈tuStatuz鑰屼笉鏄疪tuStatus,鍥犱负涓巆om.dy.dataMw.protocol.local.RtuStatus鍐茬獊
-public class RtuStatuz implements java.io.Serializable{
-
-	@Serial
-	private static final long serialVersionUID;
-	static {
-		serialVersionUID = 201606281038001L;
-	}
-
-	public String rtuAddr ;
-
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StCommandResult.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StCommandResult.java
deleted file mode 100644
index 3a953d4..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StCommandResult.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-public class StCommandResult extends RtuStatuz {
-	
-	private static final long serialVersionUID = 201606281038002L;
-	
-	public Boolean isSuccess ;
-	public Boolean fail2Success ;
-
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StDownData.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StDownData.java
deleted file mode 100644
index b964ca0..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StDownData.java
+++ /dev/null
@@ -1,14 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-import java.io.Serial;
-
-public class StDownData extends RtuStatuz {
-
-	@Serial
-	private static final long serialVersionUID;
-	static {
-		serialVersionUID = 201606281038003L;
-	}
-
-	public Integer downBufferLen ;
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StOnOffLine.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StOnOffLine.java
deleted file mode 100644
index d43057a..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StOnOffLine.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-import java.io.Serial;
-
-public class StOnOffLine extends RtuStatuz {
-
-	@Serial
-	private static final long serialVersionUID;
-	static {
-		serialVersionUID = 201606281038004L;
-	}
-
-	public Boolean onOff_trueFalse ;
-	public String ip ; 
-	public Integer port ;
-
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StPumpStatus.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StPumpStatus.java
deleted file mode 100644
index b338c94..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StPumpStatus.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-import java.io.Serial;
-
-public class StPumpStatus extends RtuStatuz {
-
-	@Serial
-	private static final long serialVersionUID;
-	static {
-		serialVersionUID = 201706241034001L;
-	}
-
-	public Integer pumpStatus ;//0锛氭车鍚姩浜嗭紝1娉靛仠姝紝null鏈煡鎬�
-	
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StUpData.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StUpData.java
deleted file mode 100644
index 62eba2a..0000000
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/rtuStatus/StUpData.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.dy.common.mw.protocol.rtuStatus;
-
-import java.io.Serial;
-
-public class StUpData extends RtuStatuz {
-
-	@Serial
-	private static final long serialVersionUID;
-	static {
-		serialVersionUID = 201606281038005L;
-	}
-
-	public Integer upBufferLen ;
-	
-	public boolean isReport ;
-}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileParse.java
new file mode 100644
index 0000000..e2f09db
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileParse.java
@@ -0,0 +1,175 @@
+package com.dy.common.softUpgrade.parse;
+
+import cn.hutool.core.util.HexUtil;
+import com.dy.common.util.ByteUtil;
+
+import java.io.*;
+import java.util.List;
+import java.util.stream.Stream;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/2 8:51
+ * @Description
+ */
+public class HexFileParse {
+
+    private static final int hexFileMinLine = 4 ;
+    private static final int lineHeadEndIndex = 9 ;
+    private static final int bytesSplitUnit = 512 ;
+
+    public static void main(String[] args) throws Exception{
+        boolean fromBytes = true ;
+        HexFileParse obj = new HexFileParse() ;
+        if(!fromBytes){
+            String filePath = "D:\\hexFile\\YuanMu_edit241007_01.hex";
+            //File file = new File(filePath) ;
+            HexFileVo vo =  obj.doParse(filePath) ;
+            System.out.println(vo.toString());
+        }else{
+            String filePath = "D:\\hexFile\\YuanMu_edit241007_01.hex";
+            File file = new File(filePath) ;
+            byte[] fileContent = new byte[(int)file.length()] ;
+            FileInputStream fileInputStream = new FileInputStream(file) ;
+            fileInputStream.read(fileContent) ;
+            HexFileVo vo =  obj.doParse(fileContent) ;
+            System.out.println(vo.toString());
+        }
+    }
+    /**
+     * 瑙f瀽Hex鏂囦欢
+     * @param path
+     * @return
+     * @throws Exception
+     */
+    public HexFileVo doParse(String path) throws Exception {
+        File file = new File(path) ;
+        return this.doParse(file) ;
+    }
+
+    /**
+     * 瑙f瀽Hex鏂囦欢
+     * @param file
+     * @return
+     * @throws Exception
+     */
+    public HexFileVo doParse(File file) throws Exception{
+        if(file == null){
+            throw new Exception("Hex鏂囦欢瀵硅薄涓簄ull") ;
+        }
+        if(!file.exists()){
+            throw new Exception("Hex鏂囦欢涓嶅瓨鍦�") ;
+        }
+        Stream<String> linesStream = new BufferedReader(new FileReader(file)).lines() ;
+        List<String> lineList =  linesStream.toList() ;
+        HexFileVo vo = new HexFileVo() ;
+        this.checkAndCalculate(vo, lineList);
+        this.parse(vo, lineList);
+        this.split(vo);
+        return vo ;
+    }
+
+    /**
+     * 瑙f瀽Hex鏂囦欢
+     * @param fileContent
+     * @return
+     * @throws Exception
+     */
+    public HexFileVo doParse(byte[] fileContent) throws Exception{
+        if(fileContent == null || fileContent.length == 0){
+            throw new Exception("Hex鏂囦欢瀵硅薄涓簄ull") ;
+        }
+        ByteArrayInputStream byteInputStream = new ByteArrayInputStream(fileContent);
+        Stream<String> linesStream = new BufferedReader(new InputStreamReader(byteInputStream)).lines() ;
+        List<String> lineList =  linesStream.toList() ;
+        HexFileVo vo = new HexFileVo() ;
+        this.checkAndCalculate(vo, lineList);
+        this.parse(vo, lineList);
+        this.split(vo);
+        return vo ;
+    }
+
+    /**
+     * 鍚堟硶鎬ф鏌ワ紝骞惰绠楁暟鎹寘鏁�
+     * @param vo
+     * @param lineList
+     * @throws Exception
+     */
+    private void checkAndCalculate(HexFileVo vo, List<String> lineList) throws Exception{
+        if(lineList == null){
+            throw new Exception("Hex鏂囦欢鍐呭涓虹┖") ;
+        }
+        vo.totalLines = lineList.size() ;
+        if(vo.totalLines <= 0){
+            throw new Exception("Hex鏂囦欢鍐呭涓虹┖") ;
+        }
+        if(vo.totalLines < hexFileMinLine){
+            throw new Exception("Hex鏂囦欢鍐呭琛屾暟" + vo.totalLines + "涓嶆纭�(鏈�灏忚鏁�" + hexFileMinLine +")") ;
+        }
+        vo.calculateBytes = ((vo.totalLines - 4) * 32) / 1024 * 512 ;
+    }
+
+    /**
+     * 瑙f瀽Hex鏂囦欢鍐呭锛岀粍鍚堟垚涓�涓ぇ鏁版嵁鍖�
+     * @param vo
+     * @param lineList
+     * @throws Exception
+     */
+    private void parse(HexFileVo vo, List<String> lineList) throws Exception{
+        int counter = 0 ;
+        for(String line : lineList){
+            if(counter == 0){
+                // 鏂囦欢澶�
+            }else if(counter == vo.totalLines - 2){
+                // 鏂囦欢灏惧�掓暟绗�2琛�
+            }else if(counter == vo.totalLines - 1){
+                // 鏂囦欢灏惧�掓暟绗�1琛�
+            }else{
+                // 鏂囦欢鍐呭
+                if(line == null){
+                    vo.errors.add("绗�" + counter + "琛屽唴瀹逛负绌�") ;
+                }else{
+                    line = line.trim() ;
+                    if(line.length() == 0){
+                        vo.errors.add("绗�" + counter + "琛屽唴瀹逛负绌�") ;
+                    }else{
+                        if(!line.startsWith(":")){
+                            vo.errors.add("绗�" + counter + "琛屽唴瀹逛笉鏄互:寮�澶�") ;
+                        }else{
+                            line = line.substring(lineHeadEndIndex, line.length() - 2) ;
+                            if(vo.bytes.length == 0){
+                                vo.bytes = HexUtil.decodeHex(line) ;
+                            }else{
+                                byte[] bytes = HexUtil.decodeHex(line) ;
+                                vo.bytes = ByteUtil.bytesMerge(vo.bytes, bytes) ;
+                            }
+                        }
+                    }
+                }
+            }
+            counter ++ ;
+        }
+    }
+
+    /**
+     * 浠�512涓哄崟浣嶅垎鍓叉暟鎹寘
+     * @param vo
+     */
+    private void split(HexFileVo vo){
+        if(vo.bytes != null && vo.bytes.length > 0){
+            vo.realBytes += vo.bytes.length ;
+            int index = 0 ;
+            while (true){
+                if(index < vo.bytes.length){
+                    byte[] bytes = ByteUtil.bytesSplit(vo.bytes, index, bytesSplitUnit) ;
+                    vo.listByte512.add(bytes) ;
+                    vo.totalBytes512 += bytes.length ;
+                }else{
+                    break ;
+                }
+                index += bytesSplitUnit ;
+            }
+        }
+    }
+
+}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileVo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileVo.java
new file mode 100644
index 0000000..ff9c96b
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/softUpgrade/parse/HexFileVo.java
@@ -0,0 +1,47 @@
+package com.dy.common.softUpgrade.parse;
+
+import cn.hutool.core.util.HexUtil;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/2 8:54
+ * @Description
+ */
+@Data
+public class HexFileVo {
+    public long totalLines ;
+    public long calculateBytes;
+    public long realBytes;
+    public byte[] bytes ;
+    public List<byte[]> listByte512 ;
+    public long totalBytes512 ;
+    public List<String> errors ;
+
+    public HexFileVo() {
+        totalLines = 0 ;
+        calculateBytes = 0 ;
+        bytes = new byte[0] ;
+        listByte512 = new ArrayList<>() ;
+        totalBytes512 = 0 ;
+        errors = new ArrayList<>() ;
+    }
+
+    public String toString(){
+        String s =  "totalLines:" + totalLines
+                + "\ncalculateBytes:" + calculateBytes
+                + "\nrealBytes:" + realBytes
+                + "\ntotalBytes512:" + totalBytes512
+                + "\nerrors:" + errors ;
+        if(listByte512.size() > 0){
+            int counter = 0 ;
+            for(byte[] bytes : listByte512){
+                s += "\n" + counter++ + ":  " + HexUtil.encodeHexStr(bytes) ;
+            }
+        }
+        return s ;
+    }
+}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java
index 2f0c7d6..a42953c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/ByteUtil.java
@@ -4,7 +4,50 @@
 
 
 public class ByteUtil {
-	
+
+	/**
+	 * 灏嗗瓧鑺傛暟缁勫垎鍓�
+	 * @param bytes 琚垎鍓叉暟缁�
+	 * @param fromIndex 鍒嗗壊璧峰浣嶇疆
+	 * @param len 鍒嗗壊闀垮害
+	 * @return 杩斿洖 鍒嗗壊鍑烘潵鐨勬暟缁�
+	 */
+	public static byte[] bytesSplit(byte[] bytes, int fromIndex, int len){
+		if(bytes == null){
+			return null ;
+		}else{
+			byte[] bs = new byte[len] ;
+			if(fromIndex + len > bytes.length){
+				System.arraycopy(bytes, fromIndex, bs, 0, bytes.length - fromIndex) ;
+			}else{
+				System.arraycopy(bytes, fromIndex, bs, 0, len) ;
+			}
+			return bs ;
+		}
+	}
+	/**
+	 * 灏嗗瓧鑺傛暟缁勫垎鍓�
+	 * @param bytes 琚垎鍓叉暟缁�
+	 * @param fromIndex 鍒嗗壊璧峰浣嶇疆
+	 * @param len 鍒嗗壊闀垮害
+	 * @return 杩斿洖 鍒嗗壊鍑烘潵鐨勬暟缁�
+	 */
+	public static Object[] bytesSplit_(byte[] bytes, int fromIndex, int len){
+		if(bytes == null){
+			return null ;
+		}else{
+			int realLen = len ;
+			byte[] bs = new byte[len] ;
+			if(fromIndex + len > bytes.length){
+				System.arraycopy(bytes, fromIndex, bs, 0, bytes.length - fromIndex) ;
+				realLen = bytes.length - fromIndex ;
+			}else{
+				System.arraycopy(bytes, fromIndex, bs, 0, len) ;
+			}
+			return new Object[]{bs, realLen} ;
+		}
+	}
+
 	/**
 	 * 灏嗗瓧鑺傛暟缁勫悎骞跺埌瀛楄妭鏁扮粍涓�
 	 * @param bGroup1 琚悎骞舵暟缁�
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/rtuMw/CodeLocal.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/rtuMw/CodeLocal.java
index 24f3a3c..542bb28 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/rtuMw/CodeLocal.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/rtuMw/CodeLocal.java
@@ -10,6 +10,10 @@
 
 	public static final String onLineStatistics = "LCD0003" ;//鏌ヨ鎵�鏈塕TU鐘舵�佹儏鍐�
 
+	public static final String allRtuStates = "LCD0010" ;//鏌ヨ鎵�鏈塕TU鐘舵��
+
+	public static final String partRtuStates = "LCD0011" ;//鏌ヨ閮ㄥ垎RTU鐘舵��
+
 	public static final String allProtocols = "LCD0100" ;//鏌ヨ鎵�鏈夊崗璁厤缃�
 
 	public static final String stopTcpSv = "LCD0110" ;//鍋滄TCP鏈嶅姟锛屼笉鍐嶆帴鍏ユ柊鐨凾CP杩炴帴锛屽凡缁廡CP杩炴帴鐨勫叏閮ㄦ柇杩炴帴
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
index 43d9acd..6cfbdba 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
@@ -18,7 +18,7 @@
 import com.dy.common.mw.support.SupportUnit;
 import com.dy.common.mw.support.SupportUnitConfigVo;
 import com.dy.rtuMw.server.tasks.SendMsConstantTask;
-import com.dy.rtuMw.server.tasks.ToRtuConstantTask;
+import com.dy.rtuMw.server.tasks.RtuDownConstantTask;
 import com.dy.rtuMw.resource.ResourceUnit;
 import com.dy.rtuMw.resource.ResourceUnitConfigVo;
 import com.dy.common.springUtil.SpringContextUtil;
@@ -356,7 +356,7 @@
 			coreAdap.setConfig(coreConfVo);
 			CoreUnit coreUnit = CoreUnit.getInstance();
 			coreUnit.setAdapter(coreAdap);
-			CoreUnit.addConstantTask(new ToRtuConstantTask());
+			CoreUnit.addConstantTask(new RtuDownConstantTask());
 			CoreUnit.addConstantTask(new FromRtuDataConstantTask());
 			CoreUnit.addConstantTask(new FromRtuComResultConstantTask());
 			CoreUnit.addConstantTask(new SendMsConstantTask());
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/AdapterImp_ProtocolUnit.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/AdapterImp_ProtocolUnit.java
index e31ef8e..7b5c530 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/AdapterImp_ProtocolUnit.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/AdapterImp_ProtocolUnit.java
@@ -1,17 +1,21 @@
 package com.dy.rtuMw.server;
 
 import com.dy.common.mw.protocol.MidResultAction;
+import com.dy.common.mw.protocol.Notify;
 import com.dy.common.mw.protocol.ProtocolConfigVo;
 import com.dy.common.mw.protocol.ProtocolUnitAdapter;
 import com.dy.rtuMw.server.forTcp.MidResultActionError;
 import com.dy.rtuMw.server.forTcp.MidResultActionFromRtu;
 import com.dy.rtuMw.server.forTcp.MidResultActionToRtu;
+import com.dy.rtuMw.server.protocolDriver.RtuInfoNotify;
 
 public class AdapterImp_ProtocolUnit implements ProtocolUnitAdapter {
 	
 	private static final MidResultAction toRtu = new MidResultActionToRtu() ;
 	private static final MidResultAction fromRtu = new MidResultActionFromRtu() ;
 	private static final MidResultAction error = new MidResultActionError() ;
+
+	private static final RtuInfoNotify notify = new RtuInfoNotify() ;
 	
 	private ProtocolConfigVo configVo = null ;
 
@@ -23,6 +27,15 @@
 	public void setConfig(ProtocolConfigVo configVo) {
 		this.configVo = configVo;
 	}
+	/**
+	 * 鍗曠嚎绋嬬幆澧冧腑杩愯锛屽緱鍒板崟涓猂TU淇℃伅閫氱煡鍣�
+	 * @param protocolName 鍗忚鍚嶇О
+	 * @return Notify
+	 */
+	@Override
+	public Notify getSingleRtuInfoNotify(String protocolName) {
+		return notify ;
+	}
 
 	/**
 	 * 鍗曠嚎绋嬬幆澧冧腑杩愯锛屽緱鍒板崟涓� 澶勭悊RTU涓嬭鏁版嵁鐨凪idResultAction鎵ц瀵硅薄
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuSessionStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuSessionStatus.java
deleted file mode 100644
index 31512a0..0000000
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuSessionStatus.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.dy.rtuMw.server.forTcp;
-
-public class RtuSessionStatus {
-
-	public String rtuAddr ;
-	public Boolean onTrueOffLine ;//鍦ㄧ嚎鎯呭喌
-	public String ip ;//RTU绔疘P
-	public Integer port ;//RTU绔鍙�
-	
-}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatus.java
new file mode 100644
index 0000000..7737987
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatus.java
@@ -0,0 +1,95 @@
+package com.dy.rtuMw.server.forTcp;
+
+import com.dy.common.util.DateTime;
+import lombok.Data;
+
+@Data
+public class RtuStatus {
+
+	public String rtuAddr ;//rtu鍦板潃
+	public String ip ;//RTU绔疘P
+	public Integer port ;//RTU绔鍙�
+	public String onLineDt ;//鏈�杩戜笂绾挎椂鍒�
+	public String offLineDt ;//鏈�杩戠绾挎椂鍒�
+
+	public String protocolName ;//鍗忚鍚嶇О
+	public Short protocolVersion ;//鍗忚鐗堟湰鍙�
+
+	public Boolean valveOpenTrueCloseFalse ;//闃�闂ㄧ姸鎬侊紙true涓哄紑鍚姸鎬侊紝false涓哄叧闂�侊級
+	public String valveOpenLastDt ;//鏈�鍚庤缃榾闂ㄥ紑鍚姸鎬佹椂鍒�
+	public String valveCloseLastDt ;//鏈�鍚庤缃榾闂ㄥ叧闂姸鎬佹椂鍒�
+	public Long valveStatusLastTimeStamp ;//鏈�鍚庤缃榾闂ㄧ姸鎬佹椂鍒�
+
+	public String lastUpCode ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鍔熻兘鐮�
+	public String lastUpCodeName ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鍔熻兘鐮佸悕绉�
+	public String lastUpDt ;//鏈�杩戜竴娆′笂琛屾暟鎹殑鏃跺埢
+
+	public String lastDownCode ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鍔熻兘鐮�
+	public String lastDownCodeName ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鍔熻兘鐮佸悕绉�
+	public String lastDownDt ;//鏈�杩戜竴娆′笅琛屾暟鎹殑鏃跺埢
+
+	public String lastSuccessCommandCode ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鍔熻兘鐮�
+	public String lastSuccessCommandCodeName ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鍔熻兘鐮佸悕绉�
+	public String lastSuccessCommandDt ;//鏈�杩戜竴娆℃垚鍔熷懡浠ょ殑鏃跺埢
+
+	public String lastFailureCommandCode ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鍔熻兘鐮�
+	public String lastFailureCommandCodeName ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鍔熻兘鐮佸悕绉�
+	public String lastFailureCommandDt ;//鏈�杩戜竴娆″け璐ュ懡浠ょ殑鏃跺埢
+
+
+	public void onLine(String rtuAddr, String ip, Integer port, String protocolName, Short protocolVersion){
+		this.rtuAddr = rtuAddr ;
+		this.ip = ip ;
+		this.port = port ;
+		this.onLineDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+		this.protocolName = protocolName ;
+		this.protocolVersion = protocolVersion ;
+	}
+
+	public void offLine(){
+		this.offLineDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+	}
+
+	public void upData(String code, String codeName, Integer bufferLen){
+		this.lastUpCode = code ;
+		this.lastUpCodeName = codeName ;
+		this.lastUpDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+	}
+
+	public void downData(String code, String codeName, Integer bufferLen){
+		this.lastDownCode = code ;
+		this.lastDownCodeName = codeName ;
+		this.lastDownDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+	}
+
+	public void commandSuccess(String code, String codeName){
+		this.lastSuccessCommandCode = code ;
+		this.lastSuccessCommandCodeName = codeName ;
+		this.lastSuccessCommandDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+	}
+
+	public void commandFailure(String code, String codeName){
+		this.lastFailureCommandCode = code ;
+		this.lastFailureCommandCodeName = codeName ;
+		this.lastFailureCommandDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+	}
+
+	public void valveOpen(){
+		if(this.valveOpenTrueCloseFalse == null || !this.valveOpenTrueCloseFalse.booleanValue()){
+			this.valveOpenTrueCloseFalse = true ;
+			this.valveOpenLastDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+			this.valveCloseLastDt = null ;
+			this.valveStatusLastTimeStamp = System.currentTimeMillis() ;
+		}
+	}
+
+	public void valveClose(){
+		if(this.valveOpenTrueCloseFalse == null || this.valveOpenTrueCloseFalse.booleanValue()){
+			this.valveOpenTrueCloseFalse = false ;
+			this.valveCloseLastDt = DateTime.yyyy_MM_dd_HH_mm_ss() ;
+			this.valveStatusLastTimeStamp = System.currentTimeMillis() ;
+		}
+
+	}
+
+}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatusDealer.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatusDealer.java
index f60c73a..2ec4fb6 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatusDealer.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/RtuStatusDealer.java
@@ -3,144 +3,150 @@
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
 
-import com.dy.common.mw.protocol.rtuStatus.StCommandResult;
-import com.dy.common.mw.protocol.rtuStatus.StDownData;
-import com.dy.common.mw.protocol.rtuStatus.StOnOffLine;
-import com.dy.common.mw.protocol.rtuStatus.StUpData;
+import java.util.HashMap;
+import java.util.Map;
 
 public class RtuStatusDealer {
 	private static Logger log = LogManager.getLogger(RtuStatusDealer.class.getName()) ;
-	
-	
-	public static void onOffLine(RtuSessionStatus sta){
-//		StOnOffLine st = new StOnOffLine() ;
-//		st.rtuAddr = sta.rtuAddr ;
-//		st.onOff_trueFalse = sta.onTrueOffLine ;
-//		st.ip = sta.ip ;
-//		st.port = sta.port ;
-		
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + sta.rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + sta.rtuAddr + "锛夊湪绾匡紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+
+	private static Map<String, RtuStatus> map = new HashMap<String, RtuStatus>() ;
+
+	/**
+     * 寰楀埌鍏ㄩ儴鐘舵��
+     * @return
+     */
+	public static Map<String, RtuStatus> allStatus(){
+		return map ;
 	}
-	
-	public static void onLine(String rtuAddr, String ip, Integer port){
-//		StOnOffLine st = new StOnOffLine() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.onOff_trueFalse = true ;
-//		st.ip = ip ;
-//		st.port = port ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛夊湪绾匡紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	/**
+	 * 寰楀埌閮ㄥ垎鐘舵��
+	 * @return
+	 */
+	public static Map<String, RtuStatus> partStatus(String[] rtuAddrArrGrp){
+		synchronized (map){
+			Map<String, RtuStatus> map = new HashMap<>();
+			for(String rtuAddr : rtuAddrArrGrp){
+				RtuStatus status = map.get(rtuAddr) ;
+				if(status != null){
+					map.put(rtuAddr, status) ;
+				}
+			}
+			return map ;
+		}
+	}
+	public static void onLine(String rtuAddr, String ip, Integer port, String protocolName, Short protocolVersion){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.onLine(rtuAddr, ip, port, protocolName, protocolVersion) ;
+			map.put(rtuAddr, vo);
+		}else {
+			vo.onLine(rtuAddr, ip, port, protocolName, protocolVersion) ;
+		}
 	}
 	
 	public static void offLine(String rtuAddr){
-//		StOnOffLine st = new StOnOffLine() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.onOff_trueFalse = false ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛夌绾匡紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.offLine();
+			map.put(rtuAddr, vo);
+		}else {
+			vo.offLine();
+		}
 	}
 	
-	public static void upData(String rtuAddr, Integer bufferLen){
-//		StUpData st = new StUpData() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.upBufferLen = bufferLen ;
-//		st.isReport = false ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛変笂琛屾暟鎹紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	public static void upData(String rtuAddr, String code, String codeName, Integer bufferLen){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.upData(code, codeName, bufferLen);
+			map.put(rtuAddr, vo);
+		}else {
+			vo.upData(code, codeName, bufferLen);
+		}
 	}
 	
-	public static void upReport(String rtuAddr, Integer bufferLen){
-//		StUpData st = new StUpData() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.upBufferLen = bufferLen ;
-//		st.isReport = true ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛変笂鎶ユ暟鎹紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	public static void upAutoReport(String rtuAddr, String code, String codeName, Integer bufferLen){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.upData(code, codeName, bufferLen);
+			map.put(rtuAddr, vo);
+		}else {
+			vo.upData(code, codeName, bufferLen);
+		}
 	}
 	
-	public static void downData(String rtuAddr, Integer bufferLen){
-//		StDownData st = new StDownData() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.downBufferLen = bufferLen ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛変笅琛屾暟鎹紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	public static void downData(String rtuAddr, String code, String codeName, Integer bufferLen){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.downData(code, codeName, bufferLen);
+			map.put(rtuAddr, vo);
+		}else {
+			vo.downData(code, codeName, bufferLen);
+		}
 	}
 	
-	public static void commandSuccess(String rtuAddr){
-//		StCommandResult st = new StCommandResult() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.isSuccess = true ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛夊懡浠ゆ垚鍔燂紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	public static void commandSuccess(String rtuAddr, String code, String codeName){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.commandSuccess(code, codeName);
+			map.put(rtuAddr, vo);
+		}else {
+			vo.commandSuccess(code, codeName);
+		}
 	}
 	
-	public static void commandFailure(String rtuAddr){
-//		StCommandResult st = new StCommandResult() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.isSuccess = false ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛夊懡浠ゅけ璐ワ紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+	public static void commandFailure(String rtuAddr, String code, String codeName){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.commandFailure(code, codeName);
+			map.put(rtuAddr, vo);
+		}else {
+			vo.commandFailure(code, codeName);
+		}
 	}
-	
+
+	/**
+	 * 鍛戒护缁撴灉鏀跺埌浜嗭紝浣嗘湭鍦ㄧ紦瀛樺尮閰嶄笂涓嬭鐨勫懡浠わ紝璇存槑涓嬭缂撳瓨鍛戒护鍥犺秴鏃惰娓呴櫎锛岃繖璇存槑鏈変釜鍛戒护鐢卞け璐ュ彉鎴愬姛浜�
+	 * @param rtuAddr
+	 */
 	public static void commandFail2Success(String rtuAddr){
-//		StCommandResult st = new StCommandResult() ;
-//		st.rtuAddr = rtuAddr ;
-//		st.fail2Success = true ;
-		
-//		Address member = JgUnit.getInstance().getJgMembers().getDataMwMemberByRtuAddr(rtuAddr) ;
-//		if(member == null){
-//			log.error("鍑洪敊锛屾湭鑳藉緱鍒板鐞哛TU锛堝湴鍧�涓�" + rtuAddr + "锛夌姸鎬佹暟鎹殑鏁版嵁涓棿浠讹紝鍙兘鏁版嵁涓棿浠舵湭鍚姩鎴栬劚绂荤殑闆嗙兢锛�");
-//		}else{
-//			log.info("閫氱煡鏁版嵁涓棿浠讹紙" + member.toString() + "锛夛紝RTU锛堝湴鍧�涓�" + rtuAddr + "锛夊懡浠ょ敱澶辫触杞垚鍔燂紒");
-//			new JgIoHandler().sendP2P(member, st);
-//		}
+		//鏆傛椂鏃犻�昏緫
+	}
+
+	/**
+	 * 鏀跺埌浜嗘垚鍔熷紑闃�鎶ワ紙寮�闃�鑷姤锛屽紑闃�宸ヤ綔鎶ワ紝杩滅▼寮�闃�锛堟墽琛岋級搴旂瓟绛夛紝閮借涓洪榾闂ㄦ槸寮�鍚姸鎬侊紙杩欐椂涓婃姤鐨勬暟鎹腑闃�闂ㄧ姸鎬佸彲鑳芥槸鍏抽棴锛堝洜涓烘墦寮�闃�闂ㄩ渶瑕佹椂闂达級锛夛級
+	 * @param rtuAddr
+	 */
+	public static void valveOpen(String rtuAddr){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.valveOpen();
+			map.put(rtuAddr, vo);
+		}else {
+			vo.valveOpen();
+		}
+	}
+
+	/**
+	 * 鏀跺埌浜嗘垚鍔熷叧闃�鎶ワ紙鍏抽榾鑷姤锛岃繙绋嬪叧闃�锛堟墽琛岋級搴旂瓟绛夛紝閮借涓洪榾闂ㄦ槸鍏抽棴鐘舵�侊紙杩欐椂涓婃姤鐨勬暟鎹腑闃�闂ㄧ姸鎬佸彲鑳芥槸寮�鍚紙鍥犱负鍏抽棴闃�闂ㄩ渶瑕佹椂闂达級锛夛級
+	 * @param rtuAddr
+	 */
+	public static void valveClose(String rtuAddr){
+		RtuStatus vo = map.get(rtuAddr) ;
+		if(vo == null) {
+			vo = new RtuStatus();
+			vo.valveClose();
+			map.put(rtuAddr, vo);
+		}else {
+			vo.valveClose();
+		}
 	}
 
 }
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpDownCommandObj.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpDownCommandObj.java
index c70efd8..2ef7e16 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpDownCommandObj.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpDownCommandObj.java
@@ -36,7 +36,7 @@
 			//宸茬粡鏀跺埌鍛戒护缁撴灉
 			removeNodeFromCach = true ;
      		//璁板綍鐘舵��
-     		RtuStatusDealer.commandSuccess(this.result.rtuAddr);
+     		RtuStatusDealer.commandSuccess(this.result.rtuAddr, this.result.downCode, this.result.downCodeName);
 			return removeNodeFromCach ;
 		}
 		if(this.sendedTimes >= this.result.maxSendTimes){
@@ -45,7 +45,7 @@
 				//瓒呮椂
 				removeNodeFromCach = true ;
 	     		//璁板綍鐘舵��
-	     		RtuStatusDealer.commandFailure(this.result.rtuAddr);
+	     		RtuStatusDealer.commandFailure(this.result.rtuAddr, this.result.downCode, this.result.downCodeName);
 			}
 			return removeNodeFromCach ;
 		}
@@ -88,7 +88,7 @@
 			//璁板綍鏃ュ織
 			RtuLogDealer.log(this.result.rtuAddr, "涓嬭鏁版嵁 " + this.result.downCode + (this.result.downCodeName==null?"":("锛�" + this.result.downCodeName + "锛�")) + "锛�" + this.result.downBufHex);
 			//璁板綍鐘舵��
-			RtuStatusDealer.downData(this.result.rtuAddr, this.result.downBuffer.length);
+			RtuStatusDealer.downData(this.result.rtuAddr, this.result.downCode, this.result.downCodeName, this.result.downBuffer.length);
 			
 			log.info("涓嬭RTU锛堝湴鍧�=" + this.result.rtuAddr + "锛夊懡浠鍔熻兘鐮�=" + this.result.downCode + (this.result.downCodeName==null?"":("锛�" + this.result.downCodeName + "锛�")) + "] "  + this.result.downBufHex ) ;
 		}	
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSession.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSession.java
index edf8d68..083db87 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSession.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSession.java
@@ -7,6 +7,7 @@
 	
 	public IoSession ioSession ;//IoSession瀵硅薄
 	public String protocolName ;//閫氫俊鍗忚鍚嶇О
+	public Short protocolVersion ;//閫氫俊鍗忚鐗堟湰鍙�
 	public Long lastDownComTime ;//涓婃涓嬪彂鍛戒护鏃跺埢(姣鏃跺埢 System.currentTimeMillis())
 	public Long lastUpDataTime ;//涓婃鏀跺埌涓婅鏁版嵁鏃跺埢(姣鏃跺埢 System.currentTimeMillis())
 	public Long lastUpDataTimeForOnlineCtrl ;//涓婃鏀跺埌涓婅鏁版嵁鏃跺埢(姣鏃跺埢 System.currentTimeMillis())锛岀敤浜庝笂绾挎儏鍐垫帶鍒�
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCache.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCache.java
index fc34bbf..ca59202 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCache.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCache.java
@@ -1,12 +1,8 @@
 package com.dy.rtuMw.server.forTcp;
 
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
 import java.util.*;
 import java.util.Map.Entry;
 
-import com.dy.common.mw.channel.tcp.TcpIoSessionAttrIdIsRtuAddr;
-import com.dy.common.util.DateTime;
 import org.apache.mina.core.session.IoSession;
 
 import com.dy.rtuMw.server.ServerProperties;
@@ -23,7 +19,7 @@
 	 *
 	 * 2023-12-19瀹炴祴锛屽彂鐜癏ashtable骞朵笉绾跨▼瀹夊叏锛屾墍浠ュ簲鐢ㄤ簡HashMap鍜宻ynchronized
 	 */
-	private static HashMap<String, TcpSession> sessionTable = new HashMap<String, TcpSession>() ;
+	private static HashMap<String, TcpSession> map = new HashMap<String, TcpSession>() ;
 
 
 	/**
@@ -34,9 +30,9 @@
 		Integer rtuTotalConnect = 0 ;//宸茬粡杩炴帴杩囦腑闂翠欢鐨凴TU鎬绘暟锛堝寘鎷湪绾夸笌绂荤嚎鐨勶級
 		Integer rtuTotalOnLine = 0 ;//鍦ㄧ嚎RTU鎬绘暟
 		Integer rtuTotalOffLine = 0 ;//绂荤嚎RTU鎬绘暟
-		synchronized (sessionTable){
-			rtuTotalConnect = sessionTable.size() ;
-			Collection<TcpSession> col = sessionTable.values() ;
+		synchronized (map){
+			rtuTotalConnect = map.size() ;
+			Collection<TcpSession> col = map.values() ;
 			for(TcpSession se : col){
 				if(se.ioSession.isConnected()){
 					rtuTotalOnLine ++ ;
@@ -52,12 +48,12 @@
 	 * 鍏抽棴鎵�鏈夌綉缁滆繛鎺�
 	 */
 	public static void closeAllSessions(){
-		synchronized (sessionTable){
-			Collection<TcpSession> col = sessionTable.values() ;
+		synchronized (map){
+			Collection<TcpSession> col = map.values() ;
 			for(TcpSession se : col){
 				se.ioSession.closeNow() ;
 			}
-			sessionTable.clear();
+			map.clear();
 		}
 	}
 
@@ -67,14 +63,15 @@
 	 * @param protocolName
 	 * @param ioSession
 	 */
-	public static void putNewTcpSession(String rtuAddr, String protocolName, IoSession ioSession){
-		synchronized (sessionTable){
-			TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+	public static void putNewTcpSession(String rtuAddr, String protocolName, Short protocolVersion, IoSession ioSession){
+		synchronized (map){
+			TcpSession tcpSe = map.get(rtuAddr) ;
 			if(tcpSe == null){
 				tcpSe = new TcpSession() ;
 				tcpSe.protocolName = protocolName ;
+				tcpSe.protocolVersion = protocolVersion ;
 				tcpSe.ioSession = ioSession ;
-				sessionTable.put(rtuAddr, tcpSe) ;
+				map.put(rtuAddr, tcpSe) ;
 			}else{
 				tcpSe.ioSession = ioSession ;
 			}
@@ -86,17 +83,18 @@
 	 * @param oldRtuAddr
 	 * @param newRtuAddr
 	 * @param protocolName
+	 * @param protocolVersion
 	 * @param ioSession
 	 */
-	public static void changeRtuAddr(String oldRtuAddr, String newRtuAddr, String protocolName, IoSession ioSession){
+	public static void changeRtuAddr(String oldRtuAddr, String newRtuAddr, String protocolName, Short protocolVersion, IoSession ioSession){
 		if(oldRtuAddr != null && newRtuAddr != null && !oldRtuAddr.equals(newRtuAddr)){
-			synchronized (sessionTable){
-				TcpSession tcpSe = sessionTable.get(oldRtuAddr) ;
+			synchronized (map){
+				TcpSession tcpSe = map.get(oldRtuAddr) ;
 				if(tcpSe == null){
-					putNewTcpSession(newRtuAddr, protocolName, ioSession) ;
+					putNewTcpSession(newRtuAddr, protocolName, protocolVersion, ioSession) ;
 				}else{
-					sessionTable.remove(oldRtuAddr) ;
-					sessionTable.put(newRtuAddr, tcpSe) ;
+					map.remove(oldRtuAddr) ;
+					map.put(newRtuAddr, tcpSe) ;
 				}
 			}
 		}
@@ -108,18 +106,32 @@
 	 * @return
 	 */
 	public static TcpSession getTcpSession(String rtuAddr){
-		return sessionTable.get(rtuAddr) ;
+		return map.get(rtuAddr) ;
 	}
-	
+
+	/**
+	 * 寰楀埌Tcp閫氫俊鍗忚鍚嶇О
+	 * @param rtuAddr
+	 * @return
+
+	public static String getTcpProtocolName(String rtuAddr){
+		TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+		if(tcpSe != null){
+			return tcpSe.protocolName ;
+		}else{
+			return null ;
+		}
+	}
+	 */
 	/**
 	 * 寰楀埌Tcp閫氫俊鍗忚鍚嶇О
 	 * @param rtuAddr
 	 * @return
 	 */
-	public static String getTcpProtocolName(String rtuAddr){
-		TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+	public static Object[] getTcpProtocolNameVersion(String rtuAddr){
+		TcpSession tcpSe = map.get(rtuAddr) ;
 		if(tcpSe != null){
-			return tcpSe.protocolName ;
+			return new Object[]{tcpSe.protocolName, tcpSe.protocolVersion};
 		}else{
 			return null ;
 		}
@@ -130,9 +142,9 @@
 	 * @return [0]=鍦ㄧ嚎鏁伴噺锛孾2]涓婄嚎杩囷紝浣嗗綋鍓嶇绾跨殑鏁伴噺
 	 */
 	public static Integer[] allOnLineStateStatistics(){
-		synchronized (sessionTable){
+		synchronized (map){
 			Integer[] arr = new Integer[]{0, 0} ;
-			Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
+			Iterator<Entry<String, TcpSession>> it = map.entrySet().iterator() ;
 			Entry<String, TcpSession> entry = null ;
 			while(it.hasNext()){
 				entry = it.next() ;
@@ -151,9 +163,9 @@
 	 * @return
 	 */
 	public static HashMap<String, Boolean> allOnLine(){
-		synchronized (sessionTable){
+		synchronized (map){
 			HashMap<String, Boolean> map = new HashMap<String, Boolean>();
-			Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
+			Iterator<Entry<String, TcpSession>> it = TcpSessionCache.map.entrySet().iterator() ;
 			Entry<String, TcpSession> entry = null ;
 			while(it.hasNext()){
 				entry = it.next() ;
@@ -169,10 +181,10 @@
 	 * @return
 	 */
 	public static HashMap<String, Boolean> partOnLine(String[] rtuAddrArrGrp){
-		synchronized (sessionTable){
+		synchronized (map){
 			HashMap<String, Boolean> map = new HashMap<String, Boolean>();
 			for(String rtuAddr : rtuAddrArrGrp){
-				TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+				TcpSession tcpSe = TcpSessionCache.map.get(rtuAddr) ;
 				if(tcpSe != null){
 					map.put(rtuAddr, tcpSe.ioSession.isConnected()) ;
 				}
@@ -180,36 +192,36 @@
 			return map ;
 		}
 	}
-
-	/**
-	 * 寰楀埌鎵�鏈塕TU杩炴帴鐘舵�佹儏鍐�
-	 * @return
-	 */
-	public static List<RtuSessionStatus> allConnectStatus(){
-		synchronized (sessionTable){
-			List<RtuSessionStatus> list = new ArrayList<RtuSessionStatus>();
-			Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
-			Entry<String, TcpSession> entry = null ;
-			while(it.hasNext()){
-				entry = it.next() ;
-				RtuSessionStatus vo = new RtuSessionStatus() ;
-				vo.rtuAddr = entry.getKey() ;
-				IoSession se = entry.getValue().ioSession ;
-				vo.onTrueOffLine = se.isConnected() ;
-				InetSocketAddress sa = (InetSocketAddress)se.getRemoteAddress() ;
-				if(sa != null){
-					InetAddress inetAddr = sa.getAddress() ;
-					if(inetAddr != null){
-						vo.ip = inetAddr.getHostAddress() ;
-						vo.port = sa.getPort() ;
-					}
-				}
-				list.add(vo) ;
-			}
-			return list ;
-		}
-	}
-	
+//
+//	/**
+//	 * 寰楀埌鎵�鏈塕TU杩炴帴鐘舵�佹儏鍐�
+//	 * @return
+//	 */
+//	public static List<RtuSessionStatus> allConnectStatus(){
+//		synchronized (sessionTable){
+//			List<RtuSessionStatus> list = new ArrayList<RtuSessionStatus>();
+//			Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
+//			Entry<String, TcpSession> entry = null ;
+//			while(it.hasNext()){
+//				entry = it.next() ;
+//				RtuSessionStatus vo = new RtuSessionStatus() ;
+//				vo.rtuAddr = entry.getKey() ;
+//				IoSession se = entry.getValue().ioSession ;
+//				vo.onTrueOffLine = se.isConnected() ;
+//				InetSocketAddress sa = (InetSocketAddress)se.getRemoteAddress() ;
+//				if(sa != null){
+//					InetAddress inetAddr = sa.getAddress() ;
+//					if(inetAddr != null){
+//						vo.ip = inetAddr.getHostAddress() ;
+//						vo.port = sa.getPort() ;
+//					}
+//				}
+//				list.add(vo) ;
+//			}
+//			return list ;
+//		}
+//	}
+//
 	
 	/**
 	 * 寰楀埌IoSession
@@ -230,7 +242,7 @@
 	 * @return
 	 */
 	public static Boolean isConnect(String rtuAddr){
-		TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+		TcpSession tcpSe = map.get(rtuAddr) ;
 		if(tcpSe != null){
 			return tcpSe.ioSession.isConnected() ;
 		}
@@ -244,7 +256,7 @@
 	 * @throws Exception
 	 */
 	public static void write(String rtuAddr, byte[] data) throws Exception{
-		TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+		TcpSession tcpSe = map.get(rtuAddr) ;
 		if(tcpSe != null){
 			if(tcpSe.ioSession.isConnected()){
 				tcpSe.ioSession.write(data) ;
@@ -261,7 +273,7 @@
 	 * @param rtuAddr
 	 */
 	public static void cacheUpDataTime(String rtuAddr){
-		TcpSession tcpSe = sessionTable.get(rtuAddr) ;
+		TcpSession tcpSe = map.get(rtuAddr) ;
 		if(tcpSe != null){
 			tcpSe.lastUpDataTime = System.currentTimeMillis() ;
 			tcpSe.lastUpDataTimeForOnlineCtrl = System.currentTimeMillis() ;
@@ -274,8 +286,8 @@
 	 * 褰撲竴瀹氭椂闂村唴娌℃湁涓婅鏁版嵁锛屽垯璁や负RTU绂荤嚎
 	 */
 	public static void updateRtuStatus(Long now){
-		synchronized (sessionTable){
-			Set<Map.Entry<String, TcpSession>> entrySet = sessionTable.entrySet() ;
+		synchronized (map){
+			Set<Map.Entry<String, TcpSession>> entrySet = map.entrySet() ;
 			Iterator<Map.Entry<String, TcpSession>> it = entrySet.iterator() ;
 			Map.Entry<String, TcpSession> entry ;
 			TcpSession tcpSe ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCacheBk.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCacheBk.java
index 775b948..946e7c4 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCacheBk.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/forTcp/TcpSessionCacheBk.java
@@ -100,28 +100,28 @@
 	 * 寰楀埌鎵�鏈塕TU杩炴帴鐘舵�佹儏鍐�
 	 * @return
 	 */
-	public static List<RtuSessionStatus> allConnectStatus(){
-		List<RtuSessionStatus> list = new ArrayList<RtuSessionStatus>();
-		Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
-		Entry<String, TcpSession> entry = null ;
-		while(it.hasNext()){
-			entry = it.next() ;
-			RtuSessionStatus vo = new RtuSessionStatus() ;
-			vo.rtuAddr = entry.getKey() ;
-			IoSession se = entry.getValue().ioSession ;
-			vo.onTrueOffLine = se.isConnected() ;
-			InetSocketAddress sa = (InetSocketAddress)se.getRemoteAddress() ;
-			if(sa != null){
-				InetAddress inetAddr = sa.getAddress() ;
-				if(inetAddr != null){
-					vo.ip = inetAddr.getHostAddress() ;
-					vo.port = sa.getPort() ;
-				}
-			}
-			list.add(vo) ;
-		}
-		return list ;
-	}
+//	public static List<RtuSessionStatus> allConnectStatus(){
+//		List<RtuSessionStatus> list = new ArrayList<RtuSessionStatus>();
+//		Iterator<Entry<String, TcpSession>> it = sessionTable.entrySet().iterator() ;
+//		Entry<String, TcpSession> entry = null ;
+//		while(it.hasNext()){
+//			entry = it.next() ;
+//			RtuSessionStatus vo = new RtuSessionStatus() ;
+//			vo.rtuAddr = entry.getKey() ;
+//			IoSession se = entry.getValue().ioSession ;
+//			vo.onTrueOffLine = se.isConnected() ;
+//			InetSocketAddress sa = (InetSocketAddress)se.getRemoteAddress() ;
+//			if(sa != null){
+//				InetAddress inetAddr = sa.getAddress() ;
+//				if(inetAddr != null){
+//					vo.ip = inetAddr.getHostAddress() ;
+//					vo.port = sa.getPort() ;
+//				}
+//			}
+//			list.add(vo) ;
+//		}
+//		return list ;
+//	}
 	
 	
 	/**
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/CommandInnerDeaLer.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/CommandInnerDeaLer.java
index 3148b1d..3441197 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/CommandInnerDeaLer.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/CommandInnerDeaLer.java
@@ -3,9 +3,11 @@
 import com.dy.common.mw.UnitCallbackInterface;
 import com.dy.common.mw.channel.tcp.TcpUnit;
 import com.dy.common.mw.protocol.Command;
+import com.dy.rtuMw.server.forTcp.RtuStatus;
 import com.dy.rtuMw.server.local.localProtocol.*;
 
 import java.util.HashMap;
+import java.util.Map;
 
 /**
  * @Author liurunyu
@@ -29,6 +31,10 @@
             return this.onPartLine(com) ;
         }else if(code.equals(CodeLocal.onLineStatistics)){
             return this.onLineStateStatistics(com) ;
+        }else if(code.equals(CodeLocal.allRtuStates)){
+            return this.allRtuStates(com) ;
+        }else if(code.equals(CodeLocal.partRtuStates)){
+            return this.partRtuStates(com) ;
         }else if(code.equals(CodeLocal.allProtocols)){
             return this.allProtocols(com) ;
         }else if(code.equals(CodeLocal.stopTcpSv)){
@@ -83,6 +89,29 @@
     }
 
     /**
+     * 鏌ヨ鎵�鏈塕TU鐘舵��
+     * @throws Exception
+     */
+    private Command allRtuStates(Command command) throws Exception{
+        Map<String, RtuStatus> map =  new RtuStatusDeal().dealAll() ;
+        return ReturnCommand.successed("鏌ヨ鎵�鏈塕TU鐘舵�佺粨鏋�", command.getId(), command.getCode(), map) ;
+    }
+
+    /**
+     * 鏌ヨ閮ㄥ垎RTU鐘舵��
+     * @throws Exception
+     */
+    private Command partRtuStates(Command command) throws Exception{
+        if(command.param != null && command.param instanceof String && !command.param.equals("")){
+            String[] rtuAddrGrp = ((String)command.param).split(",");
+            Map<String, RtuStatus> map = new RtuStatusDeal().dealPart(rtuAddrGrp) ;
+            return ReturnCommand.successed("鏌ヨ閮ㄥ垎RTU鐘舵�佺粨鏋�", command.getId(), command.getCode(), map) ;
+        }else{
+            return ReturnCommand.errored("鍑洪敊锛屽懡浠ゅ弬鏁板簲璇ユ槸鎵�鏌ヨRTU鐨勫湴鍧�涓�",  command.getId(), command.getCode()) ;
+        }
+    }
+
+    /**
      * 鏌ヨ鎵�鏈塕TU鍗忚閰嶇疆
      * @throws Exception
      */
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/CodeLocal.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/CodeLocal.java
index 479fa99..02a1783 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/CodeLocal.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/CodeLocal.java
@@ -8,7 +8,11 @@
 
 	public static final String onPartLine = "LCD0002" ;//鏌ヨ鎵�鏈塕TU鍦ㄧ嚎鎯呭喌
 
-	public static final String onLineStatistics = "LCD0003" ;//鏌ヨ鎵�鏈塕TU鐘舵�佹儏鍐�
+	public static final String onLineStatistics = "LCD0003" ;//鏌ヨ鎵�鏈塕TU鐘舵�佺粺璁℃儏鍐�
+
+	public static final String allRtuStates = "LCD0010" ;//鏌ヨ鎵�鏈塕TU鐘舵��
+
+	public static final String partRtuStates = "LCD0011" ;//鏌ヨ閮ㄥ垎RTU鐘舵��
 
 	public static final String allProtocols = "LCD0100" ;//鏌ヨ鎵�鏈夊崗璁厤缃�
 
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/RtuStatusDeal.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/RtuStatusDeal.java
new file mode 100644
index 0000000..7103e28
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/local/localProtocol/RtuStatusDeal.java
@@ -0,0 +1,28 @@
+package com.dy.rtuMw.server.local.localProtocol;
+
+import com.dy.rtuMw.server.forTcp.RtuStatus;
+import com.dy.rtuMw.server.forTcp.RtuStatusDealer;
+import java.util.Map;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/3 16:27
+ * @Description
+ */
+public class RtuStatusDeal {
+
+    /**
+     * 鏌ヨ鍦ㄧ嚎涓庝笉鍦ㄧ嚎鎯呭喌
+     */
+    public Map<String, RtuStatus> dealAll(){
+        return RtuStatusDealer.allStatus();
+    }
+
+
+    /**
+     * 鏌ヨ鍦ㄧ嚎涓庝笉鍦ㄧ嚎鎯呭喌
+     */
+    public Map<String, RtuStatus> dealPart(String[] rtuAddrGrp){
+        return RtuStatusDealer.partStatus(rtuAddrGrp) ;
+    }
+}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/protocolDriver/RtuInfoNotify.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/protocolDriver/RtuInfoNotify.java
new file mode 100644
index 0000000..b22a455
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/protocolDriver/RtuInfoNotify.java
@@ -0,0 +1,42 @@
+package com.dy.rtuMw.server.protocolDriver;
+
+import com.dy.common.mw.protocol.Notify;
+import com.dy.common.mw.protocol.NotifyInfo;
+import com.dy.common.mw.protocol.rtuState.ValveStateInfo;
+import com.dy.rtuMw.server.forTcp.RtuStatusDealer;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/11/3 13:30
+ * @Description
+ */
+public class RtuInfoNotify implements Notify {
+    /**
+     * RTU淇℃伅閫氱煡
+     * @param rtuAddr
+     * @param protocolName
+     * @param protocolVersion
+     * @param infos
+     */
+    @Override
+    public void notify(String rtuAddr,
+                       String protocolName,
+                       Short protocolVersion,
+                       NotifyInfo...infos
+                       ) {
+        if(infos != null && infos.length > 0){
+            for (NotifyInfo anInfo : infos) {
+                if(anInfo != null){
+                    if(anInfo instanceof ValveStateInfo){
+                        ValveStateInfo valveStateInfo = (ValveStateInfo) anInfo;
+                        if(valveStateInfo.openTrueCloseFalse.booleanValue()){
+                            RtuStatusDealer.valveOpen(rtuAddr);
+                        }else{
+                            RtuStatusDealer.valveClose(rtuAddr);
+                        }
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java
index e0b89ce..354af9f 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java
@@ -34,6 +34,7 @@
         Data d = (Data)data ;
         Object subD = d.getSubData() ;
         if(subD != null){
+            boolean toNext = false ;
             DataV1 dV1 = (DataV1)subD ;
             if(dV1 != null && dV1.subData != null){
                 //dV1.dataCd81Vo銆� dV1.dataCd84Vo 涓� dV1.dataCdC0Vo 涓嶄細鍚屾椂鏈夊��
@@ -51,6 +52,7 @@
                             if(dataCd81Vo.stateVo != null && dataCd81Vo.stateVo.valveState != null && dataCd81Vo.stateVo.valveState.byteValue() == DataStateVo.ValveCloseState){
                                 if(controller != null && controller.getIntakeId() != null){
                                     this.taskResult = new Object[]{controller.getIntakeId(), DataStateVo.ValveCloseState} ;
+                                    toNext = true ;
                                 }
                             }
                         }
@@ -67,6 +69,7 @@
                             if(dataCd84Vo.stateVo != null && dataCd84Vo.stateVo.valveState != null && dataCd84Vo.stateVo.valveState.byteValue() == DataStateVo.ValveCloseState){
                                 if(controller != null && controller.getIntakeId() != null){
                                     this.taskResult = new Object[]{controller.getIntakeId(), DataStateVo.ValveCloseState} ;
+                                    toNext = true ;
                                 }
                             }*/
                         }
@@ -82,6 +85,7 @@
                             if(dataCdC0Vo.stateVo != null && dataCdC0Vo.stateVo.valveState != null && dataCdC0Vo.stateVo.valveState.byteValue() == DataStateVo.ValveCloseState){
                                 if(controller != null && controller.getIntakeId() != null){
                                     this.taskResult = new Object[]{controller.getIntakeId(), DataStateVo.ValveCloseState} ;
+                                    toNext = true ;
                                 }
                             }
                         }
@@ -90,6 +94,9 @@
                     log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e);
                 }
             }
+            if(toNext){
+                this.toNextTasks(d);
+            }
         }
     }
     /**
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealIcRemainMoney.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealIcRemainMoney.java
index 9fecae9..cac382a 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealIcRemainMoney.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealIcRemainMoney.java
@@ -149,7 +149,7 @@
                 this.icCardNo = vo83Op.icCardNo ;
                 this.remainMoney = vo83Op.remainMoney ;
             }else if(vo83Cl != null){
-                if(this.isAll0(vo83Op.icCardAddr)){
+                if(this.isAll0(vo83Cl.icCardAddr)){
                     this.isVirIcCard = true ;
                 }else{
                     this.isVirIcCard = false ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealIcRemainMoneyV2.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealIcRemainMoneyV2.java
index 5e4b6b1..72d5e4a 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealIcRemainMoneyV2.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealIcRemainMoneyV2.java
@@ -130,20 +130,30 @@
         public Double remainMoney ; //鍓╀綑閲戦
 
         public void valueFrom(DataCd84Vo vo84, DataCd83OpenVo vo83Op, DataCd83CloseVo vo83Cl){
-            if(this.isAll0(this.icCardAddr)){
-                this.isVirIcCard = true ;
-            }else{
-                this.isVirIcCard = false ;
-            }
             if(vo84 != null){
+                if(this.isAll0(vo84.cardAddr)){
+                    this.isVirIcCard = true ;
+                }else{
+                    this.isVirIcCard = false ;
+                }
                 this.icCardAddr = vo84.cardAddr ;
                 this.icCardNo = vo84.cardNo ;
                 this.remainMoney = vo84.remainMoney ;
             }else if(vo83Op != null){
+                if(this.isAll0(vo83Op.icCardAddr)){
+                    this.isVirIcCard = true ;
+                }else{
+                    this.isVirIcCard = false ;
+                }
                 this.icCardAddr = vo83Op.icCardAddr ;
                 this.icCardNo = vo83Op.icCardNo ;
                 this.remainMoney = vo83Op.remainMoney ;
             }else if(vo83Cl != null){
+                if(this.isAll0(vo83Cl.icCardAddr)){
+                    this.isVirIcCard = true ;
+                }else{
+                    this.isVirIcCard = false ;
+                }
                 this.icCardAddr = vo83Cl.icCardAddr ;
                 this.icCardNo = vo83Cl.icCardNo ;
                 this.remainMoney = vo83Cl.remainMoney ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/ToRtuConstantTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownConstantTask.java
similarity index 96%
rename from pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/ToRtuConstantTask.java
rename to pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownConstantTask.java
index 6347764..0af8480 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/ToRtuConstantTask.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownConstantTask.java
@@ -12,8 +12,8 @@
 /**
  * 澶勭悊RTU涓嬭鍛戒护鏁版嵁鐨勬亽涔呬换鍔�
  */
-public class ToRtuConstantTask extends CoreTask {
-	private static final Logger log = LogManager.getLogger(ToRtuConstantTask.class.getName());
+public class RtuDownConstantTask extends CoreTask {
+	private static final Logger log = LogManager.getLogger(RtuDownConstantTask.class.getName());
 
 	/**
 	 * 鍦ㄥ崟绾跨▼鐜涓繍琛�
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownTask.java
deleted file mode 100644
index e33905f..0000000
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuDownTask.java
+++ /dev/null
@@ -1,68 +0,0 @@
-package com.dy.rtuMw.server.tasks;
-
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-
-import com.dy.common.mw.core.CoreTask;
-import com.dy.common.mw.protocol.MidResult;
-import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.Driver;
-import com.dy.common.mw.protocol.ProtocolCache;
-import com.dy.rtuMw.server.ServerProperties;
-import com.dy.rtuMw.server.forTcp.TcpSessionCache;
-
-/**
- * 浠巜eb涓氬姟绯荤粺鍙戝悜RTU鐨勫懡浠や换鍔�
- * @author Administrator
- *
- */
-public class RtuDownTask extends CoreTask {
-	
-	private static Logger log = LogManager.getLogger(RtuDownTask.class.getName());
-
-	@Override
-	public Integer execute() {
-		Command com = (Command)this.data ;
-		try {
-			log.info("涓嬪彂杩滅▼鍛戒护" + com.getCode() + "鐨勬牳蹇冧换鍔″紑濮嬫墽琛�");
-			this.deal(com);
-		} catch (Exception e) {
-			log.error("澶勭悊涓嬭鍛戒护鍑洪敊" + (e.getMessage()==null?"!":("锛�" + e.getMessage())) ,e);
-		}
-		return null ;
-	}
-	
-	/**
-	 * 澶勭悊鍛戒护
-	 * @param com 鍛戒护
-	 * @throws Exception
-	 */
-	private void deal(Command com) throws Exception{
-		String rtuAddr = com.getRtuAddr() ;
-		//鍓嶉潰宸茬粡鍒ゆ柇rtuAddr涓虹┖鎯呭喌锛岃嚦姝ゅ叾涓嶄负绌�
-		Driver dri = null ;
-		String protocolName = TcpSessionCache.getTcpProtocolName(rtuAddr) ;
-		if(protocolName == null){
-			//RTU鏈浘涓婄嚎
-			int count = ProtocolCache.driverCount() ;
-			if(count == 1){
-				//鍙湁涓�涓崗璁�
-				dri = ProtocolCache.getFirstDriver() ;
-			}
-		}else{
-			dri = ProtocolCache.getDriver(protocolName) ;
-		}	
-		if(dri == null){
-			log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒板崗璁�" + protocolName + "椹卞姩绫诲疄渚嬶紒");
-		}else{
-			MidResult[] actions = dri.createCommand(ServerProperties.isLowPower, com)  ;
-			log.info("涓嬪彂杩滅▼鍛戒护" + com.getCode() + "鐢卞崗璁┍鍔ㄦ瀯閫犲畬鎴�");
-			if(actions != null){
-				for(MidResult act : actions){
-					act.action();
-				}
-			}
-		}
-	}
-
-}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
index dad7123..643ce6d 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/RtuUpTask.java
@@ -58,23 +58,25 @@
 		}
 		String rtuAddr = (String)session.getAttribute(TcpIoSessionAttrIdIsRtuAddr.sessionArrIdKey) ;
 		String protocolName = null ;
+		Short protocolVersion = null ;
 		boolean isOnLine = false ;
 		if(rtuAddr == null){
 			//璇存槑鍒氬缓绔嬬綉缁滆繛鎺ワ紝姝ゆ暟鎹簲璇ユ槸涓婄嚎鏁版嵁
 			isOnLine = true ;
-			String[] rtuAddrProtocolName = this.parseOnLine(session, upBuf) ;
-			if(rtuAddrProtocolName.length == 2){
+			Object[] rtuAddrProtocolNameVersion = this.parseOnLine(session, upBuf) ;
+			if(rtuAddrProtocolNameVersion.length == 3){
 				//瑙f瀽涓婄嚎鏁版嵁鎴愬姛锛屽苟瑙f瀽鍑篟TU鍦板潃鍙婇�氫俊鍗忚鍚嶇О
-				rtuAddr = rtuAddrProtocolName[0] ;
-				protocolName = rtuAddrProtocolName[1] ;
-				
+				rtuAddr = (String)rtuAddrProtocolNameVersion[0] ;
+				protocolName = (String)rtuAddrProtocolNameVersion[1] ;
+				protocolVersion = (Short)rtuAddrProtocolNameVersion[2] ;
+
 				if(rtuAddr != null && protocolName != null){
 					//璁剧疆session鐨勫睘鎬D
 					TcpUnit.getInstance().setIoSessionArrId(session, rtuAddr);
 					//缂撳瓨session
-					TcpSessionCache.putNewTcpSession(rtuAddr, protocolName, session);
+					TcpSessionCache.putNewTcpSession(rtuAddr, protocolName, protocolVersion, session);
 					
-					log.info("RTU(鍦板潃锛�" + rtuAddr + "锛屽崗璁細" + protocolName + ")涓婄嚎浜嗐��") ;
+					log.info("RTU(鍦板潃锛�" + rtuAddr + "锛屽崗璁細" + protocolName + "锛屽崗璁増鏈彿锛�" + protocolVersion + ")涓婄嚎浜嗐��") ;
 				}
 			}
 		}
@@ -95,7 +97,9 @@
 			}
 			if(toDeal){
 				if(protocolName == null){
-					protocolName = TcpSessionCache.getTcpProtocolName(rtuAddr) ;
+					Object[] objs = TcpSessionCache.getTcpProtocolNameVersion(rtuAddr) ;
+					protocolName = (String)objs[0] ;
+					protocolVersion = (Short)objs[1] ;
 				}
 
 				//璁剧疆鏀跺埌鏁版嵁鏃跺埢
@@ -103,7 +107,7 @@
 
 				if(protocolName != null){
 					//瀵逛笂琛屾暟鎹繘琛屽鐞�
-					this.dealUpData(session, rtuAddr, protocolName, isOnLine, upBuf, upHex) ;
+					this.dealUpData(session, rtuAddr, protocolName, protocolVersion, isOnLine, upBuf, upHex) ;
 				}
 			}
 		}
@@ -114,9 +118,10 @@
 	 * @param session IO浼氳瘽
 	 * @param upBuf 涓婅鏁版嵁
 	 */
-	private String[] parseOnLine(IoSession session, byte[] upBuf){
+	private Object[] parseOnLine(IoSession session, byte[] upBuf){
 		String rtuAddr = null ;
 		String protocolName = null ;
+		Short protocolVersion = null ;
 		try {
 			OnLine.OnLineResult rs = new OnLineHandle().parse(upBuf) ;
 			if(rs == null 
@@ -133,6 +138,7 @@
 					log.error("涓ラ噸閿欒锛岃В鏋愪笂绾跨粨鏋滀腑鍗忚鍚嶇О涓虹┖ 锛�" ) ;
 				}else{
 					protocolName = rs.protocolName ;
+					protocolVersion = rs.protocolVersion ;
 				}
 			}else if(rs.result == OnLine.OnLineAction_success_response){
 				if(rs.remoteData != null && rs.remoteData.length > 0){
@@ -144,7 +150,7 @@
 		} catch (Exception e) {
 			log.error("涓ラ噸閿欒锛屽垎鏋愪笂绾挎暟鎹椂浜х敓寮傚父 锛乗n" + e.getMessage() , e) ;
 		}
-		return new String[]{rtuAddr, protocolName} ;
+		return new Object[]{rtuAddr, protocolName, protocolVersion} ;
 	}
 	
 	
@@ -153,12 +159,19 @@
 	 * @param session IO浼氳瘽
 	 * @param rtuAddrAtHead 鎺у埗鍣ㄥ湴鍧�澶撮儴
 	 * @param protocolName 鍗忚鍚嶇О
+	 * @param protocolVersion 鍗忚鐗堟湰鍙�
 	 * @param isOnLine 鏄惁涓婄嚎鏁版嵁
 	 * @param upBuf 涓婅鏁版嵁
 	 * @param upHex 涓婅鏁版嵁
 	 * @throws Exception 寮傚父
 	 */
-	private void dealUpData(IoSession session, String rtuAddrAtHead, String protocolName, boolean isOnLine, byte[] upBuf, String upHex) throws Exception{
+	private void dealUpData(IoSession session,
+							String rtuAddrAtHead,
+							String protocolName,
+							Short protocolVersion,
+							boolean isOnLine,
+							byte[] upBuf,
+							String upHex) throws Exception{
 		Driver dri = ProtocolCache.getDriver(protocolName) ;
 		if(dri == null){
 			log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒板崗璁�" + protocolName + "椹卞姩绫诲疄渚嬶紒");
@@ -169,7 +182,7 @@
 					//鏇存柊缁堢鐘舵��
 					if(rtuAddrInData != null && !rtuAddrInData.equals(rtuAddrAtHead)){
 						//鏁版嵁澶翠腑鐨凴TU鍦板潃涓庢暟鎹腑鐨凴TU鍦板潃涓嶄竴鑷达紝鏇存崲鎴愭暟鎹腑鐨凴TU鍦板潃
-						TcpSessionCache.changeRtuAddr(rtuAddrAtHead, rtuAddrInData, protocolName, session);
+						TcpSessionCache.changeRtuAddr(rtuAddrAtHead, rtuAddrInData, protocolName, protocolVersion, session);
 						session.setAttribute(TcpIoSessionAttrIdIsRtuAddr.sessionArrIdKey, rtuAddrInData) ;
 					}
 
@@ -183,12 +196,12 @@
 					InetSocketAddress sa = (InetSocketAddress)session.getRemoteAddress() ;
 					if(isOnLine){
 						//涓婄嚎浜�
-						RtuStatusDealer.onLine(rtuAddr, sa.getAddress().getHostAddress(), sa.getPort());
+						RtuStatusDealer.onLine(rtuAddr, sa.getAddress().getHostAddress(), sa.getPort(), protocolName, protocolVersion);
 					}
 					if(reportOrResponse_trueOrFalse != null && reportOrResponse_trueOrFalse){
-						RtuStatusDealer.upReport(rtuAddr, upBuf.length) ;
+						RtuStatusDealer.upAutoReport(rtuAddr, code, codeName, upBuf.length) ;
 					}else{
-						RtuStatusDealer.upData(rtuAddr, upBuf.length) ;
+						RtuStatusDealer.upData(rtuAddr, code, codeName, upBuf.length) ;
 					}
 
 					//璁板綍鏃ュ織
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/WebDownComTask.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/WebDownComTask.java
new file mode 100644
index 0000000..73777fd
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/tasks/WebDownComTask.java
@@ -0,0 +1,72 @@
+package com.dy.rtuMw.server.tasks;
+
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+import com.dy.common.mw.core.CoreTask;
+import com.dy.common.mw.protocol.MidResult;
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.Driver;
+import com.dy.common.mw.protocol.ProtocolCache;
+import com.dy.rtuMw.server.ServerProperties;
+import com.dy.rtuMw.server.forTcp.TcpSessionCache;
+
+/**
+ * 浠巜eb涓氬姟绯荤粺鍙戝悜RTU鐨勫懡浠や换鍔�
+ * @author Administrator
+ *
+ */
+public class WebDownComTask extends CoreTask {
+	
+	private static Logger log = LogManager.getLogger(WebDownComTask.class.getName());
+
+	@Override
+	public Integer execute() {
+		Command com = (Command)this.data ;
+		try {
+			log.info("涓嬪彂杩滅▼鍛戒护" + com.getCode() + "鐨勬牳蹇冧换鍔″紑濮嬫墽琛�");
+			this.deal(com);
+		} catch (Exception e) {
+			log.error("澶勭悊涓嬭鍛戒护鍑洪敊" + (e.getMessage()==null?"!":("锛�" + e.getMessage())) ,e);
+		}
+		return null ;
+	}
+	
+	/**
+	 * 澶勭悊鍛戒护
+	 * @param com 鍛戒护
+	 * @throws Exception
+	 */
+	private void deal(Command com) throws Exception{
+		String rtuAddr = com.getRtuAddr() ;
+		//鍓嶉潰宸茬粡鍒ゆ柇rtuAddr涓虹┖鎯呭喌锛岃嚦姝ゅ叾涓嶄负绌�
+		Driver dri = null ;
+		Object[] objs =  TcpSessionCache.getTcpProtocolNameVersion(rtuAddr) ;
+		if(objs == null || objs.length == 0 || objs[0] == null){
+			//RTU鏈浘涓婄嚎
+			/* 2024-11-02 澧炲姞浜嗗崗璁増鏈彿锛屼笖涓�涓崗璁彲浠ユ湁澶氫釜鐗堟湰鍙凤紝鎵�浠ヤ笅闈㈠緱鍒板敮涓�鍗忚椹卞姩瀹炵幇鏂瑰紡涓嶅彲鐢ㄤ簡锛屽洜涓虹‘瀹氫笉浜嗙増鏈彿
+			int count = ProtocolCache.driverCount() ;
+			if(count == 1){
+				//鍙湁涓�涓崗璁�
+				dri = ProtocolCache.getFirstDriver() ;
+			}
+			*/
+		}else{
+			String protocolName = (String)objs[0];
+			com.protocolVersion = (Short)objs[1];
+			dri = ProtocolCache.getDriver(protocolName) ;
+			if(dri == null){
+				log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒板崗璁�" + protocolName + "椹卞姩绫诲疄渚嬶紒");
+			}else{
+				MidResult[] actions = dri.createCommand(ServerProperties.isLowPower, com)  ;
+				log.info("涓嬪彂杩滅▼鍛戒护" + com.getCode() + "鐢卞崗璁┍鍔ㄦ瀯閫犲畬鎴�");
+				if(actions != null){
+					for(MidResult act : actions){
+						act.action();
+					}
+				}
+			}
+		}	
+	}
+
+}
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 520cfe3..3541104 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
@@ -5,7 +5,7 @@
 import com.dy.rtuMw.server.forTcp.TcpSessionCache;
 import com.dy.rtuMw.server.local.CommandInnerDeaLer;
 import com.dy.rtuMw.server.local.ReturnCommand;
-import com.dy.rtuMw.server.tasks.RtuDownTask;
+import com.dy.rtuMw.server.tasks.WebDownComTask;
 import com.dy.common.mw.core.CoreUnit;
 import com.dy.common.mw.protocol.Command;
 import com.dy.common.mw.protocol.CommandType;
@@ -234,7 +234,7 @@
         }
 
         //鐢熸垚寮傛浠诲姟
-        RtuDownTask task = new RtuDownTask() ;
+        WebDownComTask task = new WebDownComTask() ;
         task.data = command ;
         try{
             log.info("鏋勯�犱笅鍙戣繙绋嬪懡浠�" + command.getCode() + "鐨勬牳蹇冧换鍔★紝骞舵斁鍏ヤ换鍔¢槦鍒椾腑");
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
index 9e38b46..32201f0 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intakeController/IntakeControllerCtrl.java
@@ -102,6 +102,7 @@
         prController.setIntakeId(intakeId);
         prController.setRtuAddr(prControllerTramp.getRtuAddr());
         prController.setProtocol(prControllerTramp.getProtocol());
+        prController.setProtocolVersion(prControllerTramp.getProtocolVersion());
         prController.setFindDt(prControllerTramp.getFindDt());
         prController.setOrgTag(prControllerTramp.getOrgTag());
         prController.setAddWays((byte) 1);

--
Gitblit v1.8.0