From d15cae9e8d2cabf8d0f3ed41f2f88b04131f8c76 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期四, 31 七月 2025 14:18:58 +0800
Subject: [PATCH] 增加查询单个设备(RTU或FBox)是否在线的功能接口
---
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 56 insertions(+), 3 deletions(-)
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
index 5c62c48..bcb00a2 100644
--- 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
@@ -8,6 +8,7 @@
import com.dy.common.util.Callback;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.pipIrrGlobal.pojoRm.RmCommandOpen;
import com.dy.pipIrrGlobal.voSe.VoVirtualCard;
import com.dy.pipIrrRemote.common.dto.DtoBase;
import com.dy.pipIrrRemote.monitor.common.ComCtrl;
@@ -25,6 +26,8 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+import java.util.Date;
+
/**
* @Author: liurunyu
* @Date: 2025/5/13 08:33
@@ -32,7 +35,7 @@
*/
@Slf4j
@Tag(name = "杩滅▼鍛戒护", description = "骞冲彴杩滅▼寮�闃�")
-@RestController("cd92Ctrl")
+@RestController("p202404V201Cd92Ctrl")
@RequestMapping(path = "p202404V201/cd92")
@RequiredArgsConstructor
@Scope("prototype") //鍥犱负鏈夊璞$被灞炴�э紝鎵�浠ラ噰鐢ㄥ師鍨嬫ā寮忥紝姣忔璇锋眰鏂板缓涓�涓疄渚嬪璞�
@@ -41,6 +44,8 @@
private static final String RtuSuccessMsg = "鎺у埗鍣ㄦ帴鏀跺苟鎵ц鍛戒护鎴愬姛锛屾棤杩斿洖鏁版嵁";
private static final String ComCode = "92" ;
+
+ public static final Double MaxRemainMoney = 9999.9999D ;//鍗忚鏀寔鐨勫墿浣欓噾棰濇渶澶у��
@Autowired
private CdSv sv ;
@@ -78,17 +83,21 @@
if(vcPo.getMoney() <= 0.0){
return BaseResponseUtils.buildErrorMsg("鍐滄埛璇ヨ櫄鎷熷崱涓墿浣欓噾棰濅负0锛屼笉鑳藉啀搴旂敤鍏跺紑闃�") ;
}
+ if(vcPo.getMoney() >= MaxRemainMoney){
+ return BaseResponseUtils.buildErrorMsg("鍐滄埛璇ヨ櫄鎷熷崱涓墿浣欓噾棰濆ぇ浜庡崗璁敮鎸佺殑鏈�澶у��" + MaxRemainMoney + "锛屼笉鑳藉啀搴旂敤鍏跺紑闃�") ;
+ }
Double waterPrice = sv.selectWaterPrice() ;
if(waterPrice == null){
return BaseResponseUtils.buildErrorMsg("鏈嶅姟绔嚭閿欙紝鏈緱鍒版按浠�") ;
}
+ String orderNo = RandomStringUtils.randomNumeric(16) ;
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浣嶆暟瀛楋級
+ .orderNo(orderNo)//璁㈠崟鍙凤紙16浣嶆暟瀛楋級
.build();
//鍙戦�佸懡浠ゅ墠-3锛氫繚瀛樺懡浠ゆ棩蹇�
res = super.pre3(sv, dto.getIntakeId(), dto.getOperator(), ComCode, comParam);
@@ -113,6 +122,15 @@
sv.addOrUpdateOftenUseIntake(dto.getOperator(), dto.getIntakeId()) ;
//寮�闃�鎴愬姛锛岃櫄鎷熷崱璁板綍涓婃爣璁板凡琚崰鐢�
sv.setVcUsed(vcPo.getId(), dto.getIntakeId());
+ //璁板綍寮�闃�鍛戒护锛屼互澶囪繙绋嬪叧闃�
+ RmCommandOpen comOpen = sv.getCommandOpen(dto.getIntakeId());
+ if(comOpen == null){
+ RmCommandOpen po = newRmCommandOpen(comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ;
+ sv.saveCommandOpen(po);
+ }else{
+ setRmCommandOpen(comOpen, comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ;
+ sv.updateCommandOpen(comOpen);
+ }
}
}
@Override
@@ -152,7 +170,7 @@
DataCd92_A2Vo cvo = JSON.parseObject(json, DataCd92_A2Vo.class) ;
if(cvo != null){
if(callback != null){
- if(cvo.opResult != null && cvo.opResult.byteValue() == (byte)0){
+ if(cvo.opResult != null && cvo.opResult.byteValue() == (byte)1){
callback.call(true);//寮�闃�鎴愬姛
}else{
callback.call(false);//寮�闃�澶辫触
@@ -168,4 +186,39 @@
}
return msg;
}
+
+ private RmCommandOpen newRmCommandOpen(Long comId,
+ String protocol,
+ String comCode,
+ String comName,
+ Long intakeId,
+ String rtuAddr,
+ Long vcNum,
+ String orderNo,
+ Long operator){
+ RmCommandOpen po = new RmCommandOpen() ;
+ this.setRmCommandOpen(po, comId, protocol, comCode, comName, intakeId, rtuAddr, vcNum, orderNo, operator);
+ return po ;
+ }
+ private void setRmCommandOpen(RmCommandOpen po,
+ Long comId,
+ String protocol,
+ String comCode,
+ String comName,
+ Long intakeId,
+ String rtuAddr,
+ Long vcNum,
+ String orderNo,
+ Long operator){
+ po.comId = comId ;
+ po.protocol = protocol ;
+ po.commandCode = comCode ;
+ po.commandName = comName ;
+ po.intakeId = intakeId ;
+ po.rtuAddr = rtuAddr ;
+ po.vcNum = vcNum ;
+ po.orderNo = orderNo ;
+ po.operator = operator ;
+ po.sendTime = new Date() ;
+ }
}
--
Gitblit v1.8.0