From c58151470204f3c36b9ee884d98d0fb344febe43 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 8 Jan 2024 15:33:56 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E4=BB=98=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yxt/pay/biz/order/OrderService.java | 34 ++++++++++++------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/yxt/pay/biz/order/OrderService.java b/src/main/java/com/yxt/pay/biz/order/OrderService.java index b5ae218..d717e42 100644 --- a/src/main/java/com/yxt/pay/biz/order/OrderService.java +++ b/src/main/java/com/yxt/pay/biz/order/OrderService.java @@ -176,21 +176,29 @@ public class OrderService extends MybatisBaseService { if (return_code.equalsIgnoreCase("FAIL")) { return rb.setMsg("支付失败," + return_msg); } else if (return_code.equalsIgnoreCase("SUCCESS")) { - String prepay_id = MapUtils.getString("prepay_id", resultUn); + // 返回数据 + String result_code = MapUtils.getString("result_code", resultUn); + String err_code_des = MapUtils.getString("err_code_des", resultUn); + if(result_code.equalsIgnoreCase("FAIL")){ + return rb.setMsg("支付失败," + err_code_des); + }else if (result_code.equalsIgnoreCase("SUCCESS")) { + String prepay_id = MapUtils.getString("prepay_id", resultUn); // sign = MapUtils.getString("sign", resultUn); - // 先生成paySign 参考https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_7&index=5 - resultObj.put("appId", wxPayVo.getAppId());//appid + // 先生成paySign 参考https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_7&index=5 + resultObj.put("appId", wxPayVo.getAppId());//appid // resultObj.put("timeStamp", DateUtils.timeToStr(System.currentTimeMillis() / 1000, DateUtils.DATE_TIME_PATTERN)); - resultObj.put("timeStamp", String.valueOf(System.currentTimeMillis() / 1000)); - resultObj.put("nonceStr", nonceStr);//随机字符串 - resultObj.put("package", "prepay_id=" + prepay_id); - resultObj.put("signType", "MD5"); - String paySign = WechatUtil.arraySign(resultObj, wxPayVo.getSecret()); - resultObj.put("sign", paySign);//签名 - resultObj.put("prepayid", prepay_id);//预支付交易会话ID - payOrder.setPayType(PayTypeEnum.WECHAT.getCode()); - baseMapper.updateById(payOrder); - return rb.success().setData(resultObj); + resultObj.put("timeStamp", String.valueOf(System.currentTimeMillis() / 1000)); + resultObj.put("nonceStr", nonceStr);//随机字符串 + resultObj.put("package", "prepay_id=" + prepay_id); + resultObj.put("signType", "MD5"); + String paySign = WechatUtil.arraySign(resultObj, wxPayVo.getSecret()); + resultObj.put("sign", paySign);//签名 + resultObj.put("prepayid", prepay_id);//预支付交易会话ID + payOrder.setPayType(PayTypeEnum.WECHAT.getCode()); + baseMapper.updateById(payOrder); + return rb.success().setData(resultObj); + } + } } catch (Exception e) { e.printStackTrace();