From 74aaaab01e109d3f408cf586ea2c4661872190f1 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 05 八月 2025 18:40:42 +0800
Subject: [PATCH] 先用后付

---
 UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java |   50 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 49 insertions(+), 1 deletions(-)

diff --git a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index f40dbe9..e3f45e6 100644
--- a/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserZYTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -1262,7 +1262,7 @@
     @PostMapping("/base/wxPayOrderTaxi")
     public void wxPayOrderTaxi(HttpServletRequest request, HttpServletResponse response){
         try {
-            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);//icbcPayUtil.payCallback(request);
+            Map<String, String> map = payMoneyUtil.weixinpayCallback(request);
             if(null != map){
                 String out_trade_no = map.get("out_trade_no");
                 String order_id = map.get("transaction_id");
@@ -1401,4 +1401,52 @@
             e.printStackTrace();
         }
     }
+
+    /**
+     * 专车微信退款成功回调
+     * @param request
+     * @param response
+     */
+    @ResponseBody
+    @PostMapping("/base/transferWXNotify")
+    public void transferWXNotify(HttpServletRequest request, HttpServletResponse response){
+        try {
+            Map<String, String> map = payMoneyUtil.wxRefundCallback(request);
+            if(null != map){
+                String order_id = map.get("refund_id");
+                String out_refund_no = map.get("out_refund_no");
+                String refund_fee = map.get("refund_fee");
+                String result = map.get("result");
+                if(ToolUtil.isNotEmpty(out_refund_no) && ToolUtil.isNotEmpty(order_id)){
+                    PrintWriter out = response.getWriter();
+                    out.write(result);
+                    out.flush();
+                    out.close();
+
+                    String[] split = out_refund_no.split(",");
+                    try{
+                        Integer.valueOf(split[0]);
+                    }catch (Exception e){
+                        split = split[0].split("_");
+                    }
+                    Integer id = Integer.valueOf(split[0]);
+                    Integer type = Integer.valueOf(split[1]);
+                    switch (type){
+                        case 1:
+                            OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(id);
+                            if(orderPrivateCar.getState() == 10 || orderPrivateCar.getState() == 12){
+                                //添加交易明细
+                                transactionDetailsService.saveData(orderPrivateCar.getUserId(), "专车取消退款", Double.valueOf(refund_fee), 2, 1, 1, 1, id);
+                            }else {
+                                transactionDetailsService.saveData(orderPrivateCar.getUserId(), "专车差价退款", Double.valueOf(refund_fee), 2, 1, 1, 1, id);
+                            }
+                            break;
+                    }
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+    }
+
 }

--
Gitblit v1.7.1