From e9c5dd944c69854b0156c321014f307c064a69bc Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期一, 03 六月 2024 09:58:36 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV
---
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 ++++++++++++++----
pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java | 73 +++++++++++++++++++++++-
4 files changed, 133 insertions(+), 23 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 ;
+ }
+
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java
index 7694fbb..f94e15f 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-irrigate/src/main/java/com/dy/pipIrrIrrigate/irrigateGroup/IrrigateGroupCtrl.java
@@ -85,6 +85,7 @@
/**
* 閫昏緫鍒犻櫎鐏屾簤鍗曞厓
+ *
* @param
* @return
*/
@@ -119,6 +120,7 @@
/**
* 鎵归噺鍒犻櫎
+ *
* @param groupIds
* @return
*/
@@ -147,6 +149,7 @@
/**
* 淇敼鐏屾簤鍗曞厓
+ *
* @param po
* @param bindingResult
* @return
@@ -163,7 +166,7 @@
@PostMapping(path = "update", consumes = MediaType.APPLICATION_JSON_VALUE)
@Transactional(rollbackFor = Exception.class)
@SsoAop()
- public BaseResponse<Boolean> update(@RequestBody @Valid IrIrrigateGroup po, BindingResult bindingResult){
+ public BaseResponse<Boolean> update(@RequestBody @Valid IrIrrigateGroup po, BindingResult bindingResult) {
if (bindingResult != null && bindingResult.hasErrors()) {
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
@@ -204,6 +207,7 @@
/**
* 鍒嗛〉鏌ヨ
+ *
* @param vo
* @return
*/
@@ -247,7 +251,7 @@
@PostMapping(path = "add_unit", consumes = MediaType.APPLICATION_JSON_VALUE)
@Transactional(rollbackFor = Exception.class)
@SsoAop()
- public BaseResponse<Boolean> addGroupUnit(@RequestBody @Valid Map<String,Object> po, BindingResult bindingResult) {
+ public BaseResponse<Boolean> addGroupUnit(@RequestBody @Valid Map<String, Object> po, BindingResult bindingResult) {
if (bindingResult != null && bindingResult.hasErrors()) {
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
@@ -274,7 +278,8 @@
}
/**
- * 杞亴缁勭Щ闄ょ亴婧夊崟鍏�
+ * 杞亴缁勭Щ闄ょ亴婧夊崟鍏�
+ *
* @param
* @return
*/
@@ -290,7 +295,7 @@
@PostMapping(path = "remove_unit")
@Transactional(rollbackFor = Exception.class)
@SsoAop()
- public BaseResponse<Boolean> deleteGroupUnit(@RequestBody @Valid Map<String,Object> po, BindingResult bindingResult) {
+ public BaseResponse<Boolean> deleteGroupUnit(@RequestBody @Valid Map<String, Object> po, BindingResult bindingResult) {
if (bindingResult != null && bindingResult.hasErrors()) {
return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
}
@@ -350,4 +355,64 @@
return BaseResponseUtils.buildException(e.getMessage());
}
}
+
+
+ /**
+ * 淇敼杞亴缁勭粦瀹氱殑鐏屾簤鍗曞厓
+ *
+ * @param po 杞亴缁勭亴婧夊崟鍏冧腑闂磋〃
+ * @param bindingResult
+ * @return 娣诲姞鏄惁鎴愬姛
+ */
+ @Operation(summary = "淇敼杞亴缁勭粦瀹氱殑鐏屾簤鍗曞厓", description = "淇敼杞亴缁勭粦瀹氱殑鐏屾簤鍗曞厓")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = Boolean.class))}
+ )
+ })
+ @PostMapping(path = "updateBindUnits", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @Transactional(rollbackFor = Exception.class)
+ @SsoAop()
+ public BaseResponse<Boolean> updateBindUnits(@RequestBody @Valid Map<String, Object> po, BindingResult bindingResult) {
+ if (bindingResult != null && bindingResult.hasErrors()) {
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+ Long groupId = Long.parseLong(po.get("groupId").toString());
+ Long operator = Long.parseLong(po.get("operator").toString());
+ List<String> newUnitIds = (List<String>) po.get("unitIds");
+ List<Long> oldUnitIds = irrigateGroupSv.getGroupBindUnits(groupId);
+
+ IrGroupUnit irGroupUnit = new IrGroupUnit();
+ irGroupUnit.setGroupId(groupId);
+ irGroupUnit.setOperator(operator);
+ try {
+ for (int j = 0; j < oldUnitIds.size(); j++) {
+ Long oldUnitId = oldUnitIds.get(j);
+ if (!newUnitIds.toString().contains(oldUnitId.toString())) {
+ irGroupUnit.setUnitId(oldUnitId);
+ Integer rec = Optional.ofNullable(irrigateGroupSv.deleteGroupUnit(irGroupUnit)).orElse(0);
+ if (rec == 0) {
+ return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage());
+ }
+ }
+ }
+ for (int i = 0; i < newUnitIds.size(); i++) {
+ Long newUnitId = Long.parseLong(newUnitIds.get(i));
+ if (!oldUnitIds.toString().contains(newUnitId.toString())) {
+ irGroupUnit.setUnitId(newUnitId);
+ Integer rec = Optional.ofNullable(irrigateGroupSv.addGroupUnit(irGroupUnit)).orElse(0);
+ if (rec == 0) {
+ return BaseResponseUtils.buildFail(IrrigateResultCode.ADD_PROJECT_FAIL.getMessage());
+ }
+ }
+ }
+ } catch (Exception e) {
+ log.error("淇敼杞亴缁勭粦瀹氱殑鐏屾簤鍗曞厓寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage());
+ }
+ return BaseResponseUtils.buildSuccess(true);
+ }
}
--
Gitblit v1.8.0