From 6be968854d7a134cf31b8af7b8ffb219da5cee55 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期五, 05 七月 2024 16:36:40 +0800 Subject: [PATCH] p206V1.0.0协议与硬件联调,并修改完善代码。 --- pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java | 194 +++++++++++++++-------------------------------- 1 files changed, 63 insertions(+), 131 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java index 9fdeeeb..5d98c04 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealOpenValveReport.java @@ -1,14 +1,15 @@ package com.dy.rtuMw.server.rtuData.p206V1_0_0; -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.DataCd83OpenVo; import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1; +import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd83OpenVo; +import com.dy.common.mw.protocol.p206V1_0_0.upVos.DataCd84Vo; import com.dy.common.util.DateTime; import com.dy.pipIrrGlobal.pojoPr.PrController; import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveHistory; import com.dy.pipIrrGlobal.pojoRm.RmOpenCloseValveLast; +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; @@ -33,19 +34,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.dataCd83OpenVo != 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.dataCd83OpenVo) ; -// }catch (Exception e){ -// log.error("淇濆瓨鎺у埗鍣ㄥ紑闃�涓婃姤鏃跺彂鐢熷紓甯�", e); -// } -// } + DataV1_0_1 dV1_0_1 = (DataV1_0_1) d.getSubData(); + Object cdObj = dV1_0_1.subData; + if (cdObj != null && cdObj instanceof DataCd83OpenVo) { + 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, (DataCd83OpenVo)cdObj) ; + }catch (Exception e){ + log.error("淇濆瓨鎺у埗鍣ㄥ紑闃�涓婃姤鏃跺彂鐢熷紓甯�", e); + } } } /** @@ -57,69 +56,56 @@ * @param dataCd83OpenVo 寮�闃�涓婃姤鏁版嵁瀵硅薄 */ private void doDeal(DbSv sv, PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo) throws Exception { - RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(rtuAddr) ; + RmOpenCloseValveLast poLast = sv.getRmOpenCloseValveLast(controller.getIntakeId()) ; if(poLast == null){ //鏁版嵁搴撲腑涓嶅瓨鍦ㄨ鎺у埗鍣ㄧ殑寮�鍏抽榾鏁版嵁 - //棣栧厛鐢熸垚鏈�鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛� + //棣栧厛鐢熸垚寮�鍏抽榾鐨勬渶鏂版暟鎹強鍘嗗彶鏁版嵁锛屽苟鍏堜繚瀛� poLast = this.newRmOpenCloseValveLast(controller, rtuAddr, dV1_0_1, dataCd83OpenVo); this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); sv.saveRmOpenCloseValveLast(poLast); }else{ //鏁版嵁搴撲腑瀛樺湪璇ユ帶鍒跺櫒鐨勫紑鍏抽榾鏁版嵁 - if(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt).equals(poLast.openDt)){ - //鏃堕棿涓�鑷达紝閲嶅涓婃姤鏁版嵁锛屼笉杩涜浠讳綍澶勭悊 - }else{ - if(poLast.opType != null){ - //鍘熻褰曞瓨鍦ㄥ紑闃�鏁版嵁锛岄鍏堣繘琛屾椂闂村姣� - if(poLast.openDt != null && poLast.openDt.after(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ - //琛ユ姤鐨勮涔呬箣鍓嶇殑寮�闃�鏁版嵁锛屼笉杩涜澶勭悊 - }else if(poLast.openDt != null && poLast.openDt.equals(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ - //閲嶅涓婃姤鐨勫紑闃�鏁版嵁锛屼笉杩涜澶勭悊 - }else{ - //褰撳墠寮�闃�涓婃姤鏄柊鐨勪竴娆″紑闃�锛屼笉绠″師璁板綍鏄惁瀛樺湪鍏抽榾鏁版嵁锛屼竴寰嬫竻绌哄叧闃�鏁版嵁 - this.updateOpenValve(controller, poLast, null, dV1_0_1, dataCd83OpenVo, true) ; - //鐢熸垚骞朵繚瀛樻柊鐨勫紑闃�涓婃姤鍘嗗彶鏁版嵁璁板綍 - this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); - } - }else if(poLast.clType != null){ - //鍘熻褰曚笉瀛樺湪寮�闃�鏁版嵁锛屼絾瀛樺湪鍏抽榾鏁版嵁锛岄鍏堣繘琛屾椂闂存瘮瀵� - if(poLast.closeDt != null && poLast.closeDt.after(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ - //褰撳墠涓婃姤鏄ˉ鎶ョ殑寮�闃�鏁版嵁 - RmOpenCloseValveHistory poHistory = null ; - if(poLast.lastHistoryId != null){ - poHistory = sv.getRmOpenCloseValveHistory(poLast.lastHistoryId) ; - } - this.updateOpenValve(controller, poLast, poHistory, dV1_0_1, dataCd83OpenVo, false) ; - if(poHistory != null){ - sv.updateRmOpenCloseValveHistory(poHistory); - } - }else if(poLast.closeDt != null && poLast.closeDt.before(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ - //褰撳墠涓婃姤鏄柊鐨勫紑闃�鏁版嵁锛屾妸鏈�鏂版暟鎹腑鐨勫叧闃�鍐呭娓呯┖ - this.updateOpenValve(controller, poLast, null, dV1_0_1, dataCd83OpenVo, true) ; - //鐢熸垚骞朵繚瀛樻柊鐨勫紑闃�涓婃姤鍘嗗彶鏁版嵁璁板綍 - this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); - }else { - //褰撳墠涓婃姤鐨勫紑闃�鏁版嵁涓庡師鏉ョ殑鍏抽榾鏁版嵁鍚屼竴鏃堕棿锛岃繖绉嶆儏鍐靛簲璇ヤ笉瀛樺湪锛屼絾涔熷鐞� - RmOpenCloseValveHistory poHistory = null ; - if(poLast.lastHistoryId != null){ - poHistory = sv.getRmOpenCloseValveHistory(poLast.lastHistoryId) ; - } - this.updateOpenValve(controller, poLast, poHistory, dV1_0_1, dataCd83OpenVo, false) ; - if(poHistory != null){ - sv.updateRmOpenCloseValveHistory(poHistory); - } - } + if(poLast.opType != null){ + //鍘熻褰曞瓨鍦ㄥ紑闃�鏁版嵁锛岄鍏堣繘琛屾椂闂村姣� + if(poLast.openDt != null && poLast.openDt.after(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ + //琛ユ姤鐨勮涔呬箣鍓嶇殑寮�闃�鏁版嵁锛屼笉杩涜澶勭悊 + }else if(poLast.openDt != null && poLast.openDt.equals(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ + //閲嶅涓婃姤鐨勫紑闃�鏁版嵁锛屼笉杩涜澶勭悊 }else{ - //if(po.clType == null) - //鍘熻褰曚笉瀛樺湪寮�闃�鏁版嵁涔熶笉瀛樺湪鍏抽榾鏁版嵁锛岃繖绉嶆儏鍐典笉瀛樺湪锛屼絾涓哄畨鍏ㄤ篃杩涜澶勭悊 + //褰撳墠寮�闃�涓婃姤鏄柊鐨勪竴娆″紑闃�锛屼笉绠″師璁板綍鏄惁瀛樺湪鍏抽榾鏁版嵁锛屼竴寰嬫竻绌哄叧闃�鏁版嵁 this.updateOpenValve(controller, poLast, null, dV1_0_1, dataCd83OpenVo, true) ; //鐢熸垚骞朵繚瀛樻柊鐨勫紑闃�涓婃姤鍘嗗彶鏁版嵁璁板綍 this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); } - - sv.updateRmOpenCloseValveLast(poLast); + }else if(poLast.clType != null){ + //鍘熻褰曚笉瀛樺湪寮�闃�鏁版嵁锛屼絾瀛樺湪鍏抽榾鏁版嵁锛岄鍏堣繘琛屾椂闂存瘮瀵� + if(poLast.clOpenDt != null && poLast.clOpenDt.after(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ + //琛ユ姤鐨勮涔呬箣鍓嶇殑寮�闃�鎶ユ暟鎹紝涓嶈繘琛屽鐞� + }else if(poLast.clOpenDt != null && poLast.clOpenDt.before(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt))){ + //褰撳墠涓婃姤鏄柊鐨勫紑闃�鏁版嵁锛屾妸鏈�鏂�(last)鏁版嵁涓殑鍏抽榾鍐呭娓呯┖ + this.updateOpenValve(controller, poLast, null, dV1_0_1, dataCd83OpenVo, true) ; + //鐢熸垚骞朵繚瀛樻柊鐨勫紑闃�涓婃姤鍘嗗彶鏁版嵁璁板綍 + this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); + }else { + //褰撳墠涓婃姤鐨勫紑闃�鏁版嵁涓庡師鏉ョ殑鍏抽榾鏁版嵁鍚屼竴鏃堕棿锛岃繖绉嶆儏鍐靛簲璇ヤ笉瀛樺湪锛屼絾涔熷鐞� + RmOpenCloseValveHistory poHistory = null ; + if(poLast.lastHistoryId != null){ + poHistory = sv.getRmOpenCloseValveHistory(poLast.lastHistoryId) ; + } + this.updateOpenValve(controller, poLast, poHistory, dV1_0_1, dataCd83OpenVo, false) ; + if(poHistory != null){ + sv.updateRmOpenCloseValveHistory(poHistory); + } + } + }else{ + //if(poLast.opType == null && po.clType == null) + //鍘熻褰曚笉瀛樺湪寮�闃�鏁版嵁涔熶笉瀛樺湪鍏抽榾鏁版嵁锛岃繖绉嶆儏鍐典笉瀛樺湪锛屼絾涓哄畨鍏ㄤ篃杩涜澶勭悊 + this.updateOpenValve(controller, poLast, null, dV1_0_1, dataCd83OpenVo, true) ; + //鐢熸垚骞朵繚瀛樻柊鐨勫紑闃�涓婃姤鍘嗗彶鏁版嵁璁板綍 + this.newHistoryDataDeal(sv, controller, rtuAddr, dV1_0_1, dataCd83OpenVo, poLast); } + sv.updateRmOpenCloseValveLast(poLast); } } @@ -150,16 +136,11 @@ * @throws Exception */ private RmOpenCloseValveLast newRmOpenCloseValveLast(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo)throws Exception { - RmOpenCloseValveLast po = new RmOpenCloseValveLast(null, null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(), - rtuAddr, - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), - dataCd83OpenVo.type, - dataCd83OpenVo.totalAmount, - dataCd83OpenVo.icCardNo, - dataCd83OpenVo.icCardAddr, - dataCd83OpenVo.remainMoney, - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt), - null, null, null, null, null, null, null, null, null, null, null) ; + RmOpenCloseValveLast po = new RmOpenCloseValveLast() ; + po.controllerId = controller==null?null:controller.getId() ; + po.intakeId = controller==null?null:controller.getIntakeId() ; + po.rtuAddr = rtuAddr ; + po.valueFrom(dV1_0_1, dataCd83OpenVo); return po ; } @@ -174,16 +155,11 @@ * @throws Exception */ private RmOpenCloseValveHistory newRmOpenCloseValveHistory(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo)throws Exception { - RmOpenCloseValveHistory po = new RmOpenCloseValveHistory(null, controller==null?null:controller.getId(), controller==null?null:controller.getIntakeId(), - rtuAddr, - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt), - dataCd83OpenVo.type, - dataCd83OpenVo.totalAmount, - dataCd83OpenVo.icCardNo, - dataCd83OpenVo.icCardAddr, - dataCd83OpenVo.remainMoney, - DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt), - null, null, null, null, null, null, null, null, null, null, null) ; + RmOpenCloseValveHistory po = new RmOpenCloseValveHistory() ; + po.controllerId = controller==null?null:controller.getId() ; + po.intakeId = controller==null?null:controller.getIntakeId() ; + po.rtuAddr = rtuAddr ; + po.valueFrom(dV1_0_1, dataCd83OpenVo); return po ; } @@ -201,56 +177,12 @@ private void updateOpenValve(PrController controller, RmOpenCloseValveLast poLast, RmOpenCloseValveHistory poHistory, DataV1_0_1 dV1_0_1, DataCd83OpenVo dataCd83OpenVo, boolean clearCloseValve) throws Exception { poLast.controllerId = controller==null?null:controller.getId(); poLast.intakeId = controller==null?null:controller.getIntakeId(); - - poLast.opDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt); - poLast.opType = dataCd83OpenVo.type ; - poLast.opTotalAmount = dataCd83OpenVo.totalAmount ; - poLast.opIcCardNo = dataCd83OpenVo.icCardNo ; - poLast.opIcCardAddr = dataCd83OpenVo.icCardAddr ; - poLast.opRemainMoney = dataCd83OpenVo.remainMoney ; - poLast.openDt = DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dataCd83OpenVo.openDt) ; + poLast.updateFrom(dV1_0_1, dataCd83OpenVo, clearCloseValve); if(poHistory != null){ poHistory.controllerId = controller==null?null:controller.getId(); poHistory.intakeId = controller==null?null:controller.getIntakeId(); - - poHistory.opDt = poLast.opDt; - poHistory.opType = dataCd83OpenVo.type ; - poHistory.opTotalAmount = dataCd83OpenVo.totalAmount ; - poHistory.opIcCardNo = dataCd83OpenVo.icCardNo ; - poHistory.opIcCardAddr = dataCd83OpenVo.icCardAddr ; - poHistory.opRemainMoney = dataCd83OpenVo.remainMoney ; - poHistory.openDt = poLast.openDt ; + poHistory.updateFrom(dV1_0_1, dataCd83OpenVo, clearCloseValve); } - - if(clearCloseValve){ - poLast.clDt = null ; - poLast.clType = null ; - poLast.clTotalAmount = null ; - poLast.clIcCardNo = null ; - poLast.clIcCardAddr = null ; - poLast.clRemainMoney = null ; - poLast.clThisAmount = null ; - poLast.clThisMoney = null ; - poLast.clThisTime = null ; - poLast.clOpenDt = null ; - poLast.closeDt = null ; - - if(poHistory != null) { - poHistory.clDt = null; - poHistory.clType = null; - poHistory.clTotalAmount = null; - poHistory.clIcCardNo = null; - poHistory.clIcCardAddr = null; - poHistory.clRemainMoney = null; - poHistory.clThisAmount = null; - poHistory.clThisMoney = null; - poHistory.clThisTime = null; - poHistory.clOpenDt = null; - poHistory.closeDt = null; - } - - } - } } -- Gitblit v1.8.0