From 70aeac289c132085e91d59dc82bc1facd41889fa Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期一, 24 二月 2025 15:33:53 +0800
Subject: [PATCH] 有关表阀一体机(王江海制定)通信协议: 1、根据新版本协议,解析部分更新; 2、根据测试一体阀协议数据处理需求与逻辑,进行表阀一体机数据处理。
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java | 127 ++++++++++++++++++++++++++++--------------
1 files changed, 85 insertions(+), 42 deletions(-)
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 193e8d8..6379528 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
@@ -30,42 +30,75 @@
@Override
public void execute(Object data) {
Data d = (Data)data ;
- DataV202404 dV202404 = (DataV202404)d.getSubData() ;//鍓嶉潰浠诲姟宸茬粡鍒ゆ柇涓嶄负null
+ DataV202404 dV202404 = (DataV202404)d.getSubData() ;
Object cdObj = dV202404.subData ;
- if(cdObj != null){
- try{
- Object[] objs = this.getTaskResults(TkPreGenObjsV202404.taskId) ;
- DbSv sv = (DbSv)objs[0] ;
- PrController controller = (PrController)objs[1] ;
- if(cdObj instanceof DataCd81Vo){
- //璁惧缁堢闅忔満鑷姤
- DataCd81Vo cdData = (DataCd81Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
- }else if(cdObj instanceof DataCd80_5BVo){
- //璁惧缁堢宸ヤ綔涓婃姤 + 鏌ヨ璁惧缁堢瀹炴椂鍊�
- DataCd80_5BVo cdData = (DataCd80_5BVo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
- }else if(cdObj instanceof DataCd93_A3Vo){
- //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂� + 鍒峰崱鍏虫车/闃�涓婃姤
- DataCd93_A3Vo cdData = (DataCd93_A3Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.endDt, cdData, dV202404.dt) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.endDt, cdData, dV202404.dt) ;
- }else if(cdObj instanceof DataCd84Vo){
- //璁惧缁堢闅忔満鑷姤
- DataCd84Vo cdData = (DataCd84Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.opDt, cdData, dV202404.dt) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.opDt, cdData, dV202404.dt) ;
- }else if(cdObj instanceof DataCdC2Vo){
- //璁惧缁堢闅忔満鑷姤
- DataCdC2Vo cdData = (DataCdC2Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ //鍓嶉潰浠诲姟宸茬粡鍒ゆ柇cdObj涓嶄负null
+ boolean toNext = false ;
+ try{
+ Object[] objs = this.getTaskResults(TkPreGenObjsV202404.taskId) ;
+ DbSv sv = (DbSv)objs[0] ;
+ PrController controller = (PrController)objs[1] ;
+ if(cdObj instanceof DataCd81Vo){
+ //璁惧缁堢闅忔満鑷姤
+ DataCd81Vo cdData = (DataCd81Vo)(cdObj) ;
+ this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ 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 ;
+ }
}
- }catch (Exception e){
- log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e);
+ }else if(cdObj instanceof DataCd80_5BVo){
+ //璁惧缁堢宸ヤ綔涓婃姤 + 鏌ヨ璁惧缁堢瀹炴椂鍊�
+ DataCd80_5BVo cdData = (DataCd80_5BVo)(cdObj) ;
+ this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ 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 DataCd93_A3Vo){
+ //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂� + 鍒峰崱鍏虫车/闃�涓婃姤
+ DataCd93_A3Vo cdData = (DataCd93_A3Vo)(cdObj) ;
+ this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.endDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.endDt, cdData, dV202404.dt) ;
+ 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 DataCd84Vo){
+ //璁惧缁堢鍒峰崱寮�娉�/闃�涓婃姤
+ DataCd84Vo cdData = (DataCd84Vo)(cdObj) ;
+ this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.openDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.openDt, cdData, dV202404.dt) ;
+ 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 DataCdC2Vo){
+ //璁惧缁堢寮�鍏虫按娉�/闃�闂ㄦ垚鍔�/澶辫触涓婃姤
+ DataCdC2Vo cdData = (DataCdC2Vo)(cdObj) ;
+ this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, dV202404.dt) ;
+ 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 ;
+ }
+ }
}
+ }catch (Exception e){
+ log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e);
+ }
+ if(toNext){
+ this.toNextTasks(d);
}
}
/**
@@ -83,7 +116,7 @@
String rtuDt,
AlarmVo alarmVo,
String receiveDt) throws Exception {
- RmAlarmStateLast po = sv.getRmAlarmStateLast(rtuAddr) ;
+ RmAlarmStateLast po = sv.getRmAlarmStateLast(controller.getIntakeId()) ;
if(po == null){
po = new RmAlarmStateLast(null,
controller==null?null:controller.getId(),
@@ -100,12 +133,16 @@
alarmVo==null?null:alarmVo.alarmWaterMeterBreak,
alarmVo==null?null:alarmVo.alarmEleMeterFault,
alarmVo==null?null:alarmVo.alarm0MoneyRemain,
- alarmVo==null?null:alarmVo.alarmInnerDoor,
- alarmVo==null?null:alarmVo.alarmOuterDoor,
+ alarmVo==null?null:alarmVo.alarmDoor,
+ alarmVo==null?null:alarmVo.alarmDoor,//2025-02-19鏈虹澶栭棬鎶ヨ椤规敼涓虹數姹犵數鍘嬩簡
alarmVo==null?null:alarmVo.alarmEleMiss,
alarmVo==null?null:alarmVo.alarmEleExceed,
alarmVo==null?null:alarmVo.alarmEleLowVolt,
- alarmVo==null?null:alarmVo.stateIcEnable
+ alarmVo==null?null:alarmVo.stateIcEnable,
+ alarmVo==null?null:alarmVo.alarmBatteryVolt,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�)
+ alarmVo==null?null:alarmVo.alarmBlockValve,//闃�闂ㄥ牭杞姤璀�(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0,//渚涚數鏂瑰紡锛�0: 220V锛�1锛氳搫鐢垫睜锛�
+ System.currentTimeMillis()
) ;
sv.saveRmAlarmStateLast(po) ;
}else{
@@ -144,12 +181,15 @@
alarmVo==null?null:alarmVo.alarmWaterMeterBreak,
alarmVo==null?null:alarmVo.alarmEleMeterFault,
alarmVo==null?null:alarmVo.alarm0MoneyRemain,
- alarmVo==null?null:alarmVo.alarmInnerDoor,
- alarmVo==null?null:alarmVo.alarmOuterDoor,
+ alarmVo==null?null:alarmVo.alarmDoor,
+ alarmVo==null?null:alarmVo.alarmDoor,//2025-02-19鏈虹澶栭棬鎶ヨ椤规敼涓虹數姹犵數鍘嬩簡
alarmVo==null?null:alarmVo.alarmEleMiss,
alarmVo==null?null:alarmVo.alarmEleExceed,
alarmVo==null?null:alarmVo.alarmEleLowVolt,
- alarmVo==null?null:alarmVo.stateIcEnable
+ alarmVo==null?null:alarmVo.stateIcEnable,
+ alarmVo==null?null:alarmVo.alarmBatteryVolt,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�)
+ alarmVo==null?null:alarmVo.alarmBlockValve,//闃�闂ㄥ牭杞姤璀�(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0//渚涚數鏂瑰紡锛�0: 220V锛�1锛氳搫鐢垫睜锛�
) ;
sv.saveRmAlarmStateHistory(po) ;
}
@@ -183,13 +223,16 @@
po.alarmWaterMeterBreak = alarmVo.alarmWaterMeterBreak ;
po.alarmEleMeterFault = alarmVo.alarmEleMeterFault ;
po.alarm0MoneyRemain = alarmVo.alarm0MoneyRemain ;
- po.alarmInnerDoor = alarmVo.alarmInnerDoor ;
- po.alarmOuterDoor = alarmVo.alarmOuterDoor ;
+ po.alarmInnerDoor = alarmVo.alarmDoor;
+ po.alarmOuterDoor = alarmVo.alarmDoor;
po.alarmEleMiss = alarmVo.alarmEleMiss ;
po.alarmEleExceed = alarmVo.alarmEleExceed ;
po.alarmEleLowVolt = alarmVo.alarmEleLowVolt ;
po.stateIcEnable = alarmVo.stateIcEnable ;
+ po.alarmBatteryVolt = alarmVo.alarmBatteryVolt ;
+ po.alarmValve = alarmVo.alarmBlockValve;
}
return po ;
}
+
}
--
Gitblit v1.8.0