From c0d4061a26272be229e1c40f21aa0d43d8b91369 Mon Sep 17 00:00:00 2001 From: zhaoyiran Date: Tue, 24 Dec 2024 13:46:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=8E=E6=95=B0=E6=8D=AE=E5=BA=93=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E7=94=A8=E6=88=B7id=E4=B8=9A=E5=8A=A1=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/win/bank/domain/BankDO.java | 6 +++++ .../win/bank/service/cmb/CmbServiceImpl.java | 26 +++++++++++-------- 2 files changed, 21 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/win/bank/domain/BankDO.java b/src/main/java/com/win/bank/domain/BankDO.java index 83ee214..29743d7 100644 --- a/src/main/java/com/win/bank/domain/BankDO.java +++ b/src/main/java/com/win/bank/domain/BankDO.java @@ -3,6 +3,7 @@ package com.win.bank.domain; import java.math.BigDecimal; import java.util.Date; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -87,4 +88,9 @@ public class BankDO extends BaseDO { * 最后查询时间 */ private Date lastQueryTime; + + private String uid; + + @TableField("busMod") + private String busMod; } diff --git a/src/main/java/com/win/bank/service/cmb/CmbServiceImpl.java b/src/main/java/com/win/bank/service/cmb/CmbServiceImpl.java index 498ab41..0b6b167 100644 --- a/src/main/java/com/win/bank/service/cmb/CmbServiceImpl.java +++ b/src/main/java/com/win/bank/service/cmb/CmbServiceImpl.java @@ -54,10 +54,6 @@ public class CmbServiceImpl implements BaseBankService { @Value("${cmb.url}") private String url; - // 业务模式编号 - @Value("${cmb.busMod}") - private String busMod; - // 火车票税率 @Value("${cmb.invoice.trainTaxRate:0.09}") private String trainTaxRate; @@ -79,8 +75,12 @@ public class CmbServiceImpl implements BaseBankService { @Override public BankDO payment(BankDO bankDO) { + if(StringUtils.isEmpty(bankDO.getUid()) || StringUtils.isEmpty(bankDO.getBusMod())){ + bankDO.setMessage("用户ID或业务模式为空"); + return bankDO; + } String funCode = "BB1PAYOP"; - String data = "{\"request\":{\"body\":{\"bb1paybmx1\":[{\"busCod\":\"N02030\",\"busMod\":\"" + busMod + "\"}]},\"head\":{\"funcode\":\"" + funCode + "\",\"userid\":\"" + uid + "\"}}}"; + String data = "{\"request\":{\"body\":{\"bb1paybmx1\":[{\"busCod\":\"N02030\",\"busMod\":\"" + bankDO.getBusMod() + "\"}]},\"head\":{\"funcode\":\"" + funCode + "\",\"userid\":\"" + bankDO.getUid() + "\"}}}"; JsonObject requestJson = new Gson().fromJson(data, JsonObject.class); JsonArray bb1payopx1 = new JsonArray(); JsonObject info = new JsonObject(); @@ -104,7 +104,7 @@ public class CmbServiceImpl implements BaseBankService { logger.info("发送给招商银行的数据:" + JsonUtil.formatJson(requestJson.toString())); String response; try { - response = sendRequest(requestJson.toString(), funCode); + response = sendRequest(requestJson.toString(), funCode, bankDO.getUid()); } catch (Exception e) { throw new RuntimeException(e); } @@ -129,13 +129,17 @@ public class CmbServiceImpl implements BaseBankService { @Override public BankDO queryPaymentResult(BankDO bankDO) { + if(StringUtils.isEmpty(bankDO.getUid())){ + bankDO.setMessage("用户ID为空"); + return bankDO; + } String funCode = "BB1PAYQR"; String yurRef = bankDO.getBusinessCode(); - String data = "{\"request\":{\"body\":{\"bb1payqrx1\":[{\"busCod\":\"N02030\",\"yurRef\":\"" + yurRef + "\"}]},\"head\":{\"funcode\":\"" + funCode + "\",\"userid\":\"" + uid + "\"}}}"; + String data = "{\"request\":{\"body\":{\"bb1payqrx1\":[{\"busCod\":\"N02030\",\"yurRef\":\"" + yurRef + "\"}]},\"head\":{\"funcode\":\"" + funCode + "\",\"userid\":\"" + bankDO.getUid() + "\"}}}"; logger.info("发送给招商银行的数据" + JsonUtil.formatJson(data)); String response; try { - response = sendRequest(data, funCode); + response = sendRequest(data, funCode, bankDO.getUid()); } catch (Exception e) { throw new RuntimeException(e); } @@ -196,7 +200,7 @@ public class CmbServiceImpl implements BaseBankService { logger.info("发送给招商银行的数据" + JsonUtil.formatJson(data)); String response; try { - response = sendRequest(data, funCode); + response = sendRequest(data, funCode, uid); } catch (Exception e) { throw new RuntimeException(e); } @@ -315,9 +319,9 @@ public class CmbServiceImpl implements BaseBankService { return totalPage; } - public String sendRequest(String data, String funcode) throws Exception { + public String sendRequest(String data, String funcode, String userId) throws Exception { HashMap map = new HashMap<>(); - map.put("UID", uid); + map.put("UID", userId); map.put("ALG", alg); map.put("DATA", URLEncoder.encode(data, StandardCharsets.UTF_8.displayName())); map.put("FUNCODE", funcode);