From 6849ec1281a1a45639d6d28eef771eac63e389d2 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 11 六月 2025 16:32:44 +0800 Subject: [PATCH] 1、表阀一体协议,关阀失败数据解析修改; 2、RTU状态处理逻辑修改,每条81上报数据都要保存。 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java | 27 ++++++++++++++------------- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 8 +++++--- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealAlarmStatus.java | 9 +++++---- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealAlarmStatusV2.java | 5 +++-- 4 files changed, 27 insertions(+), 22 deletions(-) diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java index 80e7d3f..df54556 100644 --- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java +++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java @@ -328,14 +328,16 @@ index += 8 ; cdData.orderNo = ByteUtil.BCD2String_BE(bs, index, index + 7) ; - index += 8 ; - cdData.startDt = GlParse.parseRtuDt(bs, index) ; - if(cdData.clResult == (byte)0x81){ + //2025-06-11 鐜嬫睙娴峰畨鎺� //澶辫触浜嗭紝涓嬮潰灏辨病鏈夋暟鎹簡 return ; } + index += 8 ; + cdData.startDt = GlParse.parseRtuDt(bs, index) ; + + index += 6 ; cdData.endDt = GlParse.parseRtuDt(bs, index) ; 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 23808df..dfc00f9 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 @@ -63,13 +63,14 @@ toNext = true ; } } - if(this.needSave2Db( d.getRtuAddr())){ + //2025-06-11 鍥犱负81鍛戒护鏄疪TU鐘舵�佹敼鍙樻椂鍗充笂鎶ワ紝鎵�浠ュ彲浠ュ強鏃朵綋鐜扮姸鎬佸彉鍖栵紝杩涜�屼笉鍙楀瓨鍌ㄦ帶鍒� + //if(this.needSave2Db( d.getRtuAddr())){ //鍦ㄤ竴涓皬鏃跺唴娌℃湁瀛樺偍鎶ヨ鏁版嵁 this.toMsCenter(controller, d.getRtuAddr(), dV1, dataCd81Vo.alarmVo, dataCd81Vo.stateVo); this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dataCd81Vo.rtuDt, dV1, dataCd81Vo.alarmVo, dataCd81Vo.stateVo); this.saveHistory(sv, controller, d.getRtuAddr(), dataCd81Vo.rtuDt, dV1, dataCd81Vo.alarmVo, dataCd81Vo.stateVo); - this.cacheSaveTime(d.getRtuAddr()); - } + //this.cacheSaveTime(d.getRtuAddr()); + //} } } else if (cdObj instanceof DataCd84Vo) { //闃�寮�宸ヤ綔鎶� @@ -78,7 +79,7 @@ Object[] objs = this.getTaskResults(TkPreGenObjs.taskId); DbSv sv = (DbSv) objs[0]; PrController controller = (PrController) objs[1]; - /** 闃�寮�宸ヤ綔鎶ワ紝闃�闂ㄧ姸鎬佷竴瀹氭槸鎵撳紑鐘舵�侊紝鎵�浠ヤ笉璁剧疆涓嬮潰鏁版嵁浠ュ鍚庣画浠诲姟璁剧疆铏氭嫙鍗$姸鎬� + /* 闃�寮�宸ヤ綔鎶ワ紝闃�闂ㄧ姸鎬佷竴瀹氭槸鎵撳紑鐘舵�侊紝鎵�浠ヤ笉璁剧疆涓嬮潰鏁版嵁浠ュ鍚庣画浠诲姟璁剧疆铏氭嫙鍗$姸鎬� 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} ; diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealAlarmStatusV2.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealAlarmStatusV2.java index 24e0c4b..6f0856b 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealAlarmStatusV2.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V2/TkDealAlarmStatusV2.java @@ -76,7 +76,8 @@ //闅忔満鑷姤鎶� DataCd81Vo dataCd81Vo = (DataCd81Vo)cdObj ; if (dataCd81Vo.alarmVo != null || dataCd81Vo.stateVo != null) { - if(this.needSave2Db( d.getRtuAddr())) { + //2025-06-11 鍥犱负81鍛戒护鏄疪TU鐘舵�佹敼鍙樻椂鍗充笂鎶ワ紝鎵�浠ュ彲浠ュ強鏃朵綋鐜扮姸鎬佸彉鍖栵紝杩涜�屼笉鍙楀瓨鍌ㄦ帶鍒� + //if(this.needSave2Db( d.getRtuAddr())) { //鍦ㄤ竴涓皬鏃跺唴娌℃湁瀛樺偍鎶ヨ鏁版嵁 Object[] objs = this.getTaskResults(TkPreGenObjsV2.taskId); DbSv sv = (DbSv) objs[0]; @@ -91,7 +92,7 @@ toNext = true ; } } - } + //} } } else if (cdObj instanceof DataCd84Vo) { //闃�寮�宸ヤ綔鎶� diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java index c9d63e0..9062205 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java @@ -48,18 +48,16 @@ PrController controller = (PrController)objs[1] ; if(cdObj instanceof DataCd81Vo){ //璁惧缁堢闅忔満鑷姤 - if(this.needSave2Db( d.getRtuAddr())) { - //鍦ㄤ竴涓皬鏃跺唴娌℃湁瀛樺偍鎶ヨ鏁版嵁 - DataCd81Vo cdData = (DataCd81Vo)(cdObj) ; - this.toMsCenter(controller, d.getRtuAddr(), dV202404, cdData, dV202404.dt); - this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ; - this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ; - this.cacheSaveTime(d.getRtuAddr()); - if(cdData.statePump != null && cdData.statePump.byteValue() == AlarmVo.DevCloseState){ - if(controller != null && controller.getIntakeId() != null){ - this.taskResult = new Object[]{controller.getIntakeId(), AlarmVo.DevCloseState} ; - toNext = true ; - } + //81鍔熻兘鐮佹暟鎹紝涓嶈繘琛屸�滃湪涓�涓皬鏃跺唴娌℃湁瀛樺偍鎶ヨ鏁版嵁鈥濈殑鎺у埗 + DataCd81Vo cdData = (DataCd81Vo)(cdObj) ; + this.toMsCenter(controller, d.getRtuAddr(), dV202404, cdData, dV202404.dt); + this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ; + this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ; + this.cacheSaveTime(d.getRtuAddr()); + if(cdData.statePump != null && cdData.statePump.byteValue() == AlarmVo.DevCloseState){ + if(controller != null && controller.getIntakeId() != null){ + this.taskResult = new Object[]{controller.getIntakeId(), AlarmVo.DevCloseState} ; + toNext = true ; } } }else if(cdObj instanceof DataCd80_5BVo){ @@ -78,7 +76,9 @@ } } } - }else if(cdObj instanceof DataCd93_A3Vo){ + } + /* 2025-06-11 鐜嬫睙娴疯锛氫互涓嬫暟鎹腑鐨勭姸鎬佷笉鍑嗙‘锛屽挨鍏堕榾闂ㄧ姸鎬侊紝鎵�浠ヤ笉鍐嶉噰绾� + else if(cdObj instanceof DataCd93_A3Vo){ //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂� + 鍒峰崱鍏虫车/闃�涓婃姤 if(this.needSave2Db( d.getRtuAddr())) { //鍦ㄤ竴涓皬鏃跺唴娌℃湁瀛樺偍鎶ヨ鏁版嵁 @@ -127,6 +127,7 @@ } } } + */ }catch (Exception e){ log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e); } -- Gitblit v1.8.0