From b397edee2be2dfcc3f28eeac50298b4de26b1afa Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 13 十二月 2024 16:53:45 +0800
Subject: [PATCH] 取水口日取水量表中,出现一些大数,明显不正确,发析系统日志,发现一些阀控器会上报一些累计流量为0的数据,且无规律,推测是其不能从水表读取到累计流量时会上报0值。如果间歇上报0值,间歇上报一些非0值,非0值减去0值,就会出现大数,一天中出现几次那么会大数进行累加,数值将更大。为此变更算法,规避这种情况,但也会丢失一些流量值。
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1/parse/Cd_98_Up.java | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
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 3c23b41..45e4a25 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,6 @@
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;
@@ -29,7 +28,7 @@
@Override
public MidResult[] parse(Boolean isLowPower, CodeParseParams params, CodeParseCallback callback)throws Exception {
ParseParamsForUpV1 para = (ParseParamsForUpV1)params ;
- int bsLen = new CommonV1().parseDataLen(para.upBuffer) ;
+ int bsLen = new CommonV1().parseDataLen4P206(para.upBuffer) ;
if(bsLen > 0){
this.doParse(para.upBuffer,
bsLen,
@@ -51,7 +50,7 @@
callback.callback(midRs.reportOrResponse_trueOrFalse);
if(para.data != null && para.data.getSubData() != null){
- DataCd98Vo subData = (DataCd98Vo)para.data.getSubData() ;
+ DataCd98Vo subData = (DataCd98Vo)((DataV1)para.data.getSubData()).subData ;
callback.notify(new ValveStateInfo(!subData.success));
}
return new MidResult[]{midRs} ;
--
Gitblit v1.8.0