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