From 37b627623f03f58fef28f4a87a049ccabda6f72d Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期一, 13 一月 2025 09:55:13 +0800
Subject: [PATCH] 增加一个vo
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealAlarmStatusV202404.java | 270 ++++++++++++++++++++++++++++++++----------------------
1 files changed, 160 insertions(+), 110 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 bcf46fc..837e2f0 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
@@ -3,12 +3,16 @@
import com.dy.common.mw.protocol.Data;
import com.dy.common.mw.protocol.p206V202404.DataV202404 ;
import com.dy.common.mw.protocol.p206V202404.upVos.*;
+import com.dy.common.util.DateTime;
import com.dy.pipIrrGlobal.pojoPr.PrController;
+import com.dy.pipIrrGlobal.pojoRm.RmAlarmStateHistory;
import com.dy.pipIrrGlobal.pojoRm.RmAlarmStateLast;
import com.dy.rtuMw.server.rtuData.TaskSurpport;
import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+
+import java.util.Date;
/**
* @Author liurunyu
@@ -28,47 +32,41 @@
@Override
public void execute(Object data) {
Data d = (Data)data ;
- Object protocolData = d.getSubData() ;
- if(protocolData != null){
- DataV202404 dV202404 = (DataV202404)protocolData ;
- if(dV202404 != null){
- 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(), null, null, null, cdData, null, null) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), null, null, null, cdData, null, null) ;
- }else if(cdObj instanceof DataCd80_5BVo){
- //璁惧缁堢宸ヤ綔涓婃姤 + 鏌ヨ璁惧缁堢瀹炴椂鍊�
- DataCd80_5BVo cdData = (DataCd80_5BVo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, null, null, null, null) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.rtuDt, cdData, null, null, null, null) ;
- }else if(cdObj instanceof DataCd93_A3Vo){
- //骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂� + 鍒峰崱鍏虫车/闃�涓婃姤
- DataCd93_A3Vo cdData = (DataCd93_A3Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), cdData.endDt, null, cdData, null, null, null) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), cdData.endDt, null, cdData, null, null, null) ;
- }else if(cdObj instanceof DataCd84Vo){
- //璁惧缁堢闅忔満鑷姤
- DataCd84Vo cdData = (DataCd84Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), null, null, null, null, cdData, null) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), null, null, null, null, cdData, null) ;
- }else if(cdObj instanceof DataCdC2Vo){
- //璁惧缁堢闅忔満鑷姤
- DataCdC2Vo cdData = (DataCdC2Vo)(cdObj) ;
- this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), null, null, null, null, null, cdData) ;
- this.saveHistory(sv, controller, d.getRtuAddr(), null, null, null, null, null, cdData) ;
- }
- }catch (Exception e){
- log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e);
- }
- }
+ DataV202404 dV202404 = (DataV202404)d.getSubData() ;
+ Object cdObj = dV202404.subData ;
+ //鍓嶉潰浠诲姟宸茬粡鍒ゆ柇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.openDt, cdData, dV202404.dt) ;
+ this.saveHistory(sv, controller, d.getRtuAddr(), cdData.openDt, 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) ;
}
+ }catch (Exception e){
+ log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e);
}
}
/**
@@ -77,32 +75,49 @@
* @param controller 鎺у埗鍣ㄥ璞�
* @param rtuAddr 鎺у埗鍣ㄥ湴鍧�
* @param rtuDt 鎺у埗鍣ㄦ椂閽�
- * @param vo80_5B
- * @param vo93_A3_85
- * @param vo81
+ * @param alarmVo 鎶ヨ鍙婄姸鎬佹暟鎹�
+ * @param receiveDt 鎺ユ敹鏁版嵁鏃舵湰鍦版椂閽�
*/
private void saveOrUpdateLast(DbSv sv,
PrController controller,
String rtuAddr,
String rtuDt,
- DataCd80_5BVo vo80_5B,
- DataCd93_A3Vo vo93_A3_85,
- DataCd81Vo vo81,
- DataCd84Vo vo84,
- DataCdC2Vo voC2) throws Exception {
-// RmAlarmStateLast po = sv.getRmAlarmStateLast(rtuAddr) ;
-// if(po == null){
-// po = new RmAlarmStateLast(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
-// rtuAddr,
-// DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt),
-// DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt),
-// alarmVo==null?null:alarmVo.batteryVolt, alarmVo==null?null:alarmVo.loss, alarmVo==null?null:alarmVo.meter, alarmVo==null?null:alarmVo.valve,
-// stateVo==null?null:stateVo.icCard, stateVo==null?null:stateVo.working, stateVo==null?null:stateVo.valve) ;
-// sv.saveRmAlarmStateLast(po) ;
-// }else{
-// po = this.update(controller, po, rtuDt, dV1_0_1, alarmVo, stateVo) ;
-// sv.updateRmAlarmStateLast(po);
-// }
+ AlarmVo alarmVo,
+ String receiveDt) throws Exception {
+ RmAlarmStateLast po = sv.getRmAlarmStateLast(controller.getIntakeId()) ;
+ if(po == null){
+ po = new RmAlarmStateLast(null,
+ controller==null?null:controller.getId(),
+ controller==null?null:controller.getIntakeId(),
+ rtuAddr,
+ DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(receiveDt),
+ DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt),
+ alarmVo==null?null:alarmVo.statePump,
+ alarmVo==null?null:alarmVo.alarmWaterRemain,
+ alarmVo==null?null:alarmVo.alarm0WaterRemain,
+ alarmVo==null?null:alarmVo.alarmExceedYear,
+ alarmVo==null?null:alarmVo.alarmWaterMeterFault,
+ alarmVo==null?null:alarmVo.alarmSteal,
+ 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.alarmEleMiss,
+ alarmVo==null?null:alarmVo.alarmEleExceed,
+ alarmVo==null?null:alarmVo.alarmEleLowVolt,
+ alarmVo==null?null:alarmVo.stateIcEnable,
+ (byte)0,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0,//闃�闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0,//渚涚數鏂瑰紡锛�0: 220V锛�1锛氳搫鐢垫睜锛�
+ System.currentTimeMillis()
+ ) ;
+ sv.saveRmAlarmStateLast(po) ;
+ }else{
+ po = this.update(po, controller, rtuDt, alarmVo, receiveDt) ;
+ this.updateVirCardNoUseState(sv, controller, alarmVo) ;
+ sv.updateRmAlarmStateLast(po);
+ }
}
/**
@@ -111,63 +126,98 @@
* @param controller 鎺у埗鍣ㄥ璞�
* @param rtuAddr 鎺у埗鍣ㄥ湴鍧�
* @param rtuDt 鎺у埗鍣ㄦ椂閽�
- * @param vo80_5B
- * @param vo93_A3_85
- * @param vo81
+ * @param alarmVo 鎶ヨ鍙婄姸鎬佹暟鎹�
+ * @param receiveDt 鎺ユ敹鏁版嵁鏃舵湰鍦版椂閽�
*/
private void saveHistory(DbSv sv,
PrController controller,
String rtuAddr,
String rtuDt,
- DataCd80_5BVo vo80_5B,
- DataCd93_A3Vo vo93_A3_85,
- DataCd81Vo vo81,
- DataCd84Vo vo84,
- DataCdC2Vo voC2) throws Exception {
-// RmAlarmStateHistory po = new RmAlarmStateHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(),
-// rtuAddr,
-// DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt),
-// DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt),
-// alarmVo==null?null:alarmVo.batteryVolt, alarmVo==null?null:alarmVo.loss, alarmVo==null?null:alarmVo.meter, alarmVo==null?null:alarmVo.valve,
-// stateVo==null?null:stateVo.icCard, stateVo==null?null:stateVo.working, stateVo==null?null:stateVo.valve) ;
-// sv.saveRmAlarmStateHistory(po) ;
+ AlarmVo alarmVo,
+ String receiveDt) throws Exception {
+ RmAlarmStateHistory po = new RmAlarmStateHistory(null,
+ controller==null?null:controller.getId(),
+ controller==null?null:controller.getIntakeId(),
+ rtuAddr,
+ DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(receiveDt),
+ DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt),
+ alarmVo==null?null:alarmVo.statePump,
+ alarmVo==null?null:alarmVo.alarmWaterRemain,
+ alarmVo==null?null:alarmVo.alarm0WaterRemain,
+ alarmVo==null?null:alarmVo.alarmExceedYear,
+ alarmVo==null?null:alarmVo.alarmWaterMeterFault,
+ alarmVo==null?null:alarmVo.alarmSteal,
+ 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.alarmEleMiss,
+ alarmVo==null?null:alarmVo.alarmEleExceed,
+ alarmVo==null?null:alarmVo.alarmEleLowVolt,
+ alarmVo==null?null:alarmVo.stateIcEnable,
+ (byte)0,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0,//闃�闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�)
+ (byte)0//渚涚數鏂瑰紡锛�0: 220V锛�1锛氳搫鐢垫睜锛�
+ ) ;
+ sv.saveRmAlarmStateHistory(po) ;
}
- private RmAlarmStateLast update(PrController controller,
- RmAlarmStateLast po,
+ /**
+ * 淇濆瓨鎶ヨ鐘舵�佹渶鏂版暟鎹�
+ * @param po 瀹炰綋瀵硅薄
+ * @param controller 鎺у埗鍣ㄥ璞�
+ * @param rtuDt 鎺у埗鍣ㄦ椂閽�
+ * @param alarmVo 鎶ヨ鍙婄姸鎬佹暟鎹�
+ * @param receiveDt 鎺ユ敹鏁版嵁鏃舵湰鍦版椂閽�
+ */
+ private RmAlarmStateLast update(RmAlarmStateLast po,
+ PrController controller,
String rtuDt,
- DataCd80_5BVo vo80_5B,
- DataCd93_A3Vo vo93_A3_85,
- DataCd81Vo vo81,
- DataCd84Vo vo84,
- DataCdC2Vo voC2) throws Exception {
-// po.controllerid = controller==null?null:controller.getId() ;
-// po.intakeid = controller==null?null:controller.getIntakeId() ;
-//
-// po.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt) ;
-// po.rtudt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt) ;
-// if(alarmVo != null){
-// po.bateryvolt = alarmVo.batteryVolt ;
-// po.loss = alarmVo.loss ;
-// po.meter = alarmVo.meter ;
-// po.valve = alarmVo.valve ;
-// }else{
-// po.bateryvolt = null ;
-// po.loss = null ;
-// po.meter = null ;
-// po.valve = null ;
-// }
-// if(stateVo != null){
-// po.iccard = stateVo.icCard ;
-// po.working = stateVo.working ;
-// po.valvestate = stateVo.valve ;
-// }else{
-// po.iccard = null ;
-// po.working = null ;
-// po.valvestate = null ;
-// }
-// return po ;
- return null ;
+ AlarmVo alarmVo,
+ String receiveDt) throws Exception {
+ po.controllerId = controller==null?null:controller.getId() ;
+ po.intakeId = controller==null?null:controller.getIntakeId() ;
+
+ po.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(receiveDt) ;
+ po.rtuDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(rtuDt) ;
+ if(alarmVo != null){
+ po.valveState = alarmVo.statePump ;
+ po.alarmRemainWater = alarmVo.alarmWaterRemain ;
+ po.alarm0WaterRemain = alarmVo.alarm0WaterRemain ;
+ po.alarmExceedYear = alarmVo.alarmExceedYear ;
+ po.alarmWaterMeterFault = alarmVo.alarmWaterMeterFault ;
+ po.alarmLoss = alarmVo.alarmSteal ;
+ po.alarmWaterMeterBreak = alarmVo.alarmWaterMeterBreak ;
+ po.alarmEleMeterFault = alarmVo.alarmEleMeterFault ;
+ po.alarm0MoneyRemain = alarmVo.alarm0MoneyRemain ;
+ po.alarmInnerDoor = alarmVo.alarmInnerDoor ;
+ po.alarmOuterDoor = alarmVo.alarmOuterDoor ;
+ po.alarmEleMiss = alarmVo.alarmEleMiss ;
+ po.alarmEleExceed = alarmVo.alarmEleExceed ;
+ po.alarmEleLowVolt = alarmVo.alarmEleLowVolt ;
+ po.stateIcEnable = alarmVo.stateIcEnable ;
+ }
+ return po ;
+ }
+
+ /**
+ * 铏氭嫙鍗″湪鍙栨按涓殑鍗犵敤鐘舵�佹敼涓洪潪搴旂敤鐘舵��
+ */
+ private void updateVirCardNoUseState(DbSv sv,
+ PrController controller,
+ AlarmVo alarmVo){
+ if(alarmVo != null){
+ if(alarmVo.statePump != null && alarmVo.statePump.byteValue() == 0){
+ //闃�闂ㄥ叧闂姸鎬�
+ if(controller != null && controller.getIntakeId() != null){
+ //铏氭嫙鍗″湪鍙栨按涓殑鍗犵敤鐘舵�佹敼涓洪潪搴旂敤鐘舵��
+ Date now = new Date() ;
+ sv.updateVirCardNoUseState(controller.getIntakeId(), now);
+ }
+ }
+ }
+
}
}
--
Gitblit v1.8.0