From 5f988ae8e9516b0ec2406fef7d207b216e30c2af Mon Sep 17 00:00:00 2001
From: wuzeyu <1223318623@qq.com>
Date: 星期五, 13 十二月 2024 16:50:38 +0800
Subject: [PATCH] 优化接口 回复巡检员问题上报接口 已回复的加限制,只能回复一次
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/DriverV1.java | 25 +++++++++++++++++--------
1 files changed, 17 insertions(+), 8 deletions(-)
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..54279c3 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
@@ -3,7 +3,9 @@
import com.dy.common.mw.protocol.*;
import com.dy.common.util.DateTime;
-@AnnotationDriver(enable = true, name= ProtocolConstantV206V1.protocolName)
+@AnnotationDriver(enable = true,
+ name= ProtocolConstantV206V1.protocolName,
+ version= ProtocolConstantV206V1.protocolVer)
public class DriverV1 extends Driver {
private static String scanRootPackage = "com.dy.common.mw.protocol.p206V1" ;
@@ -59,18 +61,17 @@
String upCode = null ;
try{
CommonV1 cp = new CommonV1() ;
- cp.checkHead(upBuffer) ;
+ Boolean p206TrueUgFalse = cp.protocolType_p206TrueUgFalse(upBuffer) ;
+ //鍒版澶勪簡锛宲206TrueUgFalse涓嶅彲鑳戒负绌轰簡
cp.checkTail(upBuffer) ;
- String crcStr = cp.checkCrc_str(upBuffer) ;
+ String crcStr = cp.checkCrc_str(upBuffer, p206TrueUgFalse) ;
if(crcStr != null){
return new MidResult[]{(new MidResultError(ProtocolConstantV206V1.protocolName, rtuAddr, "涓ラ噸閿欒锛屼笂琛屾暟鎹瓹RC妫�鏌ュけ璐ワ紝" + crcStr, null))} ;
}
- rtuAddr = cp.parseRtuAddr(upBuffer) ;
- upCode = cp.parseCode(upBuffer) ;
+ upCode = cp.parseCode(upBuffer, p206TrueUgFalse) ;
if(upCode == null){
return new MidResult[]{(new MidResultError(ProtocolConstantV206V1.protocolName, rtuAddr, "涓ラ噸閿欒锛屾湭鑳戒粠涓婅鏁版嵁涓В鏋愬嚭鍔熻兘鐮侊紒", null))} ;
}
- //Integer dataLen = cp.parseFrameLen(upBuffer) ;
Data upData = new Data() ;
upData.setRtuAddr(rtuAddr) ;
upData.setProtocol(ProtocolConstantV206V1.protocolName);
@@ -87,6 +88,7 @@
upData.setSubData(dV1) ;
this.upCpParams.setValue(ProtocolConstantV206V1.protocolName,
+ ProtocolConstantV206V1.protocolVer,
rtuAddr,
upCode,
upHex,
@@ -102,14 +104,20 @@
reportOrResponse_trueOrFalse = flag ;
rtuAddrInData = dV1.getRtuAddr() ;
}
+ @Override
+ public void notify(NotifyInfo ...infos) {
+ notify.notify(rtuAddr, ProtocolConstantV206V1.protocolName, ProtocolConstantV206V1.protocolVer, infos);
+ }
});
}
-
} catch (Exception e) {
isFail = true ;
return new MidResult[]{(new MidResultError(ProtocolConstantV206V1.protocolName, rtuAddr, "涓ラ噸閿欒锛屽垎鏋怰tu鏁版嵁鍑洪敊锛佹暟鎹负锛�" + upHex + (e.getMessage() == null?"":("锛屽嚭閿欎俊鎭細" + e.getMessage())), e))} ;
} finally{
- callback.callback(rtuAddr, upCode, CodeV1.getCodeName(upCode), upHex, reportOrResponse_trueOrFalse, isFail, rtuAddr);
+ if(upCode != null){
+ //CRC楠岃瘉澶辫触鏃讹紝upCode涓簄ull锛屾鏃朵笉杩涜鍥炶皟
+ callback.callback(rtuAddr, upCode, CodeV1.getCodeName(upCode), upHex, reportOrResponse_trueOrFalse, isFail, rtuAddr);
+ }
}
}
@@ -136,6 +144,7 @@
this.downCpParams.setValue(
RtuResultSendWebUrl,
ProtocolConstantV206V1.protocolName,
+ command.protocolVersion==null?ProtocolConstantV206V1.protocolVer:command.protocolVersion,
rtuAddr,
command.getId(),
commandCode,
--
Gitblit v1.8.0