From b5ff50145e846637838a7905610aed3f4ada5e72 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 04 七月 2023 00:08:51 +0800
Subject: [PATCH] 更新部分支付功能逻辑

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java |   40 +++++++++++++++++++++++++++++++---------
 1 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index 49ad62e..94ba12f 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -16,10 +16,7 @@
 import com.stylefeng.guns.modular.system.model.UserInfo;
 import com.stylefeng.guns.modular.system.service.*;
 import com.stylefeng.guns.modular.system.util.*;
-import com.stylefeng.guns.modular.system.util.Tingg.model.CallbackRequest;
-import com.stylefeng.guns.modular.system.util.Tingg.model.CallbackResponse;
-import com.stylefeng.guns.modular.system.util.Tingg.model.CheckoutRequest;
-import com.stylefeng.guns.modular.system.util.Tingg.model.Payments;
+import com.stylefeng.guns.modular.system.util.Tingg.model.*;
 import com.stylefeng.guns.modular.system.warpper.*;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.model.TransactionDetails;
@@ -1057,16 +1054,17 @@
      */
     @ResponseBody
     @PostMapping("/api/taxi/payTaxiOrder")
-    @ApiOperation(value = "订单完成支付订单操作【1.0】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
+    @ApiOperation(value = "订单完成支付订单操作【1.1】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
     @ApiImplicitParams({
-            @ApiImplicitParam(value = "支付方式(1=线上支付,3=余额,4=线下支付)", name = "payType", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "支付方式(1=手机支付,2=银行卡支付,3=余额,4=线下支付)", name = "payType", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "银行卡id", name = "bankCardId", required = false, dataType = "int"),
             @ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "int"),
             @ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城,4=同城小件物流,5=跨城小件物流)", name = "orderType", required = true, dataType = "int"),
             @ApiImplicitParam(value = "优惠券id", name = "couponId", required = false, dataType = "int"),
             @ApiImplicitParam(value = "支付端(1=用户APP端,2=司机APP端,3=用户小程序端)", name = "type", required = true, dataType = "int"),
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil payTaxiOrder(Integer payType, Integer orderId, Integer orderType, Integer couponId, Integer type, Integer language, HttpServletRequest request){
+    public ResultUtil payTaxiOrder(Integer payType, Integer bankCardId, Integer orderId, Integer orderType, Integer couponId, Integer type, Integer language, HttpServletRequest request){
         try {
             Integer uid = userInfoService.getUserIdFormRedis(request);
             if(null == uid){
@@ -1074,13 +1072,13 @@
             }
             switch (orderType){
                 case 1:
-                    return orderPrivateCarService.payPrivateCarOrder(payType, "user_" + uid, orderId, couponId, type, language);
+                    return orderPrivateCarService.payPrivateCarOrder(payType, bankCardId, orderId, couponId, type, language);
 //                case 2:
 //                    return orderTaxiService.payTaxiOrder(payType, orderId, couponId, type);
 //                case 3:
 //                    return orderCrossCityService.payCrossCityOrder(payType, orderId, couponId, type);
                 case 4:
-                    return orderLogisticsService.payLogisticsOrder(payType, "user_" + uid, orderId, type, language);
+                    return orderLogisticsService.payLogisticsOrder(payType, bankCardId, orderId, type, language);
 //                case 5:
 //                    return orderLogisticsService.payLogisticsOrder(payType, orderId, type, language);
             }
@@ -1304,6 +1302,7 @@
     }
 
 
+
     /**
      * 完成订单微信支付回调
      * @param
@@ -1475,4 +1474,27 @@
             e.printStackTrace();
         }
     }
+
+
+
+    @ResponseBody
+    @PostMapping("/base/IGO/tinggPayoutCallback")
+    public PayoutCallbackResponse tinggPayoutCallback(@RequestBody PayoutCallbackRequest request){
+        System.err.println("转账回调>>>>" + JSON.toJSONString(request));
+        PayoutCallbackResponse payoutCallbackResponse = new PayoutCallbackResponse();
+        AuthStatus authStatus = new AuthStatus();
+        authStatus.setAuthStatusCode(131);
+        authStatus.setAuthStatusDescription("Authentication was successful");
+        payoutCallbackResponse.setAuthStatus(authStatus);
+        Results results = new Results();
+        PayoutPacket packet = request.getPayload().getPacket();
+        String beepTransactionID = packet.getBeepTransactionID();
+        String payerTransactionID = packet.getPayerTransactionID();
+        results.setBeepTransactionID(beepTransactionID);
+        results.setPayerTransactionID(payerTransactionID);
+        results.setStatusCode("188");
+        results.setStatusDescription("Response was received");
+        payoutCallbackResponse.setResults(results);
+        return payoutCallbackResponse;
+    }
 }

--
Gitblit v1.7.1