From 710c6a4d568237016a70b74aa3769b89e336725c Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 13 五月 2025 15:48:21 +0800
Subject: [PATCH] 1、实现功能码92、93命令web后端接口定义与逻辑代码实现; 2、修改原来功能逻辑实现的逻辑,增加回调; 3、表阀一体机协议命令结果数据库存储补充实现。
---
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java | 78 +++++
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java | 5
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComCtrl.java | 7
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5C/CdCtrl.java | 5
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5B/CdCtrl.java | 6
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdSv.java | 54 +++
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd22/CdCtrl.java | 6
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java | 3
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd55/CdCtrl.java | 7
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd56/CdCtrl.java | 6
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd99/CdCtrl.java | 6
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java | 4
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd16/CdCtrl.java | 7
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd68/CdCtrl.java | 6
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd98/CdCtrl.java | 6
pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java | 47 +++
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd15/CdCtrl.java | 8
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd65/CdCtrl.java | 6
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdDto.java | 18 +
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdParam.java | 25 +
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealOpenValveReport.java | 1
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd97/CdCtrl.java | 6
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdParam.java | 21 +
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd31/CdCtrl.java | 5
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdSv.java | 57 +++
pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVirtualCardMapper.java | 4
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComSv.java | 48 +++
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd50/CdCtrl.java | 8
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java | 171 +++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdCtrl.java | 151 ++++++++++
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd30/CdCtrl.java | 6
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkRtuDealCommandResponseV202404.java | 40 +
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdDto.java | 19 +
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/ComTransCtrl.java | 5
34 files changed, 777 insertions(+), 75 deletions(-)
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
index a2df974..80e7d3f 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/parse/global/GlParse.java
@@ -346,7 +346,7 @@
cdData.eleTotalAmount = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
index += 5 ;
- cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
+ cdData.moneyRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/10000.0D ;
index += 5 ;
cdData.waterRemain = ByteUtil.BCD2Long_LE(bs, index, index + 4)/100.0D ;
@@ -358,7 +358,7 @@
cdData.thisWater = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
index += 4 ;
- cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/100.0D ;
+ cdData.thisMoney = ByteUtil.BCD2Long_LE(bs, index, index + 3)/10000.0D ;
index += 4 ;
cdData.thisDuration = ByteUtil.BCD2Int_LE(bs, index, index + 1) ;
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
index 3b8f6e2..4e4977c 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd92_A2Vo.java
@@ -1,12 +1,13 @@
package com.dy.common.mw.protocol.p206V202404.upVos;
+import com.dy.common.mw.protocol.UpComResVo;
import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.CommonV202404;
import lombok.Data;
//骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂�
@Data
-public class DataCd92_A2Vo {
+public class DataCd92_A2Vo implements UpComResVo {
public String controllerType;//鎺у埗鍣ㄧ被鍨�
public Integer projectNo ;//椤圭洰缂栧彿
@@ -52,4 +53,48 @@
return sb.toString() ;
}
+ public String toStr(boolean showBase){
+ StringBuffer sb = new StringBuffer() ;
+ if(showBase){
+ sb.append(comName + " : \n") ;
+ sb.append("鎺у埗鍣ㄧ被鍨� : ") ;
+ sb.append(CommonV202404.ctrlDevType(controllerType)) ;
+ sb.append("\n") ;
+ sb.append("椤圭洰缂栧彿 : ") ;
+ sb.append(projectNo == null?"鏈煡":projectNo) ;
+ sb.append("\n") ;
+ }
+ sb.append("IC鍗$紪鍙� : ") ;
+ sb.append(icCardNo == null?"鏈煡":icCardNo) ;
+ sb.append("\n") ;
+ sb.append("璁㈠崟鍙� : ") ;
+ sb.append(orderNo == null?"鏈煡":orderNo) ;
+ sb.append("\n") ;
+ sb.append("寮�娉�/闃�鏃堕棿 : ") ;
+ sb.append(opDt == null?"鏈煡":opDt) ;
+ sb.append("\n") ;
+ sb.append("寮�鍚车/闃�绫诲瀷 : ") ;
+ sb.append(opType == null?"鏈煡":(opType.byteValue() == 0x01 ? "骞冲彴":"鐢ㄦ埛")) ;
+ sb.append("\n") ;
+ sb.append("寮�鍚车/闃�缁撴灉 : ") ;
+ sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触")) ;
+ sb.append("\n") ;
+ return sb.toString() ;
+ }
+
+
+ public String comLog(){
+ StringBuilder sb = new StringBuilder() ;
+ sb.append("杩滅▼寮�闃�鍛戒护鍥炲:\n");
+ sb.append(opResult == null?"鏈煡":(opResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触"));
+ sb.append("\n");
+
+ return sb.toString() ;
+ }
+
+ @Override
+ public String comLog(String code) {
+ return null;
+ }
+
}
diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
index 6008b68..0324750 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/protocol/p206V202404/upVos/DataCd93_A3Vo.java
@@ -1,5 +1,6 @@
package com.dy.common.mw.protocol.p206V202404.upVos;
+import com.dy.common.mw.protocol.UpComResVo;
import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.CommonV202404;
import lombok.Data;
@@ -8,7 +9,7 @@
//骞冲彴/APP杩滅▼鍏抽棴姘存车/闃�闂� + 鍒峰崱鍏虫车/闃�涓婃姤
@Data
@EqualsAndHashCode(callSuper=false)
-public class DataCd93_A3Vo extends AlarmVo {
+public class DataCd93_A3Vo extends AlarmVo implements UpComResVo {
public String controllerType;//鎺у埗鍣ㄧ被鍨�
public Integer projectNo ;//椤圭洰缂栧彿
@@ -87,10 +88,83 @@
sb.append(" 鏈浣跨敤閲戦 : ") ;
sb.append(thisMoney == null?"鏈煡":thisMoney) ;
sb.append("\n") ;
- sb.append(" 鏈浣跨敤鏃堕棿闀� : ") ;
+ sb.append(" 鏈浣跨敤鏃堕暱 : ") ;
sb.append(thisDuration == null?"鏈煡": thisDuration) ;
sb.append("\n") ;
return sb.toString() + super.toString() ;
}
+ public String toStr(boolean showBase){
+ StringBuffer sb = new StringBuffer() ;
+ if(showBase){
+ sb.append(comName + " : \n") ;
+ sb.append("鎺у埗鍣ㄧ被鍨� : ") ;
+ sb.append(CommonV202404.ctrlDevType(controllerType)) ;
+ sb.append("\n") ;
+ sb.append("椤圭洰缂栧彿 : ") ;
+ sb.append(projectNo == null?"鏈煡":projectNo) ;
+ sb.append("\n") ;
+ }
+ sb.append("鍏虫车/闃�绫诲瀷 : ") ;
+ sb.append(clType == null?"鏈煡":(clType.byteValue() == 0x00 ? "鍒峰崱":(clType.byteValue() == 0x01 ? "骞冲彴":(clType.byteValue() == 0x02 ? "APP":(clType.byteValue() == 0x03 ? "闈炴硶鍗�":(clType.byteValue() == 0x04 ? "姘磋〃寮傚父":(clType.byteValue() == 0x05 ? "鐢佃〃寮傚父":(clType.byteValue() == 0x06 ? "鍓╀綑姘撮噺涓嶈冻":(clType.byteValue() == 0x07 ? "鍓╀綑閲戦涓嶈冻":(clType.byteValue() == 0x08 ? "鏃犳祦閲�":(clType.byteValue() == 0x09 ? "鎺夌數鍐嶄笂鐢�":"鏈煡"))))))))))) ;
+ sb.append("\n") ;
+ sb.append("鍏冲惎娉�/闃�缁撴灉 : ") ;
+ sb.append(clResult == null?"鏈煡":(clResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触")) ;
+ sb.append("\n") ;
+ sb.append("IC鍗″湴鍧� : ") ;
+ sb.append(icCardAddr == null?"鏈煡":icCardAddr) ;
+ sb.append("\n") ;
+ sb.append("IC鍗$紪鍙� : ") ;
+ sb.append(icCardNo == null?"鏈煡":icCardNo) ;
+ sb.append("\n") ;
+ sb.append("璁㈠崟鍙� : ") ;
+ sb.append(orderNo == null?"鏈煡":orderNo) ;
+ sb.append("\n") ;
+ sb.append("寮�濮嬫椂闂� : ") ;
+ sb.append(startDt == null?"鏈煡":startDt) ;
+ sb.append("\n") ;
+ sb.append("缁撴潫鏃堕棿 : ") ;
+ sb.append(endDt == null?"鏈煡":endDt) ;
+ sb.append("\n") ;
+ sb.append("姘磋〃绱娴侀噺 : ") ;
+ sb.append(waterTotalAmount == null?"鏈煡":waterTotalAmount) ;
+ sb.append("\n") ;
+ sb.append("鐢佃〃绱鐢甸噺 : ") ;
+ sb.append(eleTotalAmount == null?"鏈煡":eleTotalAmount) ;
+ sb.append("\n") ;
+ sb.append("鐢ㄦ埛鍓╀綑閲戦 : ") ;
+ sb.append(moneyRemain == null?"鏈煡":moneyRemain) ;
+ sb.append("\n") ;
+ sb.append("鐢ㄦ埛鍓╀綑姘撮噺 : ") ;
+ sb.append(waterRemain == null?"鏈煡":waterRemain) ;
+ sb.append("\n") ;
+ sb.append("鏈浣跨敤鐢甸噺 : ") ;
+ sb.append(thisEle == null?"鏈煡":thisEle) ;
+ sb.append("\n") ;
+ sb.append("鏈浣跨敤姘撮噺 : ") ;
+ sb.append(thisWater == null?"鏈煡":thisWater) ;
+ sb.append("\n") ;
+ sb.append("鏈浣跨敤閲戦 : ") ;
+ sb.append(thisMoney == null?"鏈煡":thisMoney) ;
+ sb.append("\n") ;
+ sb.append("鏈浣跨敤鏃堕暱 : ") ;
+ sb.append(thisDuration == null?"鏈煡": thisDuration) ;
+ sb.append("\n") ;
+ return sb.toString() + super.toString() ;
+ }
+
+
+ public String comLog(){
+ StringBuilder sb = new StringBuilder() ;
+ sb.append("杩滅▼鍏抽榾鍛戒护鍥炲:\n");
+ sb.append(clResult == null?"鏈煡":(clResult.byteValue() == 0x01 ? "鎴愬姛":"澶辫触"));
+ sb.append("\n");
+
+ return sb.toString() ;
+ }
+
+ @Override
+ public String comLog(String code) {
+ return null;
+ }
}
diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVirtualCardMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVirtualCardMapper.java
index 0d90840..c4f0df8 100644
--- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVirtualCardMapper.java
+++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVirtualCardMapper.java
@@ -49,8 +49,8 @@
/**
* 鏍规嵁铏氭嫙鍗D鑾峰彇铏氭嫙鍗″璞�
- * @param vcId
- * @return
+ * @param vcId 铏氭嫙鍗D
+ * @return 铏氭嫙鍗″璞�
*/
VoVirtualCard getVcById(@Param("vcId") Long vcId);
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealOpenValveReport.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealOpenValveReport.java
index 464894c..098039a 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealOpenValveReport.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V1/TkDealOpenValveReport.java
@@ -241,7 +241,6 @@
poLast.intakeId = controller==null?null:controller.getIntakeId();
poLast.rtuAddr = rtuAddr;
poLast.updateFrom(dV1, dataCd83OpenVo, clearLastCloseValve);
-
if(poHistory != null){
poHistory.clientId = clientVo==null?null:clientVo.getId() ;
poHistory.clientName = clientVo==null?null:clientVo.getName() ;
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
index e983270..273c54a 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealCloseValveReportV202404.java
@@ -21,6 +21,9 @@
* @LastEditTime 2024-06-20 13:48
* @Description
*/
+/**
+ * 澶勭悊鎺у埗鍣ㄥ叧闃�涓婃姤
+ */
public class TkDealCloseValveReportV202404 extends TaskSurpport {
private static final Logger log = LogManager.getLogger(TkDealCloseValveReportV202404.class.getName());
@@ -29,7 +32,6 @@
/**
* 鎵ц鑺傜偣浠诲姟锛氬叧闃�涓婃姤
- *
* @param data 闇�瑕佸鐞嗙殑鏁版嵁
*/
@Override
@@ -310,5 +312,4 @@
poHistory.updateFrom(dV202404, dataCd85Vo, false);
}
}
-
}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
index e13c058..e32eac9 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkDealOpenValveReportV202404.java
@@ -19,7 +19,8 @@
* @author ZhuBaoMin
* @date 2024-06-17 9:36
* @LastEditTime 2024-06-17 9:36
- * @Description 鎺у埗鍣ㄥ紑闃�涓婃姤(鍔熻兘鐮�84)
+ * @Description
+ * 澶勭悊鎺у埗鍣ㄥ紑闃�涓婃姤
*/
public class TkDealOpenValveReportV202404 extends TaskSurpport {
private static final Logger log = LogManager.getLogger(TkDealTimingReportV202404.class.getName());
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkRtuDealCommandResponseV202404.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkRtuDealCommandResponseV202404.java
index d73dff8..f517210 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkRtuDealCommandResponseV202404.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/server/rtuData/p206V202404/TkRtuDealCommandResponseV202404.java
@@ -1,8 +1,12 @@
package com.dy.rtuMw.server.rtuData.p206V202404;
import com.dy.common.mw.protocol.Data;
+import com.dy.common.mw.protocol.UpComResVo;
import com.dy.common.mw.protocol.p206V202404.DataV202404;
+import com.dy.common.util.DateTime;
+import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory;
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;
@@ -29,18 +33,32 @@
if(protocolData != null){
DataV202404 dV202404 = (DataV202404)protocolData ;
if(dV202404 != null) {
-// if (dV1 != null && dV1.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, dV1.dataCdC0Vo) ;
-// this.saveHistory(sv, controller, d.getRtuAddr(),dV1, dV1.dataCdC0Vo) ;
-// }catch (Exception e){
-// log.error("淇濆瓨鎺у埗鍣ㄨ嚜鎶ユ暟鎹椂鍙戠敓寮傚父", e);
-// }
-// }
+ Object[] objs = this.getTaskResults(TkPreGenObjsV202404.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, d.code, dV202404, dV202404.subData) ;
+ sv.updateCommandLog(po);
+ }else{
+ log.error("鏈緱鍒板懡浠ゆ棩蹇楋紙" + d.getCommandId() + ")");
+ }
+ }catch (Exception e){
+ log.error("淇濆瓨鎺у埗鍣ㄨ嚜鎶ユ暟鎹椂鍙戠敓寮傚父", e);
+ }
}
}
}
+
+ public RmCommandHistory updateCommandLogPo(RmCommandHistory po, String code, DataV202404 dV202404, Object obj) throws Exception{
+ po.setResultTime(DateTime.dateFrom_yyyy_MM_dd_HH_mm_ss(dV202404.dt==null?DateTime.yyyy_MM_dd_HH_mm_ss():dV202404.dt));
+ if(obj instanceof UpComResVo){
+ UpComResVo vo = (UpComResVo)obj ;
+ po.setResult((byte)1);
+ po.setResultText(vo.comLog()!=null?vo.comLog():vo.comLog(code));
+ log.info("----------------------------------\n" + (vo.comLog()!=null?vo.comLog():vo.comLog(code)));
+ }
+ return po ;
+ }
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/ComTransCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/ComTransCtrl.java
index a85d0fd..1ee1493 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/ComTransCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/ComTransCtrl.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
+import com.dy.common.util.Callback;
import com.dy.common.util.NumUtil;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
@@ -73,7 +74,7 @@
res = super.doSend(sv, com) ;
if(res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(dto.comCode);
+ res = super.after(dto.comCode, null);
}
}catch (Exception e){
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null?"":e.getMessage())) ;
@@ -111,7 +112,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComCtrl.java
index b80ae41..45b05fe 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComCtrl.java
@@ -2,6 +2,7 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.mw.protocol.Command;
+import com.dy.common.util.Callback;
import com.dy.common.util.IDLongGenerator;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
@@ -155,11 +156,11 @@
* 鍙戦�佸懡浠ゅ悗
* @return
*/
- public BaseResponse<Object> after(String comCode) {
+ public BaseResponse<Object> after(String comCode, Callback callback) {
try{
//绛夊緟閫氫俊涓棿浠堕�氱煡鎺у埗鍣ㄦ墽琛屽懡浠や笂琛屾暟鎹紙鍛戒护缁撴灉锛�
JSONObject resultData = feature.get(waitMwRtnResultTimeout, TimeUnit.SECONDS);
- return BaseResponseUtils.buildSuccess(this.createRtnMsg(comCode, resultData));
+ return BaseResponseUtils.buildSuccess(this.dealComResult(comCode, resultData, callback));
}catch (Exception e){
return BaseResponseUtils.buildFail("绛夊緟閫氫俊涓棿浠堕�氱煡鍛戒护缁撴灉瓒呮椂");
}
@@ -189,5 +190,5 @@
/**
* 鐢熸垚鍛戒护杩斿洖淇℃伅
*/
- protected abstract String createRtnMsg(String code, JSONObject resultData);
+ protected abstract String dealComResult(String code, JSONObject resultData, Callback callback);
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComSv.java
index 8fc35f5..c9fc53e 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/common/ComSv.java
@@ -1,12 +1,19 @@
package com.dy.pipIrrRemote.monitor.common;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
import com.dy.pipIrrGlobal.command.CommandSv;
+import com.dy.pipIrrGlobal.daoPr.PrCommonIntakesMapper;
import com.dy.pipIrrGlobal.daoPr.PrControllerMapper;
import com.dy.pipIrrGlobal.daoRm.RmCommandHistoryMapper;
+import com.dy.pipIrrGlobal.pojoPr.PrCommonIntakes;
import com.dy.pipIrrGlobal.pojoPr.PrController;
import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory;
+import com.dy.pipIrrGlobal.voRm.VoUnclosedParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
/**
* @Author: liurunyu
@@ -19,6 +26,8 @@
protected PrControllerMapper prControllerDao ;
@Autowired
protected RmCommandHistoryMapper rmCommandHistoryDao ;
+ @Autowired
+ private PrCommonIntakesMapper prCommonIntakesDao;
public PrController getRtu(Long intakeId){
return this.getRtu(prControllerDao, intakeId);
@@ -45,4 +54,43 @@
Long operator) {
return this.saveComHistoryPo(rmCommandHistoryDao, comId, protocol, commandCode, commandName, intakeId, rtuAddr, param, operator) ;
}
+
+
+ /**
+ * 娣诲姞甯哥敤鍙栨按鍙f垨鏇存柊浣跨敤淇℃伅
+ * @param operatorId
+ * @param intakeId
+ * @return
+ */
+ public PrCommonIntakes addOrUpdateOftenUseIntake(Long operatorId, Long intakeId) {
+ PrCommonIntakes po = prCommonIntakesDao.selectByOperatorAndIntake(operatorId, intakeId);
+ if(po == null) {
+ po = new PrCommonIntakes();
+ po.setOperatorId(operatorId);
+ po.setIntakeId(intakeId);
+ po.setLastUsedTime(new Date());
+ po.setUsageCount(1);
+ prCommonIntakesDao.insert(po);
+ }else{
+ po.setLastUsedTime(new Date());
+ po.setUsageCount(po.getUsageCount() + 1);
+ prCommonIntakesDao.updateByPrimaryKeySelective(po);
+ }
+ return po ;
+ }
+
+
+ /**
+ * 鏍规嵁鍙栨按鍙D鑾峰彇璇ュ彇姘村彛鏈叧闃�鍙傛暟锛屽钩鍙伴�夋嫨鍙栨按鍙e叧闃�浣跨敤
+ * @param intakeId
+ * @return
+ */
+ public VoUnclosedParam selectUncloseParam(Long intakeId, String rtuAddr) {
+ JSONArray jsonArr = new JSONArray();
+ JSONObject jsonObj = new JSONObject();
+ jsonObj.put("rtuAddr", rtuAddr);
+ jsonObj.put("isOnLine", true);
+ jsonArr.add(jsonObj);
+ return rmCommandHistoryDao.getUncloseParam(jsonArr.toJSONString(), intakeId);
+ }
}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd15/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd15/CdCtrl.java
index 5a9e5c6..5fe92ef 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd15/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd15/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.util.NumUtil;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
@@ -64,7 +64,7 @@
//鍙戦�佸懡浠ゅ墠-3锛氫繚瀛樺懡浠ゆ棩蹇�
SeClientCard icPo = sv.selectClientIcCardById(Long.parseLong(dto.icCardId.trim())) ;
if(icPo == null){
- return BaseResponseUtils.buildError("鏈嶅姟绔嚭閿欙紝鏈緱鍒板啘鎴稩C鍗�") ;
+ return BaseResponseUtils.buildErrorMsg("鏈嶅姟绔嚭閿欙紝鏈緱鍒板啘鎴稩C鍗�") ;
}
CdParam comParam = CdParam.builder().commandCode(ComCode).projectNo(projectNo).controllerType(controllerType)
.icCardAddr(icPo.getCardaddr())//IC鍗″湴鍧�(8浣嶆暟瀛楁垨瀛楁瘝)
@@ -86,7 +86,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -121,7 +121,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd16/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd16/CdCtrl.java
index e2a9622..8fb9122 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd16/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd16/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -14,7 +14,6 @@
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.RandomStringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.http.MediaType;
@@ -77,7 +76,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -112,7 +111,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd22/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd22/CdCtrl.java
index 2dfae70..e1a544e 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd22/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd22/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -76,7 +76,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -111,7 +111,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd30/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd30/CdCtrl.java
index f125356..3a32b0f 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd30/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd30/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd31/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd31/CdCtrl.java
index 2b595a7..2ed66b1 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd31/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd31/CdCtrl.java
@@ -5,6 +5,7 @@
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +74,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +94,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd50/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd50/CdCtrl.java
index ccf1caa..67b2c0a 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd50/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd50/CdCtrl.java
@@ -4,9 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd50Vo;
-import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -16,7 +15,6 @@
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Scope;
import org.springframework.http.MediaType;
import org.springframework.validation.BindingResult;
@@ -75,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -95,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd55/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd55/CdCtrl.java
index 52390fc..08d4a2a 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd55/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd55/CdCtrl.java
@@ -5,9 +5,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd55Vo;
-import com.dy.common.mw.protocol.p206V202404.upVos.DataCd65Vo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -78,7 +77,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -98,7 +97,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONArray codeData = resultData.getJSONArray("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd56/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd56/CdCtrl.java
index 7b989c1..963c623 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd56/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd56/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd56Vo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5B/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5B/CdCtrl.java
index a86dea4..a18ba74 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5B/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5B/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd80_5BVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5C/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5C/CdCtrl.java
index b96a3cc..a122add 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5C/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd5C/CdCtrl.java
@@ -5,6 +5,7 @@
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd5CVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -75,7 +76,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -95,7 +96,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd65/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd65/CdCtrl.java
index 3b5460e..3e23e74 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd65/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd65/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd65Vo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -76,7 +76,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -96,7 +96,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd68/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd68/CdCtrl.java
index 273ed49..531d0f7 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd68/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd68/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCd68Vo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java
new file mode 100644
index 0000000..5c62c48
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java
@@ -0,0 +1,171 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd92;
+
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
+import com.dy.common.aop.SsoAop;
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.p206V202404.upVos.DataCd92_A2Vo;
+import com.dy.common.util.Callback;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
+import com.dy.pipIrrRemote.common.dto.DtoBase;
+import com.dy.pipIrrRemote.monitor.common.ComCtrl;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
+import org.springframework.http.MediaType;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 08:33
+ * @Description
+ */
+@Slf4j
+@Tag(name = "杩滅▼鍛戒护", description = "骞冲彴杩滅▼寮�闃�")
+@RestController("cd92Ctrl")
+@RequestMapping(path = "p202404V201/cd92")
+@RequiredArgsConstructor
+@Scope("prototype") //鍥犱负鏈夊璞$被灞炴�э紝鎵�浠ラ噰鐢ㄥ師鍨嬫ā寮忥紝姣忔璇锋眰鏂板缓涓�涓疄渚嬪璞�
+public class CdCtrl extends ComCtrl {
+
+ private static final String RtuSuccessMsg = "鎺у埗鍣ㄦ帴鏀跺苟鎵ц鍛戒护鎴愬姛锛屾棤杩斿洖鏁版嵁";
+
+ private static final String ComCode = "92" ;
+
+ @Autowired
+ private CdSv sv ;
+ /**
+ * 鍚戣澶囷紙鎺у埗鍣級鍙戦�佸懡浠�
+ * @param dto 鍓嶇鍙戞潵鐨勫�煎璞�
+ * @param bindingResult 瀵筪to楠岃瘉鐨勭粨鏋�
+ * @return 杩斿洖鍓嶇
+ */
+ @PostMapping(path = "send", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @SsoAop()
+ public BaseResponse<Object> send(@RequestBody @Valid CdDto dto, BindingResult bindingResult) {
+ BaseResponse<Object> res ;
+ //鍙戦�佸懡浠ゅ墠-1锛氶獙璇�
+ res = super.pre1(sv, ComCode, dto, bindingResult);
+ if(res == null) {
+ //鍙戦�佸懡浠ゅ墠-2锛氳幏寰楁暟鎹�
+ res = super.pre2(sv, ComCode, dto, bindingResult);
+ if (res == null) {
+ if(dto.vtCardId == null || "".equals(dto.vtCardId.trim())){
+ Long vtId = sv.selectVcIdByIntakeId(dto.getIntakeId()) ;
+ if(vtId == null) {
+ return BaseResponseUtils.buildErrorMsg("璇烽�夋嫨涓�寮犺櫄鎷熷崱");
+ }else{
+ dto.vtCardId = vtId.toString() ;
+ }
+ }
+ VoVirtualCard vcPo = sv.selectClientVtCardById(Long.parseLong(dto.vtCardId.trim())) ;
+ if(vcPo == null){
+ return BaseResponseUtils.buildErrorMsg("鏈嶅姟绔嚭閿欙紝鏈緱鍒板啘鎴疯櫄鎷熷崱") ;
+ }
+ if(vcPo.getInUse().booleanValue()){
+ return BaseResponseUtils.buildErrorMsg("鍐滄埛璇ヨ櫄鎷熷崱宸茬粡琚崰鐢紝涓嶈兘鍐嶅簲鐢ㄥ叾寮�闃�") ;
+ }
+ if(vcPo.getMoney() <= 0.0){
+ return BaseResponseUtils.buildErrorMsg("鍐滄埛璇ヨ櫄鎷熷崱涓墿浣欓噾棰濅负0锛屼笉鑳藉啀搴旂敤鍏跺紑闃�") ;
+ }
+ Double waterPrice = sv.selectWaterPrice() ;
+ if(waterPrice == null){
+ return BaseResponseUtils.buildErrorMsg("鏈嶅姟绔嚭閿欙紝鏈緱鍒版按浠�") ;
+ }
+ CdParam comParam = CdParam.builder().commandCode(ComCode).projectNo(projectNo).controllerType(controllerType)
+ .icCardNo("" + vcPo.getVcNum())//鐢ㄦ埛鍗″簭鍒楀彿锛�17浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
+ .waterRemain(0.0)//鐢ㄦ埛鍓╀綑姘撮噺, 涓や釜灏忔暟鐐�, 鍗曚綅m3, 0~99999999.99
+ .moneyRemain(vcPo.getMoney())//鐢ㄦ埛鍓╀綑姘撮噺, 涓や釜灏忔暟鐐�, 鍗曚綅m3, 0~99999999.99
+ .waterPrice(waterPrice)//姘撮噺鍗曚环 鍗曚綅:鍏�, 2涓皬鏁扮偣
+ .elePrice(0.0)//鐢甸噺鍗曚环 鍗曚綅:鍏�, 2涓皬鏁扮偣
+ .orderNo(RandomStringUtils.randomNumeric(16))//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
+ .build();
+ //鍙戦�佸懡浠ゅ墠-3锛氫繚瀛樺懡浠ゆ棩蹇�
+ res = super.pre3(sv, dto.getIntakeId(), dto.getOperator(), ComCode, comParam);
+ if (res == null) {
+ //鍙戦�佸懡浠ゅ墠-4锛氬噯澶嘑eature
+ super.pre4();
+ try {
+ //鍒涘缓澶栭儴鍛戒护锛堝彂缁欐帶鍒跺櫒锛�
+ Command com = sv.createOuterCommand(ctrlPo.getRtuAddr(), "" + comId, ComCode);
+ com.rtuResultSendWebUrl = rtuResultSendWebUrl;
+ com.param = comParam;
+ //鍙戦�佸懡浠�
+ res = super.doSend(sv, com);
+ if (res == null) {
+ //鍙戦�佸懡浠ゅ悗
+ res = super.after(ComCode, new Callback() {
+ @Override
+ public void call(Object obj) {
+ Boolean success = (Boolean) obj;
+ if(success){
+ // 娣诲姞甯哥敤鍙栨按鍙f垨鏇存柊浣跨敤淇℃伅
+ sv.addOrUpdateOftenUseIntake(dto.getOperator(), dto.getIntakeId()) ;
+ //寮�闃�鎴愬姛锛岃櫄鎷熷崱璁板綍涓婃爣璁板凡琚崰鐢�
+ sv.setVcUsed(vcPo.getId(), dto.getIntakeId());
+ }
+ }
+ @Override
+ public void call(Object... objs) {
+ }
+ @Override
+ public void exception(Exception e) {
+ }
+ });
+ }
+ } catch (Exception e) {
+ res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
+ } finally {
+ //鏈�缁�
+ super.end();
+ }
+ }
+ }
+ }
+ return res ;
+ }
+
+ @Override
+ protected String checkDto(DtoBase dto) {
+ return null;
+ }
+
+ @Override
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
+ String msg;
+ if(resultData != null){
+ JSONObject codeData = resultData.getJSONObject("data") ;
+ if(codeData == null){
+ msg = RtuSuccessMsg ;
+ }else {
+ String json = codeData.toJSONString();
+ DataCd92_A2Vo cvo = JSON.parseObject(json, DataCd92_A2Vo.class) ;
+ if(cvo != null){
+ if(callback != null){
+ if(cvo.opResult != null && cvo.opResult.byteValue() == (byte)0){
+ callback.call(true);//寮�闃�鎴愬姛
+ }else{
+ callback.call(false);//寮�闃�澶辫触
+ }
+ }
+ msg = cvo.toStr(false) ;
+ }else{
+ msg = RtuSuccessMsg ;
+ }
+ }
+ }else{
+ msg = RtuSuccessMsg ;
+ }
+ return msg;
+ }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdDto.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdDto.java
new file mode 100644
index 0000000..3b7d68e
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdDto.java
@@ -0,0 +1,19 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd92;
+
+import com.dy.pipIrrRemote.common.dto.DtoBase;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 08:33
+ * @Description
+ */
+
+@Data
+@EqualsAndHashCode(callSuper=true)
+public class CdDto extends DtoBase {
+ public static final long serialVersionUID = 202505130833001L;
+ public String vtCardId ;//鐢ㄦ埛鍗�(铏氭嫙鍗�)搴忓垪鍙凤紙17浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdParam.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdParam.java
new file mode 100644
index 0000000..267cf55
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdParam.java
@@ -0,0 +1,25 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd92;
+
+import com.dy.pipIrrRemote.monitor.common.CdParameter;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import lombok.experimental.SuperBuilder;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 08:33
+ * @Description
+ */
+@Data
+@ToString(callSuper = true)
+@EqualsAndHashCode(callSuper = true)
+@SuperBuilder
+public class CdParam extends CdParameter {
+ public String icCardNo ;//鐢ㄦ埛鍗″簭鍒楀彿锛�17浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
+ public Double waterRemain ;//鐢ㄦ埛鍓╀綑姘撮噺, 涓や釜灏忔暟鐐�, 鍗曚綅m3, 0~99999999.99
+ public Double moneyRemain ;//鐢ㄦ埛鍓╀綑閲戦, 涓や釜灏忔暟鐐�, 鍗曚綅鍏�, 0~999999.99
+ public Double waterPrice ;//姘撮噺鍗曚环 鍗曚綅:鍏�, 2涓皬鏁扮偣
+ public Double elePrice ;//鐢甸噺鍗曚环 鍗曚綅:鍏�, 2涓皬鏁扮偣
+ public String orderNo ;//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdSv.java
new file mode 100644
index 0000000..b74f6f3
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdSv.java
@@ -0,0 +1,57 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd92;
+
+import com.dy.pipIrrGlobal.daoPr.PrIntakeVcMapper;
+import com.dy.pipIrrGlobal.daoPr.PrWaterPriceMapper;
+import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper;
+import com.dy.pipIrrGlobal.daoSe.SeVirtualCardMapper;
+import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
+import com.dy.pipIrrGlobal.pojoSe.SeVirtualCard;
+import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
+import com.dy.pipIrrRemote.monitor.common.ComSv;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 08:33
+ * @Description
+ */
+@Slf4j
+@Service("cd92Sv")
+public class CdSv extends ComSv {
+ @Autowired
+ protected SeVirtualCardMapper seVirtualCardDao ;
+ @Autowired
+ protected PrWaterPriceMapper prWaterPriceDao ;
+ @Autowired
+ protected PrIntakeVcMapper prIntakeVcDao ;
+
+ public VoVirtualCard selectClientVtCardById(Long id){
+ return seVirtualCardDao.getVcById(id) ;
+ }
+ public Double selectWaterPrice(){
+ return prWaterPriceDao.getPrice() ;
+ }
+ /**
+ * 鏍规嵁鍙栨按鍙D鑾峰彇涓庝箣缁戝畾铏氭嫙鍗D
+ * @param intakeId
+ * @return
+ */
+ public Long selectVcIdByIntakeId(Long intakeId) {
+ return prIntakeVcDao.getVcIdByIntakeId(intakeId);
+ }
+ /**
+ * 璁剧疆铏氭嫙鍗¤鍗犵敤
+ */
+ public void setVcUsed(Long id, Long intakeId){
+ SeVirtualCard po = new SeVirtualCard() ;
+ po.setId(id);
+ po.setIntakeId(intakeId);
+ po.setInUse((byte)1);
+ po.setOpenTime(new Date());
+ seVirtualCardDao.updateByPrimaryKeySelective(po);
+ }
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdCtrl.java
new file mode 100644
index 0000000..3c26d0a
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdCtrl.java
@@ -0,0 +1,151 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd93;
+
+import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONObject;
+import com.dy.common.aop.SsoAop;
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.p206V202404.upVos.DataCd93_A3Vo;
+import com.dy.common.util.Callback;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.pipIrrGlobal.voRm.VoUnclosedParam;
+import com.dy.pipIrrRemote.common.dto.DtoBase;
+import com.dy.pipIrrRemote.monitor.common.ComCtrl;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Scope;
+import org.springframework.http.MediaType;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 09:38
+ * @Description
+ */
+@Slf4j
+@Tag(name = "杩滅▼鍛戒护", description = "骞冲彴杩滅▼鍏抽榾")
+@RestController("cd93Ctrl")
+@RequestMapping(path = "p202404V201/cd93")
+@RequiredArgsConstructor
+@Scope("prototype") //鍥犱负鏈夊璞$被灞炴�э紝鎵�浠ラ噰鐢ㄥ師鍨嬫ā寮忥紝姣忔璇锋眰鏂板缓涓�涓疄渚嬪璞�
+public class CdCtrl extends ComCtrl {
+
+ private static final String RtuSuccessMsg = "鎺у埗鍣ㄦ帴鏀跺苟鎵ц鍛戒护鎴愬姛锛屾棤杩斿洖鏁版嵁";
+
+ private static final String ComCode = "93" ;
+
+ @Autowired
+ private CdSv sv ;
+ /**
+ * 鍚戣澶囷紙鎺у埗鍣級鍙戦�佸懡浠�
+ * @param dto 鍓嶇鍙戞潵鐨勫�煎璞�
+ * @param bindingResult 瀵筪to楠岃瘉鐨勭粨鏋�
+ * @return 杩斿洖鍓嶇
+ */
+ @PostMapping(path = "send", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @SsoAop()
+ public BaseResponse<Object> send(@RequestBody @Valid CdDto dto, BindingResult bindingResult) {
+ BaseResponse<Object> res ;
+ //鍙戦�佸懡浠ゅ墠-1锛氶獙璇�
+ res = super.pre1(sv, ComCode, dto, bindingResult);
+ if(res == null) {
+ //鍙戦�佸懡浠ゅ墠-2锛氳幏寰楁暟鎹�
+ res = super.pre2(sv, ComCode, dto, bindingResult);
+ if (res == null) {
+ //鑾峰彇寮�闃�鍛戒护鍙傛暟
+ VoUnclosedParam opPa = sv.selectUncloseParam(dto.getIntakeId(), ctrlPo.getRtuAddr());
+ if(opPa == null) {
+ return BaseResponseUtils.buildFail("璇ュ彇姘村彛涓婃棤鎮ㄦ渶杩戠殑寮�闃�鎿嶄綔");
+ }
+ Long vcId = sv.getVcIdByNum(opPa.getVcNum()) ;
+ if(vcId == null) {
+ return BaseResponseUtils.buildFail("鏈嶅姟绔嚭閿欙紝鏈緱鍒拌櫄鎷熷崱ID");
+ }
+ //鍙戦�佸懡浠ゅ墠-3锛氫繚瀛樺懡浠ゆ棩蹇�
+ CdParam comParam = CdParam.builder().commandCode(ComCode).projectNo(projectNo).controllerType(controllerType)
+ .icCardNo(opPa.getVcNum())//鐢ㄦ埛鍗″簭鍒楀彿锛�17浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
+ .orderNo(opPa.getOrderNo())//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
+ .build();
+ res = super.pre3(sv, dto.getIntakeId(), dto.getOperator(), ComCode, comParam);
+ if (res == null) {
+ //鍙戦�佸懡浠ゅ墠-4锛氬噯澶嘑eature
+ super.pre4();
+ try {
+ //鍒涘缓澶栭儴鍛戒护锛堝彂缁欐帶鍒跺櫒锛�
+ Command com = sv.createOuterCommand(ctrlPo.getRtuAddr(), "" + comId, ComCode);
+ com.rtuResultSendWebUrl = rtuResultSendWebUrl;
+ com.param = comParam;
+ //鍙戦�佸懡浠�
+ res = super.doSend(sv, com);
+ if (res == null) {
+ //鍙戦�佸懡浠ゅ悗
+ res = super.after(ComCode, new Callback() {
+ @Override
+ public void call(Object obj) {
+ Boolean success = (Boolean) obj;
+ if(success){
+ //鍏抽榾鎴愬姛锛岃В闄よ櫄鎷熷崱琚崰鐢�
+ sv.setVcNoUsed(vcId);
+ }
+ }
+ @Override
+ public void call(Object... objs) {
+ }
+ @Override
+ public void exception(Exception e) {
+ }
+ });
+ }
+ } catch (Exception e) {
+ res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
+ } finally {
+ //鏈�缁�
+ super.end();
+ }
+ }
+ }
+ }
+ return res ;
+ }
+
+ @Override
+ protected String checkDto(DtoBase dto) {
+ return null;
+ }
+
+ @Override
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
+ String msg;
+ if(resultData != null){
+ JSONObject codeData = resultData.getJSONObject("data") ;
+ if(codeData == null){
+ msg = RtuSuccessMsg ;
+ }else {
+ String json = codeData.toJSONString();
+ DataCd93_A3Vo cvo = JSON.parseObject(json, DataCd93_A3Vo.class) ;
+ if(cvo != null){
+ if(callback != null){
+ if(cvo.clResult != null && cvo.clResult == 0){
+ callback.call(true);//鍏抽榾鎴愬姛
+ }else{
+ callback.call(false);//鍏抽榾澶辫触
+ }
+ }
+ msg = cvo.toStr(false) ;
+ }else{
+ msg = RtuSuccessMsg ;
+ }
+ }
+ }else{
+ msg = RtuSuccessMsg ;
+ }
+ return msg;
+ }
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdDto.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdDto.java
new file mode 100644
index 0000000..31a0ca3
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdDto.java
@@ -0,0 +1,18 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd93;
+
+import com.dy.pipIrrRemote.common.dto.DtoBase;
+import jakarta.validation.constraints.NotNull;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 09:38
+ * @Description
+ */
+
+@Data
+@EqualsAndHashCode(callSuper=true)
+public class CdDto extends DtoBase {
+ public static final long serialVersionUID = 202505130938001L;
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdParam.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdParam.java
new file mode 100644
index 0000000..c3421ae
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdParam.java
@@ -0,0 +1,21 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd93;
+
+import com.dy.pipIrrRemote.monitor.common.CdParameter;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.ToString;
+import lombok.experimental.SuperBuilder;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 09:38
+ * @Description
+ */
+@Data
+@ToString(callSuper = true)
+@EqualsAndHashCode(callSuper = true)
+@SuperBuilder
+public class CdParam extends CdParameter {
+ public String icCardNo ;//鐢ㄦ埛鍗″簭鍒楀彿锛�17浣嶆暟瀛楋級锛�6瀛楄妭BCD锛�2瀛楄妭HEX锛�
+ public String orderNo ;//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
+}
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdSv.java
new file mode 100644
index 0000000..c59ab53
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd93/CdSv.java
@@ -0,0 +1,54 @@
+package com.dy.pipIrrRemote.monitor.p202404V201.cd93;
+
+import com.dy.pipIrrGlobal.daoPr.PrWaterPriceMapper;
+import com.dy.pipIrrGlobal.daoSe.SeVirtualCardMapper;
+import com.dy.pipIrrGlobal.pojoSe.SeVirtualCard;
+import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
+import com.dy.pipIrrRemote.monitor.common.ComSv;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/5/13 09:38
+ * @Description
+ */
+@Slf4j
+@Service("cd93Sv")
+public class CdSv extends ComSv {
+
+ @Autowired
+ protected SeVirtualCardMapper seVirtualCardDao ;
+
+ @Autowired
+ protected PrWaterPriceMapper prWaterPriceDao ;
+
+ public VoVirtualCard selectClientVtCardById(Long id){
+ return seVirtualCardDao.getVcById(id) ;
+ }
+ public Double selectWaterPrice(){
+ return prWaterPriceDao.getPrice() ;
+ }
+
+ /**
+ * 瑙i櫎铏氭嫙鍗¤鍗犵敤
+ */
+ public void setVcNoUsed(Long id){
+ SeVirtualCard po = new SeVirtualCard() ;
+ po.setId(id);
+ po.setIntakeId(null);
+ po.setInUse((byte)0);
+ po.setOpenTime(null);
+ seVirtualCardDao.updateByPrimaryKeySelective(po);
+ }
+
+ /**
+ * 閫氳繃铏氭嫙鍗$紪鍙峰緱鍒拌褰曞疄浣揑D
+ * @param vcNum
+ * @return
+ */
+ public Long getVcIdByNum(String vcNum){
+ return seVirtualCardDao.getVcIdByNum(vcNum) ;
+ }
+}
\ No newline at end of file
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd97/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd97/CdCtrl.java
index 88adcaa..0875a90 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd97/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd97/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd98/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd98/CdCtrl.java
index 2ce6db3..26950f7 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd98/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd98/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd99/CdCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd99/CdCtrl.java
index 10d92c8..d363b82 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd99/CdCtrl.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd99/CdCtrl.java
@@ -4,8 +4,8 @@
import com.alibaba.fastjson2.JSONObject;
import com.dy.common.aop.SsoAop;
import com.dy.common.mw.protocol.Command;
-import com.dy.common.mw.protocol.p206V202404.CodeV202404;
import com.dy.common.mw.protocol.p206V202404.upVos.DataCdXyVo;
+import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.pipIrrRemote.common.dto.DtoBase;
@@ -73,7 +73,7 @@
res = super.doSend(sv, com);
if (res == null) {
//鍙戦�佸懡浠ゅ悗
- res = super.after(ComCode);
+ res = super.after(ComCode, null);
}
} catch (Exception e) {
res = BaseResponseUtils.buildFail("鏈嶅姟绔瀯閫犲苟鍚戦�氫俊涓棿浠跺彂閫佽姹傛椂寮傚父" + (e.getMessage() == null ? "" : e.getMessage()));
@@ -93,7 +93,7 @@
}
@Override
- protected String createRtnMsg(String code, JSONObject resultData){
+ protected String dealComResult(String code, JSONObject resultData, Callback callback){
String msg;
if(resultData != null){
JSONObject codeData = resultData.getJSONObject("data") ;
--
Gitblit v1.8.0