From accb89965840fbb2c03fe7577d0421844c9dcff5 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期一, 21 十月 2024 16:45:35 +0800 Subject: [PATCH] 1、通信中间件增加命令应答对象接口;2、修改通信中间件对命令应答处理逻辑。 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java | 88 ++++++++++++++++++++++++-------------------- 1 files changed, 48 insertions(+), 40 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java index 9507f48..a34dc2e 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java @@ -1,22 +1,24 @@ package com.dy.rtuMw.server.rtuData.p206V1_0_0; +import com.dy.pipIrrGlobal.pojoRm.RmLossDay; +import com.dy.pipIrrGlobal.pojoRm.RmLossDayLast; 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.DataCdC0Vo; +import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCdC0Vo; 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.RmLossHistory; -import com.dy.pipIrrGlobal.pojoRm.RmLossLast; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; + +import java.util.Date; /** * @Author liurunyu * @Date 2024/2/28 16:31 * @LastEditTime 2024/2/28 16:31 - * @Description 鎺у埗鍣ㄦ紡鎹熺粺璁� + * @Description 鍙栨按鍙f紡鎹熺粺璁� */ public class TkDealLoss extends TaskSurpport { @@ -33,19 +35,17 @@ @Override public void execute(Object data) { Data d = (Data) data; - 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.dataCdC0Vo != null) { -// Object[] objs = this.getTaskResults(TkPreGenObjs.taskId); -// DbSv sv = (DbSv) objs[0]; -// PrController controller = (PrController) objs[1]; -// try { -// this.doDeal(sv, controller, d.getRtuAddr(), dV1_0_1, dV1_0_1.dataCdC0Vo); -// } catch (Exception e) { -// log.error("淇濆瓨鎺у埗鍣ㄥ紑闃�涓婃姤鏃跺彂鐢熷紓甯�", e); -// } -// } + DataV1_0_1 dV1_0_1 = (DataV1_0_1) d.getSubData();//鍓嶉潰浠诲姟宸茬粡鍒ゆ柇涓嶄负null + Object cdObj = dV1_0_1.subData; + if (cdObj != null && cdObj instanceof DataCdC0Vo){ + Object[] objs = this.getTaskResults(TkPreGenObjs.taskId) ; + DbSv sv = (DbSv)objs[0] ; + PrController controller = (PrController)objs[1] ; + try{ + this.doDeal(sv, controller, d.getRtuAddr(), dV1_0_1, (DataCdC0Vo)cdObj); + }catch (Exception e){ + log.error("淇濆瓨鍙栨按鍙f紡鎹熺粺璁℃暟鎹椂鍙戠敓寮傚父", e); + } } } @@ -58,9 +58,18 @@ * @param dataCdC0Vo 寮�闃�涓婃姤鏁版嵁瀵硅薄 */ private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo) throws Exception { - RmLossLast poLast = sv.getRmLossLast(rtuAddr); + Date operateDt = controller.getOperateDt() ;//鍙栨按涓笂缁戝畾姝ゆ帶鍒跺櫒鐨勬棩鏈熶笌鏃堕棿 + if(operateDt != null){ + String operateDtStr = DateTime.yyyy_MM_dd(operateDt) ; + if(operateDtStr.equals(DateTime.yyyy_MM_dd())){ + //褰撳ぉ鍙戠幇锛堝苟缁戝畾锛夋帶鍒跺櫒锛屾帶鍒跺櫒璁$畻鐨勬紡鎹熼噺涓�瀹氫笉姝g‘锛屽己鍒惰缃垚0 + dataCdC0Vo.lossAmount = 0.0 ; + } + } + + RmLossDayLast poLast = sv.getRmLossLast(controller.getIntakeId()); if (poLast == null) { - //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鎺у埗鍣ㄧ殑婕忔崯鏁版嵁 + //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鍙栨按鍙g殑婕忔崯鏁版嵁 //棣栧厛鐢熸垚鏈�鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛� poLast = this.newRmLossLast(controller, rtuAddr, dV1_0_1, dataCdC0Vo); this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCdC0Vo, poLast); @@ -69,7 +78,7 @@ if(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCdC0Vo.rtuDt).equals(poLast.dtRtu)){ //鏃堕棿涓�鑷达紝閲嶅涓婃姤鏁版嵁锛屼笉杩涜浠讳綍澶勭悊 }else{ - RmLossHistory poHistory = null ; + RmLossDay poHistory = null ; if(poLast.lastHistoryId != null){ poHistory = sv.getRmLossHistory(poLast.lastHistoryId) ; } @@ -91,11 +100,12 @@ //鏂扮殑鏃ユ湡 poLast = this.newRmLossLast(controller, rtuAddr, dV1_0_1, dataCdC0Vo); this.newAndSaveHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCdC0Vo, poLast); - sv.saveRmLossLast(poLast); + sv.updateRmLossLast(poLast); }else{ - //杩欑鎯呭喌涓嶅瓨鍦紙鏀跺埌鏁版嵁鐨勬棩鏈熸棭浜庢湰鍦拌褰曚腑鐨勬棩鏈燂紝姝ょ鎯呭喌涓嶄細瀛樺湪锛� + //杩欑鎯呭喌涓嶅瓨鍦紙RTU鏃堕挓鏃╀簬鏈湴璁板綍涓殑RTU鏃堕挓锛圧TU绌胯秺鍥炶繃鍘讳簡锛屽彲鑳芥椂閽熼噸缃簡锛夛紝姝ょ鎯呭喌涓嶅鐞嗭級 } } + sv.updateRmLossLast(poLast); } } @@ -104,17 +114,16 @@ * @param controller * @param rtuAddr * @param dV1_0_1 - * @param dataCdC0Vo + * @param cdData * @return * @throws Exception */ - private RmLossLast newRmLossLast(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo)throws Exception { - RmLossLast po = new RmLossLast(null, null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(), - rtuAddr, - DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt), - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCdC0Vo.rtuDt), - dataCdC0Vo.lossAmount) ; + private RmLossDayLast newRmLossLast(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo cdData)throws Exception { + RmLossDayLast po = new RmLossDayLast() ; + po.controllerId = controller==null?null:controller.getId(); + po.intakeId = controller==null?null:controller.getIntakeId(); + po.rtuAddr = rtuAddr; + po.valueFrom(dV1_0_1, cdData) ; return po ; } @@ -123,17 +132,16 @@ * @param controller * @param rtuAddr * @param dV1_0_1 - * @param dataCdC0Vo + * @param cdData * @return * @throws Exception */ - private RmLossHistory newRmLossHistory(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo)throws Exception { - RmLossHistory po = new RmLossHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(), - rtuAddr, - DateTime.dateFrom_yyyy_MM_dd1(dV1_0_1.dt), - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCdC0Vo.rtuDt), - dataCdC0Vo.lossAmount) ; + private RmLossDay newRmLossHistory(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo cdData)throws Exception { + RmLossDay po = new RmLossDay() ; + po.controllerId = controller==null?null:controller.getId(); + po.intakeId = controller==null?null:controller.getIntakeId(); + po.rtuAddr = rtuAddr; + po.valueFrom(dV1_0_1, cdData); return po ; } @@ -149,8 +157,8 @@ * @throws Exception * @return RmLossHistory */ - private RmLossHistory newAndSaveHistoryDataDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo, RmLossLast poLast)throws Exception { - RmLossHistory poHistory = this.newRmLossHistory(controller, rtuAddr, dV1_0_1, dataCdC0Vo) ; + private RmLossDay newAndSaveHistoryDataDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo dataCdC0Vo, RmLossDayLast poLast)throws Exception { + RmLossDay poHistory = this.newRmLossHistory(controller, rtuAddr, dV1_0_1, dataCdC0Vo) ; sv.saveRmLossHistory(poHistory); //鐢辨渶鏂版暟鎹寔鏈夊巻鍙叉暟鎹腑鐨勬渶鏂拌褰旾D锛屼互鏂逛究蹇�熸煡璇� poLast.lastHistoryId = poHistory == null ? null: poHistory.id ; -- Gitblit v1.8.0