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/TkPreGenObjs.java | 89 +++++++++++++------------------------------- 1 files changed, 27 insertions(+), 62 deletions(-) diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java index 66048c2..807efb2 100644 --- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java +++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-accept/src/main/java/com/dy/aceMw/server/rtuData/p206V1_0_0/TkPreGenObjs.java @@ -1,11 +1,19 @@ package com.dy.aceMw.server.rtuData.p206V1_0_0; import com.dy.aceMw.server.rtuData.TaskSurpport; -import com.dy.aceMw.server.rtuData.dbSv.RtuSv; +import com.dy.aceMw.server.rtuData.dbSv.DbSv; import com.dy.common.mw.protocol.Data; import com.dy.common.springUtil.SpringContextUtil; +import com.dy.common.util.DateTime; +import com.dy.pipIrrGlobal.pojoPr.PrController; +import com.dy.pipIrrGlobal.pojoPr.PrControllerTramp; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; + +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; public class TkPreGenObjs extends TaskSurpport { @@ -19,71 +27,28 @@ * @param data 闇�瑕佸鐞嗙殑鏁版嵁 */ @Override - public void execute(Object data) { + public void execute(Object data) throws ParseException { Data d = (Data)data ; - String rtuAddr = d.getRtuAddr() ; - log.info("RTU" + rtuAddr + "鏁版嵁鍒版锛岃繘琛屾暟鎹簱瀛樺偍娴嬭瘯"); - - RtuSv sv = (RtuSv)SpringContextUtil.getBean(RtuSv.class) ; - sv.save(d) ; - - //寰楀埌鏈湴RTU 鏁版嵁锛屼互澶囧悗闈㈣妭鐐瑰簲鐢� - /* - BuziInterface baseBusi = BuziGeter.getBaseBusi() ; - BuziInterface orgBusi = null ; - SyRtu nbRtu = null ; - SyRtuTramp rtuTramp = null ; - if(baseBusi != null){ - nbRtu = DbSyBuzi.getRtu(baseBusi, imei) ; - if(nbRtu != null){ - //鏁版嵁搴撲腑鏌ヨ鍒癗B浜у搧锛圧TU瀹炰綋锛� - if(nbRtu.orgTag != null && !nbRtu.orgTag.trim().equals("")){ - orgBusi = BuziGeter.getBusi(nbRtu.orgTag) ; - if(orgBusi == null){ - log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒版爣绛句负" + nbRtu.orgTag + "鐨勪緵姘存満鏋勬暟鎹簱涓氬姟Busi"); - }else{ - BaMeter meter = DbOrgBuzi.getMeterByImeiAndNo(orgBusi, imei, rtuAddr) ; - //鍙兘鏈煡璇㈠埌meter锛屽嵆浠嶆槸娴佹氮鑰匯TU锛屼絾浠嶈鍚庣画澶勭悊锛氾紙1锛夈�佷粛鑳借瘑鍒嚭娴佹氮鑰匯TU锛岋紙2锛夈�佷粛瑕佽褰曞叾涓婃姤鏁版嵁 - if(meter != null){ - String protocol = d.getProtocol() ; - if(protocol != null){ - protocol = protocol.trim(); - if(!protocol.equals("")){ - if(meter.protocol == null - || meter.protocol.trim().equals("") - || !meter.protocol.trim().equals(protocol)){ - //闇�瑕佹洿鏂板崗璁悕绉� - DbOrgBuzi.updateMeter4Protocol(orgBusi, meter.id, protocol); - } - } - } - } - this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, null, meter} ; - this.toNextTasks(data); - } - }else{ - //NB浜у搧锛圧TU瀹炰綋锛夋湭鍒嗛厤缁欏叿浣撶殑渚涙按鏈烘瀯 - //娴佹氮鑰匯TU - rtuTramp = DbSyBuzi.getSyRtuTramp(baseBusi, imei, rtuAddr) ; - if(rtuTramp == null){ - rtuTramp = new SyRtuTramp(imei, rtuAddr) ; - } - this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, rtuTramp, null} ; - this.toNextOneTask(data, TkDealRtuTramp.taskId); + String rtuAddr = d.getRtuAddr() ;//TkRtuData閲屽垽鏂簡rtuAddr涓虹┖ + DbSv sv = (DbSv)SpringContextUtil.getBean(DbSv.class) ; + if(sv != null){ + PrController controller = sv.getControllersByRtuAddrAndIntakeNotNull(rtuAddr) ; + PrControllerTramp controllerTramp = null ; + if(controller == null){ + //鏁版嵁搴撲腑鏈煡璇�(宸茬粡缁戝畾涓旀帶鍒跺櫒鍦板潃鐩哥)鍒版帶鍒跺櫒锛圧TU瀹炰綋锛� + //娴佹氮鑰呮帶鍒跺櫒 + controllerTramp = sv.getPrControllerTrampByRtuAddr(rtuAddr); + if(controllerTramp == null){ + controllerTramp = new PrControllerTramp(null, rtuAddr, d.getProtocol(), new Date()) ; + //this.taskResult = new Object[]{sv, null, rtuTramp} ; + //this.toNextOneTask(data, TkDealControllerTramp.taskId); } - }else{ - //鏁版嵁搴撲腑鏈煡璇㈠埌NB浜у搧锛圧TU瀹炰綋锛� - //娴佹氮鑰匯TU - rtuTramp = DbSyBuzi.getSyRtuTramp(baseBusi, imei, rtuAddr) ; - if(rtuTramp == null){ - rtuTramp = new SyRtuTramp(imei, rtuAddr) ; - } - this.taskResult = new Object[]{baseBusi, orgBusi, nbRtu, rtuTramp, null} ; - this.toNextOneTask(data, TkDealRtuTramp.taskId); } + //涓嶈鏄惁涓烘祦娴帶鍒跺櫒锛圧TU瀹炰綋锛夛紝閮借杩涜涓嬫宸ヤ綔锛岃褰曞叾涓婃姤鐨勪竴浜涙暟鎹紝褰撶粦瀹氭帶鍒跺櫒鍚庯紝鏁版嵁鑷姩鏈変簡褰掑睘 + this.taskResult = new Object[]{sv, controller, controllerTramp} ; + this.toNextTasks(data); }else{ - log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒癇aseBusi瀵硅薄"); + log.error("涓ラ噸閿欒锛屾湭鑳藉緱鍒癉bSv瀵硅薄"); } - */ } } -- Gitblit v1.8.0