From 62fc17e246f99c73f162f243490a811e540c0043 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Fri, 07 Feb 2025 14:34:00 +0800 Subject: [PATCH] fix: 修改文件名大小写 --- src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java | 22 ++++++++++++++++++++-- 1 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java b/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java index 462cc83..c162297 100644 --- a/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java +++ b/src/main/java/cc/mrbird/febs/pay/controller/FIUUController.java @@ -72,6 +72,10 @@ } } + /** + * FIUU 回调接口 + * @param request + */ @PostMapping("/notify") public void handlePaymentNotification(HttpServletRequest request) { // 1. 从POST请求中获取参数 @@ -142,6 +146,7 @@ ValidateEntityUtils.ensureEqual(mallOrderInfo.getAmount().toString(), amount, "订单金额异常"); // 更新订单状态 if ("00".equals(status)) { + mallOrderInfo.setPayMethod("FIUU支付"); mallOrderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue()); mallOrderInfo.setPayResult("1"); mallOrderInfo.setPayTime(DateUtil.parseDateTime(paydate)); @@ -151,7 +156,7 @@ } } - // Java 回调接口 + // Java 通知接口 暂时停止使用 @PostMapping("/callback") public FebsResponse handlePaymentCallback(@RequestParam Map<String, String> params) { String secretKey = "59c709fc18978a6a83b87f05d37cecbf"; @@ -167,13 +172,26 @@ // 计算 skey 验证 String preSkey = DigestUtils.md5Hex(tranID + orderId + status + domain + amount + currency); String calculatedSkey = DigestUtils.md5Hex(paydate + domain + preSkey + secretKey); + MallOrderInfo mallOrderInfo = ValidateEntityUtils + .ensureColumnReturnEntity(orderId, MallOrderInfo::getId, mallOrderInfoMapper::selectOne, "订单不存在"); + log.info("callback payResult: {}", mallOrderInfo.getPayResult()); + if("1".equals(mallOrderInfo.getPayResult())){ + return new FebsResponse().success().data("/pages/order/pay/paySuccess?amount="+ amount +"&type=3"); + } + + log.info("callback skey: {}", preSkey); + log.info("callback calculatedSkey: {}", calculatedSkey); if (!calculatedSkey.equals(skey)) { throw new FebsException("订单回调失败,---"+orderId); } updateOrderStatus(orderId, status, amount, paydate, tranID); - return new FebsResponse().success().data("/pages/order/pay/paySuccess?amount="+ amount +"&type=3"); + if ("00".equals(status)) { + return new FebsResponse().success().data("/pages/order/pay/paySuccess?amount="+ amount +"&type=3"); + }else{ + return new FebsResponse().fail().message("支付失败"); + } } /** -- Gitblit v1.9.1