From d730e2a289b38356e28a04b35a0cb2e7b4c6c282 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期四, 03 七月 2025 10:27:56 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/monitor/p202404V201/cd92/CdCtrl.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 55 insertions(+), 2 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 4d3ff38..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 @@ -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