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/p206V2/parse/Cd_81_Up.java | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) 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 12d4e3f..f01ab6f 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 @@ -23,7 +23,7 @@ @Override public MidResult[] parse(Boolean isLowPower, CodeParseParams params, CodeParseCallback callback)throws Exception { ParseParamsForUpV2 para = (ParseParamsForUpV2)params ; - int bsLen = new CommonV2().parseDataLen(para.upBuffer) ; + int bsLen = new CommonV2().parseDataLen4P206(para.upBuffer) ; if(bsLen > 0){ this.doParse(para.upBuffer, bsLen, @@ -78,12 +78,12 @@ callback.callback(midRs.reportOrResponse_trueOrFalse); if(para.data != null && para.data.getSubData() != null){ - DataCd81Vo cdData = (DataCd81Vo)para.data.getSubData() ; + 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} ; + return new MidResult[]{confirmCommand, midRs} ; } /** * 鎵ц鍒嗘瀽 -- Gitblit v1.8.0