From 9860dd8d6a437ba7e11168f490f86d4cc6edf584 Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期四, 13 六月 2024 22:34:47 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java | 207 +++++++++++++++++++++++++++++++++------------------ 1 files changed, 135 insertions(+), 72 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java index 55cede3..cafed3b 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java @@ -1,22 +1,20 @@ package com.dy.rtuMw.server.rtuData.p206V1_0_0; +import com.dy.common.mw.protocol.p206V1_0_0.upVos.*; +import com.dy.common.util.DateTime; +import com.dy.pipIrrGlobal.pojoRm.RmAlarmStateHistory; import com.dy.rtuMw.server.rtuData.TaskSurpport; import com.dy.rtuMw.server.rtuData.dbSv.DbSv; import com.dy.common.mw.protocol.Data; -import com.dy.common.mw.protocol.p206V1_0_0.DataAlarmVo; -import com.dy.common.mw.protocol.p206V1_0_0.DataStateVo; import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1; -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 org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; /** * @Author liurunyu - * @Date 2024/1/15 21:59 - * @LastEditTime 2024/1/15 21:59 + * @Date 2024/6/11 17:19 * @Description */ public class TkDealAlarmStatus extends TaskSurpport { @@ -36,27 +34,39 @@ Object subD = d.getSubData() ; if(subD != null){ DataV1_0_1 dV1_0_1 = (DataV1_0_1)subD ; - if(dV1_0_1 != null){ - //dV1_0_1.dataCd81Vo 涓� dV1_0_1.dataCdC0Vo 涓嶄細鍚屾椂鏈夊�� - try{ -// if(dV1_0_1.dataCd81Vo != null){ -// if(dV1_0_1.dataCd81Vo.alarmVo != null || dV1_0_1.dataCd81Vo.stateVo != null){ -// Object[] objs = this.getTaskResults(TkPreGenObjs.taskId) ; -// DbSv sv = (DbSv)objs[0] ; -// PrController controller = (PrController)objs[1] ; -// this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dV1_0_1.dataCd81Vo.rtuDt, dV1_0_1, dV1_0_1.dataCd81Vo.alarmVo, dV1_0_1.dataCd81Vo.stateVo) ; -// this.saveHistory(sv, controller, d.getRtuAddr(), dV1_0_1.dataCd81Vo.rtuDt, dV1_0_1, dV1_0_1.dataCd81Vo.alarmVo, dV1_0_1.dataCd81Vo.stateVo) ; -// } -// } else if(dV1_0_1.dataCdC0Vo != null){ -// if(dV1_0_1.dataCdC0Vo.alarmVo != null || dV1_0_1.dataCdC0Vo.stateVo != null){ -// Object[] objs = this.getTaskResults(TkPreGenObjs.taskId) ; -// DbSv sv = (DbSv)objs[0] ; -// PrController controller = (PrController)objs[1] ; -// this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dV1_0_1.dataCdC0Vo.rtuDt, dV1_0_1, dV1_0_1.dataCdC0Vo.alarmVo, dV1_0_1.dataCdC0Vo.stateVo) ; -// this.saveHistory(sv, controller, d.getRtuAddr(), dV1_0_1.dataCdC0Vo.rtuDt, dV1_0_1, dV1_0_1.dataCdC0Vo.alarmVo, dV1_0_1.dataCdC0Vo.stateVo) ; -// } -// } - }catch (Exception e){ + if(dV1_0_1 != null && dV1_0_1.subData != null){ + //dV1_0_1.dataCd81Vo銆� dV1_0_1.dataCd84Vo 涓� dV1_0_1.dataCdC0Vo 涓嶄細鍚屾椂鏈夊�� + Object cdObj = dV1_0_1.subData ; + try { + if (cdObj instanceof DataCd81Vo) { + DataCd81Vo dataCd81Vo = (DataCd81Vo)cdObj ; + if (dataCd81Vo.alarmVo != null || dataCd81Vo.stateVo != null) { + Object[] objs = this.getTaskResults(TkPreGenObjs.taskId); + DbSv sv = (DbSv) objs[0]; + PrController controller = (PrController) objs[1]; + this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dataCd81Vo.rtuDt, dV1_0_1, dataCd81Vo.alarmVo, dataCd81Vo.stateVo); + this.saveHistory(sv, controller, d.getRtuAddr(), dataCd81Vo.rtuDt, dV1_0_1, dataCd81Vo.alarmVo, dataCd81Vo.stateVo); + } + } else if (cdObj instanceof DataCd84Vo) { + DataCd84Vo dataCd84Vo = (DataCd84Vo)cdObj ; + if (dataCd84Vo.alarmVo != null || dataCd84Vo.stateVo != null) { + Object[] objs = this.getTaskResults(TkPreGenObjs.taskId); + DbSv sv = (DbSv) objs[0]; + PrController controller = (PrController) objs[1]; + this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dataCd84Vo.rtuDt, dV1_0_1, dataCd84Vo.alarmVo, dataCd84Vo.stateVo); + this.saveHistory(sv, controller, d.getRtuAddr(), dataCd84Vo.rtuDt, dV1_0_1, dataCd84Vo.alarmVo, dataCd84Vo.stateVo); + } + } else if (cdObj instanceof DataCdC0Vo) { + DataCdC0Vo dataCdC0Vo = (DataCdC0Vo)cdObj ; + if (dataCdC0Vo.alarmVo != null || dataCdC0Vo.stateVo != null) { + Object[] objs = this.getTaskResults(TkPreGenObjs.taskId); + DbSv sv = (DbSv) objs[0]; + PrController controller = (PrController) objs[1]; + this.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dataCdC0Vo.rtuDt, dV1_0_1, dataCdC0Vo.alarmVo, dataCdC0Vo.stateVo); + this.saveHistory(sv, controller, d.getRtuAddr(), dataCdC0Vo.rtuDt, dV1_0_1, dataCdC0Vo.alarmVo, dataCdC0Vo.stateVo); + } + } + } catch (Exception e) { log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e); } } @@ -72,19 +82,36 @@ * @param stateVo 鐘舵�佸璞� */ private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, String rtuDt, DataV1_0_1 dV1_0_1, DataAlarmVo alarmVo, DataStateVo stateVo) 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); -// } + 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), + stateVo==null?null:stateVo.working,//鐘舵��-闃�闂�/娉碉紙1鎵撳紑銆�0鍏抽棴锛� + (byte)0,//鍓╀綑姘撮噺鎶ヨ (1锛氬皬浜庢姤璀︿笂闄愭姤璀� 0锛氭甯�) + (byte)0,//鍓╀綑姘撮噺涓�0鍏虫车/闃� (1锛氬墿浣欐按閲忎负0鍏虫车 0锛氭甯�) + (byte)0,//骞寸敤姘撮噺澶т簬闄愬埗姘撮噺鎶ヨ(1锛氭姤璀� 0锛氭甯�) + alarmVo==null?null:alarmVo.meter,// 娴侀噺璁℃晠闅�(1锛氭姤璀︼紝0锛氭甯�) + alarmVo==null?null:alarmVo.loss,// 婕忔崯(鍋锋按)鎶ヨ(1锛氭姤璀︼紝 0锛氭甯�) + (byte)0,//娴侀噺璁℃崯鍧�(姝e父閫氳浣嗙灛鏃朵负0)鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鐢佃〃鏁呴殰鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鍓╀綑閲戦涓�0(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鎺у埗鍣ㄥ唴闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鎺у埗鍣ㄥ闂ㄦ墦寮�鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//浜ゆ祦缂洪」鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//浜ゆ祦杩囨祦鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//涓夌浉鐢垫瑺鍘嬫姤璀�(1锛氭姤璀︼紝0锛氭甯�) + stateVo==null?null:stateVo.icCard,//IC鍗$姸鎬�(1銆佹湁鏁堬紝0锛氭棤鏁�) ; + alarmVo==null?null:alarmVo.batteryVolt,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�) + alarmVo==null?null:alarmVo.valve//闃�闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�) + ); + sv.saveRmAlarmStateLast(po) ; + }else{ + po = this.update(controller, po, rtuDt, dV1_0_1, alarmVo, stateVo) ; + this.updateVirCardNoUseState(sv, controller, stateVo) ; + sv.updateRmAlarmStateLast(po); + } } /** @@ -97,43 +124,79 @@ * @param stateVo 鐘舵�佸璞� */ private void saveHistory(DbSv sv, PrController controller, String rtuAddr, String rtuDt, DataV1_0_1 dV1_0_1, DataAlarmVo alarmVo, DataStateVo stateVo) 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) ; + 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), + stateVo==null?null:stateVo.working,//鐘舵��-闃�闂�/娉碉紙1鎵撳紑銆�0鍏抽棴锛� + (byte)0,//鍓╀綑姘撮噺鎶ヨ (1锛氬皬浜庢姤璀︿笂闄愭姤璀� 0锛氭甯�) + (byte)0,//鍓╀綑姘撮噺涓�0鍏虫车/闃� (1锛氬墿浣欐按閲忎负0鍏虫车 0锛氭甯�) + (byte)0,//骞寸敤姘撮噺澶т簬闄愬埗姘撮噺鎶ヨ(1锛氭姤璀� 0锛氭甯�) + alarmVo==null?null:alarmVo.meter,// 娴侀噺璁℃晠闅�(1锛氭姤璀︼紝0锛氭甯�) + alarmVo==null?null:alarmVo.loss,// 婕忔崯(鍋锋按)鎶ヨ(1锛氭姤璀︼紝 0锛氭甯�) + (byte)0,//娴侀噺璁℃崯鍧�(姝e父閫氳浣嗙灛鏃朵负0)鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鐢佃〃鏁呴殰鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鍓╀綑閲戦涓�0(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鎺у埗鍣ㄥ唴闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//鎺у埗鍣ㄥ闂ㄦ墦寮�鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//浜ゆ祦缂洪」鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//浜ゆ祦杩囨祦鎶ヨ(1锛氭姤璀︼紝0锛氭甯�) + (byte)0,//涓夌浉鐢垫瑺鍘嬫姤璀�(1锛氭姤璀︼紝0锛氭甯�) + stateVo==null?null:stateVo.icCard,//IC鍗$姸鎬�(1銆佹湁鏁堬紝0锛氭棤鏁�) ; + alarmVo==null?null:alarmVo.batteryVolt,//鐢垫睜鐢靛帇(1锛氭姤璀︼紝0锛氭甯�) + alarmVo==null?null:alarmVo.valve//闃�闂ㄦ姤璀�(1锛氭姤璀︼紝0锛氭甯�) + ); + sv.saveRmAlarmStateHistory(po) ; } private RmAlarmStateLast update(PrController controller, RmAlarmStateLast po, String rtuDt, DataV1_0_1 dV1_0_1, DataAlarmVo alarmVo, DataStateVo stateVo) 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 ; -// } + 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.alarmBatteryVolt = alarmVo.batteryVolt ; + po.alarmLoss = alarmVo.loss ; + po.alarmWaterMeterBreak = alarmVo.meter ; + po.alarmValve = alarmVo.valve ; + }/*else{ + po.alarmBatteryVolt = null ; + po.alarmLoss = null ; + po.alarmWaterMeterBreak = null ; + po.alarmValve = null ; + }*/ + if(stateVo != null){ + po.stateIcEnable = stateVo.icCard ; + po.valveState = stateVo.working ; + //po.valvestate = stateVo.valve ; + }/*else{ + po.stateIcEnable = null ; + po.valveState = null ; + //po.valvestate = null ; + }*/ return po ; } + + + /** + * 铏氭嫙鍗″湪鍙栨按涓殑鍗犵敤鐘舵�佹敼涓洪潪搴旂敤鐘舵�� + */ + private void updateVirCardNoUseState(DbSv sv, + PrController controller, + DataStateVo stateVo){ + if(stateVo != null){ + if(stateVo.working != null && stateVo.working.byteValue() == 0){ + //闃�闂ㄥ叧闂姸鎬� + if(controller != null && controller.getIntakeId() != null){ + //铏氭嫙鍗″湪鍙栨按涓殑鍗犵敤鐘舵�佹敼涓洪潪搴旂敤鐘舵�� + sv.updateVirCardNoUseState(controller.getIntakeId()); + } + } + } + + } + } -- Gitblit v1.8.0