From 1fe74a6aba7cc02e6a5c00a227ff815639f825de Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期一, 15 七月 2024 20:52:45 +0800
Subject: [PATCH] 1、实现RTU模拟器,并实现心跳上报、开阀上报、关阀上报; 2、基于RTU模拟器的开关阀上报,设计通信中间件上行数据处理任务的bug;
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkDealLoss.java | 67 ++++++++++++++++-----------------
1 files changed, 32 insertions(+), 35 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 695beb2..225fc0c 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,5 +1,7 @@
package com.dy.rtuMw.server.rtuData.p206V1_0_0;
+import com.dy.pipIrrGlobal.pojoRm.RmLossHistory;
+import com.dy.pipIrrGlobal.pojoRm.RmLossLast;
import com.dy.rtuMw.server.rtuData.TaskSurpport;
import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
import com.dy.common.mw.protocol.Data;
@@ -7,8 +9,6 @@
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;
@@ -16,7 +16,7 @@
* @Author liurunyu
* @Date 2024/2/28 16:31
* @LastEditTime 2024/2/28 16:31
- * @Description 鎺у埗鍣ㄦ紡鎹熺粺璁�
+ * @Description 鍙栨按鍙f紡鎹熺粺璁�
*/
public class TkDealLoss extends TaskSurpport {
@@ -33,18 +33,16 @@
@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.subData != 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, (DataCdC0Vo)dV1_0_1.subData);
- } 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 +56,9 @@
* @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);
+ RmLossLast 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);
@@ -91,11 +89,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 +103,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 RmLossLast newRmLossLast(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo cdData)throws Exception {
+ RmLossLast po = new RmLossLast() ;
+ 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 +121,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 RmLossHistory newRmLossHistory(PrController controller, String rtuAddr, DataV1_0_1 dV1_0_1, DataCdC0Vo cdData)throws Exception {
+ RmLossHistory po = new RmLossHistory() ;
+ 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 ;
}
--
Gitblit v1.8.0