From 844594bc560ba6c5dd7f92ce3301295fb980282a Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期四, 08 五月 2025 21:09:42 +0800 Subject: [PATCH] 充值机模块,获取农户及开卡三个接口 --- pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 48 insertions(+), 9 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java index 35c8b85..a066651 100644 --- a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/command/ComSupport.java @@ -12,6 +12,7 @@ import com.dy.pipIrrGlobal.command.enums.LastOperateENUM; import com.dy.pipIrrGlobal.command.result.CommandResultCode; import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper; +import com.dy.pipIrrGlobal.daoIr.IrIntakeOperateMapper; import com.dy.pipIrrGlobal.daoPr.PrCommonIntakesMapper; import com.dy.pipIrrGlobal.daoPr.PrControllerMapper; import com.dy.pipIrrGlobal.daoRm.RmCommandHistoryMapper; @@ -30,6 +31,8 @@ import org.springframework.web.client.RestTemplate; import org.springframework.web.util.UriComponentsBuilder; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.Date; @@ -63,10 +66,6 @@ protected String commandTypeOuter = CommandType.outerCommand; - // 瀛樺偍瀹炰緥鍖栫殑 CompletableFuture<Data> 瀵硅薄 - protected static Map<Long, Object> features = new HashMap<>(); - //protected static Boolean setuped = false; - @Autowired private RestTemplate restTemplate; @@ -84,6 +83,9 @@ @Autowired private PrCommonIntakesMapper prCommonIntakesMapper; + + @Autowired + private IrIntakeOperateMapper irIntakeOperateMapper; public static ComSupport comSupport; @@ -206,19 +208,19 @@ */ protected BaseResponse<Data> dealWithCallBack(Long comId, Command com) { CompletableFuture<JSONObject> feature = new CompletableFuture<>(); - features.put(comId, feature); + ComResultWait.put(comId, feature); try { // 鍙戦�佸懡浠� JSONObject response_SendCom = (JSONObject) JSON.toJSON(sendCom2Mw(com)); if (response_SendCom == null || !response_SendCom.getString("code").equals("0001")) { // 璇锋眰澶辫触锛孯TU鏈笂绾匡紝娓呴櫎feature - features.remove(comId); + ComResultWait.remove(comId); JSONObject job_param = response_SendCom.getJSONObject("content").getJSONObject("param"); return BaseResponseUtils.buildErrorMsg(job_param.getString("message")); } JSONObject resultData = feature.get(180, TimeUnit.SECONDS); - features.remove(comId); + ComResultWait.remove(comId); Long commandId = resultData.getLong("commandId"); if (commandId.equals(comId)) { @@ -280,6 +282,7 @@ Object param = po.getParam(); String rtuResultSendWebUrl = po.getRtuResultSendWebUrl(); Long operator = po.getOperator(); + Byte openType = po.getOpenType(); // 鏋勯�犲懡浠� Command com = command(comId, commandCode, rtuAddr, protocol, rtuResultSendWebUrl, param); @@ -307,6 +310,7 @@ rmCommandHistory.setResult((byte) 0); rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); //return BaseResponseUtils.buildErrorMsg(response_CallBack.getContent().toString()); + irIntakeOperateMapper.updateByCommandId(comId, (byte)2, response_CallBack.getMsg()); return BaseResponseUtils.buildErrorMsg(response_CallBack.getMsg()); } @@ -322,6 +326,7 @@ rmCommandHistory.setComId(comId); rmCommandHistory.setResult((byte) 0); rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); + irIntakeOperateMapper.updateByCommandId(comId, (byte)2, "鍥炶皟瓒呮椂"); return BaseResponseUtils.buildErrorMsg(CommandResultCode.GET_RESULT_IN_ONE_MINUTE.getMessage()); } @@ -353,7 +358,16 @@ JSONObject job_param = (JSONObject) JSON.toJSON(param); JSONObject job_data = job_response.getJSONObject("content").getJSONObject("data"); if(!job_data.getBoolean("success")) { - // 寮�鍏抽榾澶辫触 + // 寮�鍏抽榾澶辫触锛屾洿鏂板懡浠ゆ墽琛岀姸鎬佸強铏氭嫙鍗$姸鎬� + + rmCommandHistory = new RmCommandHistory(); + rmCommandHistory.setComId(comId); + rmCommandHistory.setResult((byte) 0); + rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); + + if(openType != null && openType == 1 ) { + irIntakeOperateMapper.updateByCommandId(comId, (byte)2, "寮�闃�澶辫触"); + } // 寮�闃�澶辫触鍒欒В闄ゅ崰鐢紝鍏抽榾澶辫触鍒欏崰鐢� if (comType != null) { @@ -362,6 +376,7 @@ if (comType == 1) { virtualCard.setInUse((byte) 0); virtualCard.setIntakeId(null); + virtualCard.setOpenTime(null); } else { virtualCard.setInUse((byte) 1); virtualCard.setIntakeId(intakeId); @@ -375,7 +390,16 @@ response_CallBack.setMsg(CommandResultCode.OPEN_CLOSE_FAIL.getMessage()); response_CallBack.setSuccess(false); }else { - // 寮�鍏抽榾鎴愬姛 + // 寮�鍏抽榾鎴愬姛锛屾洿鏂板懡浠ゆ墽琛岀姸鎬佸強铏氭嫙鍗$姸鎬� + + rmCommandHistory = new RmCommandHistory(); + rmCommandHistory.setComId(comId); + rmCommandHistory.setResult((byte) 1); + rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); + + if(openType != null && openType == 1) { + irIntakeOperateMapper.updateByCommandId(comId, (byte)1, null); + } // 寮�闃�鎴愬姛鍒欏崰鐢紝鍏抽榾鎴愬姛涓嶅崰鐢� if (comType != null) { @@ -384,6 +408,21 @@ if (comType == 1) { virtualCard.setInUse((byte) 1); virtualCard.setIntakeId(intakeId); + + // 濡傛灉鏄鍒掑紑闃�锛屼粠鍛戒护鏃ュ織涓幏鍙栬鍒掓椂闂达紝鍚﹀垯鍙栧綋鍓嶆椂闂� + if(commandCode.equals(CodeV1.cd_A1) || commandCode.equals(CodeV1.cd_A2)) { + // 璁″垝寮�闃� + Date openTime = null; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + openTime = sdf.parse(rmCommandHistoryMapper.getTimeByCommId(comId)); + }catch (ParseException e) { + } + virtualCard.setOpenTime(openTime); + }else { + // 闈炶鍒掑紑闃� + virtualCard.setOpenTime(new Date()); + } } else { virtualCard.setInUse((byte) 0); virtualCard.setIntakeId(null); -- Gitblit v1.8.0