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/smallLogistics/server/impl/OrderLogisticsServiceImpl.java |   30 ++++++++++++++++++++++--------
 1 files changed, 22 insertions(+), 8 deletions(-)

diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index 6bd7e2b..7178fb7 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -77,9 +77,6 @@
     @Autowired
     private IPaymentRecordService paymentRecordService;
 
-   /* @Autowired
-    private ICBCPayUtil icbcPayUtil;*/
-
     @Autowired
     private PayMoneyUtil payMoneyUtil;
 
@@ -113,11 +110,8 @@
     @Autowired
     private IUserCouponRecordService userCouponRecordService;
 
-    @Resource
-    private CarMapper carMapper;
-
     @Autowired
-    private IOrderEvaluateService orderEvaluateService;
+    private IBankCardService bankCardService;
 
     @Value("${callbackPath}")
     private String callbackPath;
@@ -472,7 +466,7 @@
      * @throws Exception
      */
     @Override
-    public ResultUtil payLogisticsOrder(Integer payType, String accountNumber, Integer orderId, Integer type, Integer language) throws Exception {
+    public ResultUtil payLogisticsOrder(Integer payType, Integer bankCardId, Integer orderId, Integer type, Integer language) throws Exception {
         OrderLogistics orderLogistics = this.selectById(orderId);
         if(orderLogistics.getState() != 7){
             return ResultUtil.error("订单已完成支付,不允许重复支付");
@@ -504,6 +498,26 @@
             return TinggPayUtil.checkoutRequest(checkoutRequest);
         }
 
+        if(payType == 2) {//银行卡支付
+            BankCard bankCard = bankCardService.selectById(bankCardId);
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+            String merchantTransactionId = sdf.format(new Date()) + "4" + language + orderId;
+            CheckoutRequest checkoutRequest = new CheckoutRequest();
+            checkoutRequest.setMsisdn(Long.valueOf(bankCard.getCode()));
+            checkoutRequest.setCustomerEmail(userInfo.getEmail());
+            checkoutRequest.setAccountNumber(bankCard.getCode());
+            checkoutRequest.setCustomerFirstName(bankCard.getFirstName());
+            checkoutRequest.setCustomerLastName(bankCard.getLastName());
+            checkoutRequest.setRequestAmount(orderMoney);
+            checkoutRequest.setMerchantTransactionId(merchantTransactionId);
+            checkoutRequest.setRequestDescription("Travel completion payment");
+            checkoutRequest.setCallbackUrl(callbackPath + "/base/wxPayOrderTaxi");
+            checkoutRequest.setPendingRedirectUrl("");
+            checkoutRequest.setSuccessRedirectUrl("https://10pz685243.zicp.fun");
+            checkoutRequest.setFailRedirectUrl("https://www.baidu.com");
+            return TinggPayUtil.checkoutRequest(checkoutRequest);
+        }
+
         if(payType == 3){//余额支付
             if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){
                 return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant");

--
Gitblit v1.7.1