From c399be7463c16b3787b3e591d3006628a11ab858 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期一, 28 四月 2025 17:46:45 +0800
Subject: [PATCH] Merge branch '1.1' of http://120.76.84.145:10101/gitblit/r/java/XianNingChuXing

---
 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java |   76 +++++++++++++++++++++++++++++++++----
 1 files changed, 67 insertions(+), 9 deletions(-)

diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java
index ca02f53..e210482 100644
--- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java
+++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java
@@ -1,4 +1,5 @@
 package com.stylefeng.guns.modular.api;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -11,8 +12,7 @@
 import com.stylefeng.guns.modular.system.dao.TUseMoneyMapper;
 import com.stylefeng.guns.modular.system.model.*;
 import com.stylefeng.guns.modular.system.service.*;
-import com.stylefeng.guns.modular.system.util.PushUtil;
-import com.stylefeng.guns.modular.system.util.ResultUtil;
+import com.stylefeng.guns.modular.system.util.*;
 import com.stylefeng.guns.modular.system.warpper.BaseWarpper;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
@@ -60,10 +60,10 @@
     private IWithdrawalService withdrawalService;
     @Autowired
     private ITRechargeMoneyService rechargeMoneyService;
-
+    @Autowired
+    private PayMoneyUtil payMoneyUtil;
     @Autowired
     private TUseMoneyMapper useMoneyMapper;
-
     @ResponseBody
     @PostMapping ("/money/get")
     @ApiOperation(value = "拿到后台配置的充值金额")
@@ -80,9 +80,39 @@
     @ResponseBody
     @PostMapping ("/recharge")
     @ApiOperation(value = "微信充值操作")
-    public ResultUtil recharge(BigDecimal money,HttpServletRequest request){
-
-        return ResultUtil.success();
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+            @ApiImplicitParam(value = "充值金额", name = "money", required = true, dataType = "double"),
+    })
+    public ResultUtil recharge(BigDecimal money,HttpServletRequest request) throws Exception {
+        Integer uid = driverService.getUserIdFormRedis(request);
+        if (null == uid) {
+            return ResultUtil.tokenErr();
+        }
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+        String s = sdf.format(new Date()) + UUIDUtil.getRandomCode(3);
+        ResultUtil weixinpay = payMoneyUtil.weixinpay("充值",
+                "",
+                s,
+                money.toString(),
+                "/base/wxRecharge",
+                "APP");
+        if (weixinpay.getCode()==200){
+            // 新增扣除使用费记录
+            TransactionDetails transactionDetails = new TransactionDetails();
+            transactionDetails.setCode(s);
+            transactionDetails.setUserId(uid);
+            transactionDetails.setInsertTime(new Date());
+            transactionDetails.setRemark("充值");
+            // 将money转化为double类型
+            transactionDetails.setMoney(money.doubleValue());
+            transactionDetails.setState(1);
+            transactionDetails.setType(1);
+            transactionDetails.setUserType(2);
+            transactionDetails.setOrderType(5);
+            iTransactionDetailsService.insert(transactionDetails);
+        }
+        return weixinpay;
     }
 
 
@@ -231,15 +261,30 @@
             if (state!=null&&state==2){
                 eq.eq("state",2);
             }
+            eq.orderBy("insertTime",false);
             List<TransactionDetails> transactionDetails = iTransactionDetailsService.selectList(eq);
+            List<OrderTaxi> orderTaxis = orderTaxiService.selectList(null);
             if ((state!=null&&state==1)||(state!=null&&state==2)){
                 List<HistoryVo> historyVos = new ArrayList<>();
                 for (TransactionDetails transactionDetail : transactionDetails) {
                     HistoryVo historyVo  = new HistoryVo();
                     if (transactionDetail.getState()==1){
-                        historyVo.setState("充值");
+                        switch (transactionDetail.getOrderType()){
+                            case 2:
+                                historyVo.setState("订单收入");
+                                break;
+                            default:
+                                historyVo.setState("充值");
+                                break;
+                        }
                         historyVo.setAddordown(1);
                     }else {
+                        OrderTaxi orderTaxi = orderTaxis.stream().filter(e -> e.getId().equals(transactionDetail.getOrderId())).findFirst().orElse(null);
+                        if (orderTaxi!=null){
+                            if (orderTaxi.getPayType()!=null && (orderTaxi.getPayType()!=1||orderTaxi.getPayType()!=2)){
+                                continue;
+                            }
+                        }
                         historyVo.setState("扣除");
                         historyVo.setAddordown(0);
                     }
@@ -262,9 +307,22 @@
             for (TransactionDetails transactionDetail : transactionDetails) {
                 HistoryVo historyVo  = new HistoryVo();
                 if (transactionDetail.getState()==1){
-                    historyVo.setState("充值");
+                    switch (transactionDetail.getOrderType()){
+                        case 2:
+                            historyVo.setState("订单收入");
+                            break;
+                        default:
+                            historyVo.setState("充值");
+                            break;
+                    }
                     historyVo.setAddordown(1);
                 }else {
+                    OrderTaxi orderTaxi = orderTaxis.stream().filter(e -> e.getId().equals(transactionDetail.getOrderId())).findFirst().orElse(null);
+                    if (orderTaxi!=null){
+                        if (orderTaxi.getPayType()!=null && (orderTaxi.getPayType()!=1||orderTaxi.getPayType()!=2)){
+                            continue;
+                        }
+                    }
                     historyVo.setState("扣除");
                     historyVo.setAddordown(0);
                 }

--
Gitblit v1.7.1