From 017bfd52644c196a9a6d1fc8414a21a6320838b1 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期日, 02 六月 2024 20:26:27 +0800
Subject: [PATCH] 远程命令结果数据库保存实现
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java | 14 +++---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java | 14 +++++++
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkRtuDealCommandResponse.java | 55 +++++++++++++++++++++------
3 files changed, 64 insertions(+), 19 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
index ee77255..cfbc9e2 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V1_0_0/parse/global/GlParse.java
@@ -14,12 +14,12 @@
DataAlarmVo avo = new DataAlarmVo() ;
byte b = bs[index] ;
index++ ;
- avo.batteryVolt = (byte)(b & 0x2) ;
- avo.loss = (byte)(b & 0x8) ;
- avo.meter = (byte)(b & 0x20) ;
+ avo.batteryVolt = (byte)(b & 0x2 >> 1) ;
+ avo.loss = (byte)(b & 0x8 >> 3) ;
+ avo.meter = (byte)(b & 0x20 >> 5) ;
b = bs[index] ;
- avo.valve = (byte)(b & 0x20) ;
+ avo.valve = (byte)(b & 0x20 >> 5) ;
return avo ;
}
@@ -27,9 +27,9 @@
DataStateVo avo = new DataStateVo() ;
byte b = bs[index] ;
index++ ;
- avo.icCard = (byte)(b & 0x4) ;
- avo.working = (byte)(b & 0x8) ;
- avo.valve = (byte)(b & 0x20) ;
+ avo.icCard = (byte)(b & 0x4 >> 2) ;
+ avo.working = (byte)(b & 0x8 >> 3) ;
+ avo.valve = (byte)(b & 0x20 >> 5) ;
return avo ;
}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
index 362c70a..1fd18ed 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/dbSv/DbSv.java
@@ -45,6 +45,8 @@
private RmLossLastMapper rmLossLastMapperDao ;//鎺у埗鍣ㄦ紡鎹熸按閲忕粺璁℃渶鏂版暟鎹瓺AO
@Autowired
private RmLossHistoryMapper rmLossHistoryMapperDao ;//鎺у埗鍣ㄦ紡鎹熸按閲忕粺璁″巻鍙叉暟鎹瓺AO
+ @Autowired
+ private RmCommandHistoryMapper rmCommandHistoryDao ;//杩滅▼鍛戒护鏃ュ織鐩稿叧
//@Autowired
//@Lazy
@@ -377,5 +379,17 @@
return null ;
}
+ //////////////////////////////////////////////////////
+ //
+ // 鍛戒护鏃ュ織鐩稿叧
+ //
+ //////////////////////////////////////////////////////
+ public RmCommandHistory getCommandLog(String commandId){
+ return rmCommandHistoryDao.selectByPrimaryKey(Long.parseLong(commandId)) ;
+ }
+ public void updateCommandLog(RmCommandHistory po){
+ rmCommandHistoryDao.updateByPrimaryKeySelective(po) ;
+ }
+
}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkRtuDealCommandResponse.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkRtuDealCommandResponse.java
index 8d2a570..24d7ac2 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkRtuDealCommandResponse.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1_0_0/TkRtuDealCommandResponse.java
@@ -1,8 +1,14 @@
package com.dy.rtuMw.server.rtuData.p206V1_0_0;
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
+import com.dy.common.mw.protocol.p206V1_0_0.*;
+import com.dy.common.util.DateTime;
+import com.dy.pipIrrGlobal.pojoPr.PrController;
+import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory;
import com.dy.rtuMw.server.rtuData.TaskSurpport;
import com.dy.common.mw.protocol.Data;
-import com.dy.common.mw.protocol.p206V1_0_0.DataV1_0_1;
+import com.dy.rtuMw.server.rtuData.dbSv.DbSv;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -29,17 +35,42 @@
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.saveOrUpdateLast(sv, controller, d.getRtuAddr(), dV1_0_1, dV1_0_1.dataCdC0Vo) ;
-// this.saveHistory(sv, controller, d.getRtuAddr(),dV1_0_1, dV1_0_1.dataCdC0Vo) ;
-// }catch (Exception e){
-// log.error("淇濆瓨鎺у埗鍣ㄨ嚜鎶ユ暟鎹椂鍙戠敓寮傚父", e);
-// }
-// }
+ 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{
+ RmCommandHistory po = sv.getCommandLog(d.commandId) ;
+ if(po != null){
+ po = this.updateCommandLogPo(po, dV1_0_1, dV1_0_1.subData) ;
+ sv.updateCommandLog(po);
+ }
+ }catch (Exception e){
+ log.error("淇濆瓨鎺у埗鍣ㄨ嚜鎶ユ暟鎹椂鍙戠敓寮傚父", e);
+ }
+ }
}
}
+
+ public RmCommandHistory updateCommandLogPo(RmCommandHistory po, DataV1_0_1 dV1_0_1, Object obj) throws Exception{
+ if(obj instanceof DataCd97Vo){
+ DataCd97Vo vo = (DataCd97Vo)obj ;
+ po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt)) ;
+ po.setResultText((JSONObject) JSON.toJSON(vo));
+ }else if(obj instanceof DataCd98Vo){
+ DataCd98Vo vo = (DataCd98Vo)obj ;
+ po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt));
+ po.setResultText((JSONObject) JSON.toJSON(vo));
+ }else if(obj instanceof DataCd92Vo){
+ DataCd92Vo vo = (DataCd92Vo)obj ;
+ po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt)) ;
+ po.setResultText((JSONObject) JSON.toJSON(vo));
+ }else if(obj instanceof DataCd93Vo){
+ DataCd93Vo vo = (DataCd93Vo)obj ;
+ po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV1_0_1.dt)) ;
+ po.setResultText((JSONObject) JSON.toJSON(vo));
+ }
+ return po ;
+ }
+
}
--
Gitblit v1.8.0