From d9765e031e100e1d8eea34e086cb9c81766e1a00 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 21 二月 2025 09:52:14 +0800
Subject: [PATCH] 针对王江海制定的协议: 1、优化相关注释; 2、优化代码; 3、协议中报警信息有变化:外门报警改为电池电压报警、增加阀门开关状态、增加阀门堵转报警等。

---
 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