From 4342b12d28b15e61bbed4d4d5e64a6a2bacae952 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期二, 27 二月 2024 12:56:11 +0800 Subject: [PATCH] 1、完善代码; 2、实现开闭上报处理 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java | 53 ++++++++++++++++++++++++++++------------------------- 1 files changed, 28 insertions(+), 25 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java index 4f2a5f1..80f96e6 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkDealAlarmStatus.java @@ -6,13 +6,12 @@ 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; - -import java.util.Date; /** * @Author liurunyu @@ -39,22 +38,26 @@ DataV1_0_1 dV1_0_1 = (DataV1_0_1)subD ; if(dV1_0_1 != null){ //dV1_0_1.dataCd81Vo 涓� dV1_0_1.dataCdC0Vo 涓嶄細鍚屾椂鏈夊�� - 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.alarmVo, dV1_0_1.dataCd81Vo.stateVo) ; - this.saveHistory(sv, controller, d.getRtuAddr(), dV1_0_1.dataCd81Vo.alarmVo, dV1_0_1.dataCd81Vo.stateVo) ; + 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, dV1_0_1.dataCd81Vo.alarmVo, dV1_0_1.dataCd81Vo.stateVo) ; + this.saveHistory(sv, controller, d.getRtuAddr(), 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, dV1_0_1.dataCdC0Vo.alarmVo, dV1_0_1.dataCdC0Vo.stateVo) ; + this.saveHistory(sv, controller, d.getRtuAddr(), dV1_0_1, dV1_0_1.dataCdC0Vo.alarmVo, dV1_0_1.dataCdC0Vo.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.alarmVo, dV1_0_1.dataCdC0Vo.stateVo) ; - this.saveHistory(sv, controller, d.getRtuAddr(), dV1_0_1.dataCdC0Vo.alarmVo, dV1_0_1.dataCdC0Vo.stateVo) ; - } + }catch (Exception e){ + log.error("淇濆瓨鎺у埗鍣ㄦ姤璀﹀拰鐘舵�佹暟鎹椂鍙戠敓寮傚父", e); } } } @@ -67,17 +70,17 @@ * @param alarmVo 鎶ヨ瀵硅薄 * @param stateVo 鐘舵�佸璞� */ - private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, DataAlarmVo alarmVo, DataStateVo stateVo){ - RmAlarmStateLast po = sv.getRmLastAlarmState(rtuAddr) ; + private void saveOrUpdateLast(DbSv sv, PrController controller, String rtuAddr, 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, - new Date(), + DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), 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, alarmVo, stateVo) ; + po = this.update(controller, po, dV1_0_1, alarmVo, stateVo) ; sv.saveRmAlarmStateLast(po); } } @@ -90,20 +93,20 @@ * @param alarmVo 鎶ヨ瀵硅薄 * @param stateVo 鐘舵�佸璞� */ - private void saveHistory(DbSv sv, PrController controller, String rtuAddr, DataAlarmVo alarmVo, DataStateVo stateVo){ + private void saveHistory(DbSv sv, PrController controller, String rtuAddr, 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, - new Date(), + DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), 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) ; } - private RmAlarmStateLast update(PrController controller, RmAlarmStateLast po, DataAlarmVo alarmVo, DataStateVo stateVo){ + private RmAlarmStateLast update(PrController controller, RmAlarmStateLast po, DataV1_0_1 dV1_0_1, DataAlarmVo alarmVo, DataStateVo stateVo) throws Exception { po.controllerid = controller==null?null:controller.getId() ; - po.dt = new Date() ; + po.dt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt) ; if(alarmVo != null){ po.bateryvolt = alarmVo.batteryVolt ; po.loss = alarmVo.loss ; -- Gitblit v1.8.0