From e2d01b2009c30173ff8e9f77d5c065f4d38fa49d Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期五, 17 五月 2024 17:56:07 +0800
Subject: [PATCH] Merge branch '2.0' of http://120.76.84.145:10101/gitblit/r/java/IgoTravel into 2.0

---
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SettlementRecordMapper.java                 |    5 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IBalanceUsageRecordService.java         |   43 ++++
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java                 |    1 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java                 |    9 +
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java                                 |   24 ++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java                |    5 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BalanceUsageRecord.java                   |   48 +++++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java              |   11 +
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/BalanceUsageRecordMapper.xml        |   20 ++
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderTimeInfo.java                        |    2 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SettlementRecordServiceImpl.java   |   77 ++++++-
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/BalanceUsageRecordMapper.java               |   37 ++++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java         |   17 +
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java             |    2 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java                          |    4 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml    |   68 -------
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java                       |    9 +
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml                |    9 +
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SettlementRecordMapper.xml          |    6 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java                              |   33 ++-
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/SettlementRecordController.java                    |    2 
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/BalanceUsageRecordServiceImpl.java |  102 +++++++++++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SettlementRecord.java                     |    5 
 23 files changed, 426 insertions(+), 113 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index 67ba7bd..633bdf4 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -17,6 +17,7 @@
 import com.stylefeng.guns.modular.system.util.EmailUtil;
 import com.stylefeng.guns.modular.system.util.ResultUtil;
 import com.stylefeng.guns.modular.system.warpper.*;
+import com.stylefeng.guns.modular.system.warpper.BalanceUsageRecord;
 import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
 import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
 import io.swagger.annotations.Api;
@@ -89,6 +90,9 @@
     
     @Resource
     private DriverActivityHistoryMapper driverActivityHistoryMapper;
+    
+    @Resource
+    private IBalanceUsageRecordService balanceUsageRecordService;
 
 
 
@@ -1179,7 +1183,7 @@
      */
     @ResponseBody
     @PostMapping("/api/driver/queryTotalRevenue")
-    @ApiOperation(value = "获取收入明细【2.0】", tags = {"司机端-个人中心"}, notes = "开发中")
+    @ApiOperation(value = "获取收入明细【2.0】", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
             @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
@@ -1192,7 +1196,7 @@
                 return ResultUtil.tokenErr();
             }
             List<Map<String, Object>> list = driverService.queryTotalRevenue(language, uid, pageNum, size);
-
+            // TODO 待翻译
             List<BaseWarpper> data = new ArrayList<>();
             for(Map<String, Object> map : list){
                 String type = map.get("type").toString();
@@ -1202,7 +1206,8 @@
                 if("2".equals(type)){
                     switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
                         case 1:
-                            baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
+                            OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(map.get("incomeId").toString());
+                            baseWarpper.setName(language == 1 ? (orderPrivateCar.getCancelMidway() == 0 ? "" : "【途中取消】") + "打车" : language == 2 ? (orderPrivateCar.getCancelMidway() == 0 ? "" : "【】") + "Ride" : (orderPrivateCar.getCancelMidway() == 0 ? "" : "【】") + "Course");
                             break;
                         case 2:
                             baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
@@ -1211,7 +1216,8 @@
                             baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
                             break;
                         case 4:
-                            baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison");
+                            OrderLogistics orderLogistics = orderLogisticsService.selectById(map.get("incomeId").toString());
+                            baseWarpper.setName(language == 1 ? (orderLogistics.getCancelMidway() == 0 ? "" : "【途中取消】") + "包裹" : language == 2 ? (orderLogistics.getCancelMidway() == 0 ? "" : "【】") + "Delivery" : (orderLogistics.getCancelMidway() == 0 ? "" : "【】") + "Livraison");
                             break;
                         case 5:
                             baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
@@ -1252,10 +1258,9 @@
                         case 4:
                             OrderLogistics orderLogistics = orderLogisticsService.selectById(map.get("incomeId").toString());
                             List<Income> incomes3 = incomeService.queryData(1, null, 2, orderLogistics.getId(), 4);
-                            map1.put("travelMoney", orderLogistics != null ? orderLogistics.getOrderMoney() : 0);//行程费
-                            map1.put("parkMoney", 0);//停车费
+                            map1.put("parkMoney", orderLogistics != null ? orderLogistics.getParkMoney() : 0);//停车费
                             map1.put("tipMoney", 0);//小费
-                            map1.put("roadTollMoney", 0);//过路费
+                            map1.put("roadTollMoney", orderLogistics != null ? orderLogistics.getRoadTollMoney() : 0);//过路费
                             map1.put("rakeMoney", incomes3.size() > 0 ? incomes3.get(0).getMoney() : 0);//抽成
                             break;
                         case 5:
@@ -1695,23 +1700,23 @@
     
     @ResponseBody
     @PostMapping("/api/driver/queryBalanceUsageRecord")
-    @ApiOperation(value = "获取余额使用记录【2.0】", tags = {"司机端-个人中心"}, notes = "开发中")
+    @ApiOperation(value = "获取余额使用记录【2.0】", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
             @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
-            @ApiImplicitParam(value = "体现类型(1=活动收入提现,2=业务收入提现)", name = "type", required = true, dataType = "int"),
+            @ApiImplicitParam(value = "体现类型(1=活动收入,2=业务收入)", name = "type", required = true, dataType = "int"),
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil<BalanceUsageRecord> queryWithdrawal(Integer language, Integer pageNum, Integer size, Integer type, HttpServletRequest request){
+    public ResultUtil<BalanceUsageRecord> queryBalanceUsageRecord(Integer language, Integer pageNum, Integer size, Integer type, HttpServletRequest request){
         try {
             Integer uid = driverService.getUserIdFormRedis(request);
             if(null == uid){
                 return ResultUtil.tokenErr();
             }
-            BalanceUsageRecord withdrawalWarpper1 = new BalanceUsageRecord();
-            withdrawalWarpper1.setTotal(0D);
-            withdrawalWarpper1.setList(new ArrayList<BalanceUsageRecordList>());
-            return ResultUtil.success(withdrawalWarpper1);
+            BalanceUsageRecord balanceUsageRecord = new BalanceUsageRecord();
+            balanceUsageRecord.setTotal(balanceUsageRecordService.queryBalanceUsageRecordSum(uid, type));
+            balanceUsageRecord.setList(balanceUsageRecordService.queryBalanceUsageRecord(language, uid, type, pageNum, size));
+            return ResultUtil.success(balanceUsageRecord);
         }catch (Exception e){
             e.printStackTrace();
             return ResultUtil.runErr();
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/SettlementRecordController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/SettlementRecordController.java
index aa08c68..1ea9783 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/SettlementRecordController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/SettlementRecordController.java
@@ -83,7 +83,7 @@
 
     @ResponseBody
     @PostMapping("/api/settlementRecord/queryHistoricalSettlement")
-    @ApiOperation(value = "获取结算历史记录【2.0】", tags = {"司机端-个人中心"}, notes = "开发中")
+    @ApiOperation(value = "获取结算历史记录【2.0】", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
             @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java
index 443d216..e0554af 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/WithdrawalController.java
@@ -92,7 +92,7 @@
      */
     @ResponseBody
     @PostMapping("/api/withdrawal/queryWithdrawal")
-    @ApiOperation(value = "获取历史提现数据【2.0】", tags = {"司机端-个人中心"}, notes = "开发中")
+    @ApiOperation(value = "获取历史提现数据【2.0】", tags = {"司机端-个人中心"}, notes = "")
     @ApiImplicitParams({
             @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
             @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
@@ -109,7 +109,7 @@
             List<Map<String, Object>> list = withdrawalService.queryWithdrawal(language, uid, type, state, pageNum, size);
             List<WithdrawalListWarpper> withdrawalWarpper = WithdrawalListWarpper.getWithdrawalWarpper(list);
             WithdrawalWarpper withdrawalWarpper1 = new WithdrawalWarpper();
-            withdrawalWarpper1.setTotal(0D);
+            withdrawalWarpper1.setTotal(withdrawalService.queryWithdrawalSum(uid, type));
             withdrawalWarpper1.setList(withdrawalWarpper);
             return ResultUtil.success(withdrawalWarpper1);
         }catch (Exception e){
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml
index 79d7238..8f45481 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml
@@ -1,73 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.stylefeng.guns.modular.smallLogistics.dao.OrderLogisticsMapper">
-
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.smallLogistics.model.OrderLogistics">
-        <id column="id" property="id"/>
-        <result column="type" property="type"/>
-        <result column="userId" property="userId"/>
-        <result column="driverId" property="driverId"/>
-        <result column="carId" property="carId"/>
-        <result column="orderNum" property="orderNum"/>
-        <result column="cargoType" property="cargoType"/>
-        <result column="urgent" property="urgent"/>
-        <result column="cargoNumber" property="cargoNumber"/>
-        <result column="remark" property="remark"/>
-        <result column="placementLon" property="placementLon"/>
-        <result column="placementLat" property="placementLat"/>
-        <result column="placementAddress" property="placementAddress"/>
-        <result column="startLon" property="startLon"/>
-        <result column="startLat" property="startLat"/>
-        <result column="startAddress" property="startAddress"/>
-        <result column="endLon" property="endLon"/>
-        <result column="endLat" property="endLat"/>
-        <result column="endAddress" property="endAddress"/>
-        <result column="recipient" property="recipient"/>
-        <result column="recipientPhone" property="recipientPhone"/>
-        <result column="boardingLon" property="boardingLon"/>
-        <result column="boardingLat" property="boardingLat"/>
-        <result column="boardingAddress" property="boardingAddress"/>
-        <result column="boardingTime" property="boardingTime"/>
-        <result column="getoffLon" property="getoffLon"/>
-        <result column="getoffLat" property="getoffLat"/>
-        <result column="getoffAddress" property="getoffAddress"/>
-        <result column="getoffTime" property="getoffTime"/>
-        <result column="mileage" property="mileage"/>
-        <result column="payManner" property="payManner"/>
-        <result column="payType" property="payType"/>
-        <result column="orderMoney" property="orderMoney"/>
-        <result column="travelMoney" property="travelMoney"/>
-        <result column="tipMoney" property="tipMoney"/>
-        <result column="redPacketMoney" property="redPacketMoney"/>
-        <result column="couponMoney" property="couponMoney"/>
-        <result column="redPacketId" property="redPacketId"/>
-        <result column="couponId" property="couponId"/>
-        <result column="discount" property="discount"/>
-        <result column="discountMoney" property="discountMoney"/>
-        <result column="activityId" property="activityId"/>
-        <result column="companyId" property="companyId"/>
-        <result column="payMoney" property="payMoney"/>
-        <result column="state" property="state"/>
-        <result column="insertTime" property="insertTime"/>
-        <result column="travelTime" property="travelTime"/>
-        <result column="snatchOrderTime" property="snatchOrderTime"/>
-        <result column="setOutTime" property="setOutTime"/>
-        <result column="arriveTime" property="arriveTime"/>
-        <result column="startServiceTime" property="startServiceTime"/>
-        <result column="endServiceTime" property="endServiceTime"/>
-        <result column="orderSource" property="orderSource"/>
-        <result column="invoiceId" property="invoiceId"/>
-        <result column="trackId" property="trackId"/>
-        <result column="isDelete" property="isDelete"/>
-        <result column="oldState" property="oldState"/>
-        <result column="telX" property="telX"/>
-        <result column="bindId" property="bindId"/>
-        <result column="pickUpCode" property="pickUpCode"/>
-        <result column="isReassign" property="isReassign"/>
-        <result column="reassignNotice" property="reassignNotice"/>
-        <result column="driverPay" property="driverPay"/>
-    </resultMap>
+    
 
 
 
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
index 9e0e932..810793f 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/model/OrderPrivateCar.java
@@ -437,4 +437,9 @@
      */
     @TableField("destination")
     private String destination;
+    /**
+     * 中途取消(0=否,1=是)
+     */
+    @TableField("cancelMidway")
+    private Integer cancelMidway;
 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/BalanceUsageRecordMapper.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/BalanceUsageRecordMapper.java
new file mode 100644
index 0000000..392b1c9
--- /dev/null
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/BalanceUsageRecordMapper.java
@@ -0,0 +1,37 @@
+package com.stylefeng.guns.modular.system.dao;
+
+import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.stylefeng.guns.modular.system.model.BalanceUsageRecord;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/5/13 10:24
+ */
+public interface BalanceUsageRecordMapper extends BaseMapper<BalanceUsageRecord> {
+	
+	
+	/**
+	 * 获取使用记录列表
+	 * @param driverId
+	 * @param type
+	 * @param pageNum
+	 * @param size
+	 * @return
+	 */
+	List<Map<String, Object>> queryBalanceUsageRecord(@Param("driverId") Integer driverId, @Param("type") Integer type,
+	                                                  @Param("pageNum") Integer pageNum, @Param("size") Integer size);
+	
+	
+	/**
+	 * 获取使用记录总额
+	 * @param driverId
+	 * @param type
+	 * @return
+	 */
+	Double queryBalanceUsageRecordSum(@Param("driverId") Integer driverId, @Param("type") Integer type);
+	
+}
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SettlementRecordMapper.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SettlementRecordMapper.java
index 2e5f7fe..b67ad23 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SettlementRecordMapper.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/SettlementRecordMapper.java
@@ -6,6 +6,7 @@
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author zhibing.pu
@@ -19,6 +20,6 @@
      * @param driverId
      * @return
      */
-    List<QueryHistoricalSettlement> queryHistoricalSettlement(@Param("driverId") Integer driverId, @Param("pageNum") Integer pageNum,
-                                                              @Param("size") Integer size);
+    List<Map<String, Object>> queryHistoricalSettlement(@Param("driverId") Integer driverId, @Param("pageNum") Integer pageNum,
+                                        @Param("size") Integer size);
 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java
index 092ec8c..b4ea205 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/WithdrawalMapper.java
@@ -20,4 +20,13 @@
     List<Map<String, Object>> queryWithdrawal(@Param("uid") Integer uid, @Param("userType") Integer userType,
                                               @Param("type") Integer type, @Param("state") Integer state, @Param("pageNum") Integer pageNum,
                                               @Param("size") Integer size);
+    
+    
+    /**
+     * 获取提现总额
+     * @param uid
+     * @return
+     */
+    Double queryWithdrawalSum(@Param("uid") Integer uid, @Param("userType") Integer userType,
+                              @Param("type") Integer type);
 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/BalanceUsageRecordMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/BalanceUsageRecordMapper.xml
new file mode 100644
index 0000000..694c6de
--- /dev/null
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/BalanceUsageRecordMapper.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.stylefeng.guns.modular.system.dao.BalanceUsageRecordMapper">
+
+
+	
+	<select id="queryBalanceUsageRecord" resultType="map">
+		select
+		DATE_FORMAT(createTime, '%Y-%m-%d') as createTime,
+		money,
+		purpose
+		from t_balance_usage_record type = #{type} and driverId = #{driverId} order by createTime desc limit #{pageNum}, #{size}
+	</select>
+	
+	
+	
+	<select id="queryBalanceUsageRecordSum" resultType="double">
+		select ifnull(sum(money), 0) from t_balance_usage_record where type = #{type} and driverId = #{driverId}
+	</select>
+</mapper>
\ No newline at end of file
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SettlementRecordMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SettlementRecordMapper.xml
index 5184149..8f7e3e8 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SettlementRecordMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/SettlementRecordMapper.xml
@@ -16,11 +16,13 @@
     </resultMap>
 
 
-    <select id="queryHistoricalSettlement" resultType="com.stylefeng.guns.modular.system.warpper.QueryHistoricalSettlement">
+    <select id="queryHistoricalSettlement" resultType="map">
         select
         DATE_FORMAT(`day`, '%Y-%m-%d') as createTime,
         payMoney as price,
-        `type`
+        `type`,
+        payType,
+        balanceType
         from t_settlement_record where driverId = #{driverId} and paymentStatus = 2 order by insertTime desc limit #{pageNum}, #{size}
     </select>
 </mapper>
\ No newline at end of file
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml
index 5a04b3c..e047d34 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/WithdrawalMapper.xml
@@ -39,4 +39,13 @@
         </if>
         order by insertTime desc limit #{pageNum}, #{size}
     </select>
+    
+    
+    
+    <select id="queryWithdrawalSum" resultType="double">
+        select
+        ifnull(sum(money), 0) as money
+        from t_pub_withdrawal
+        where flag != 3 and userType = #{userType} and userId = #{uid} and type = #{type}
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BalanceUsageRecord.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BalanceUsageRecord.java
new file mode 100644
index 0000000..daa61bb
--- /dev/null
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/BalanceUsageRecord.java
@@ -0,0 +1,48 @@
+package com.stylefeng.guns.modular.system.model;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/5/13 10:21
+ */
+@Data
+@TableName("t_balance_usage_record")
+public class BalanceUsageRecord {
+	/**
+	 * 主键
+	 */
+	@TableId(value = "id", type = IdType.AUTO)
+	private Integer id;
+	/**
+	 * 司机id
+	 */
+	@TableField("driverId")
+	private Integer driverId;
+	/**
+	 * 余额类型(1=奖励,2=收入)
+	 */
+	@TableField("type")
+	private Integer type;
+	/**
+	 * 使用金额
+	 */
+	@TableField("money")
+	private Double money;
+	/**
+	 * 用途
+	 */
+	@TableField("purpose")
+	private Integer purpose;
+	/**
+	 * 使用时间
+	 */
+	@TableField("createTime")
+	private Date createTime;
+}
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SettlementRecord.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SettlementRecord.java
index b1e2984..785daad 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SettlementRecord.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/SettlementRecord.java
@@ -51,6 +51,11 @@
     @TableField("payType")
     private Integer payType;
     /**
+     * 余额类型(1=奖励余额,2=收入余额)
+     */
+    @TableField("balanceType")
+    private Integer balanceType;
+    /**
      * 支付时间
      */
     @TableField("payTime")
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IBalanceUsageRecordService.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IBalanceUsageRecordService.java
new file mode 100644
index 0000000..55a504a
--- /dev/null
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IBalanceUsageRecordService.java
@@ -0,0 +1,43 @@
+package com.stylefeng.guns.modular.system.service;
+
+import com.baomidou.mybatisplus.service.IService;
+import com.stylefeng.guns.modular.system.model.BalanceUsageRecord;
+import com.stylefeng.guns.modular.system.warpper.BalanceUsageRecordList;
+
+import java.util.List;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/5/13 10:25
+ */
+public interface IBalanceUsageRecordService extends IService<BalanceUsageRecord> {
+	
+	/**
+	 * 获取使用记录列表
+	 * @param driverId
+	 * @param type
+	 * @param pageNum
+	 * @param size
+	 * @return
+	 */
+	List<BalanceUsageRecordList> queryBalanceUsageRecord(Integer language, Integer driverId, Integer type, Integer pageNum, Integer size);
+	
+	
+	/**
+	 * 获取使用记录总额
+	 * @param driverId
+	 * @param type
+	 * @return
+	 */
+	Double queryBalanceUsageRecordSum(Integer driverId, Integer type);
+	
+	
+	/**
+	 * 保存数据
+	 * @param driverId
+	 * @param type
+	 * @param money
+	 * @param purpose
+	 */
+	void saveBalanceUsageRecord(Integer driverId, Integer type, Double money, Integer purpose);
+}
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java
index c355606..94eec11 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IWithdrawalService.java
@@ -36,4 +36,13 @@
      * @throws Exception
      */
     ResultUtil withdrawalAudit(Integer id, Integer state, Integer language) throws Exception;
+    
+    
+    /**
+     * 获提现总额
+     * @param uid
+     * @return
+     * @throws Exception
+     */
+    Double queryWithdrawalSum(Integer uid, Integer type) throws Exception;
 }
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/BalanceUsageRecordServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/BalanceUsageRecordServiceImpl.java
new file mode 100644
index 0000000..87347a9
--- /dev/null
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/BalanceUsageRecordServiceImpl.java
@@ -0,0 +1,102 @@
+package com.stylefeng.guns.modular.system.service.impl;
+
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.stylefeng.guns.modular.system.dao.BalanceUsageRecordMapper;
+import com.stylefeng.guns.modular.system.model.BalanceUsageRecord;
+import com.stylefeng.guns.modular.system.service.IBalanceUsageRecordService;
+import com.stylefeng.guns.modular.system.util.DateUtil;
+import com.stylefeng.guns.modular.system.warpper.BalanceUsageRecordList;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/5/13 10:25
+ */
+@Service
+public class BalanceUsageRecordServiceImpl extends ServiceImpl<BalanceUsageRecordMapper, BalanceUsageRecord> implements IBalanceUsageRecordService {
+	
+	
+	/**
+	 * 获取使用记录列表
+	 * @param driverId
+	 * @param type
+	 * @param pageNum
+	 * @param size
+	 * @return
+	 */
+	@Override
+	public List<BalanceUsageRecordList> queryBalanceUsageRecord(Integer language, Integer driverId, Integer type, Integer pageNum, Integer size) {
+		pageNum = (pageNum - 1) * size;
+		List<Map<String, Object>> list = this.baseMapper.queryBalanceUsageRecord(driverId, type, pageNum, size);
+		List<BalanceUsageRecordList> datas = new ArrayList<>();
+		// TODO 待翻译
+		for (Map<String, Object> map : list) {
+			BalanceUsageRecordList balanceUsageRecordList = new BalanceUsageRecordList();
+			if(null != map.get("createTime")){
+				balanceUsageRecordList.setTime(DateUtil.conversionFormat(language, map.get("createTime").toString()));
+			}
+			if(null != map.get("money")){
+				balanceUsageRecordList.setMoney(Double.valueOf(map.get("money").toString()));
+			}
+			if(null != map.get("purpose")){
+				switch (map.get("purpose").toString()){
+					case "1":
+						balanceUsageRecordList.setContent(language == 1 ? "打车支付" : language == 2 ? "" : "");
+						break;
+					case "2":
+						balanceUsageRecordList.setContent(language == 1 ? "包裹支付" : language == 2 ? "" : "");
+						break;
+					case "3":
+						balanceUsageRecordList.setContent(language == 1 ? "日结算" : language == 2 ? "" : "");
+						break;
+					case "4":
+						balanceUsageRecordList.setContent(language == 1 ? "周结算" : language == 2 ? "" : "");
+						break;
+					case "5":
+						balanceUsageRecordList.setContent(language == 1 ? "月结算" : language == 2 ? "" : "");
+						break;
+					case "6":
+						balanceUsageRecordList.setContent(language == 1 ? "提现" : language == 2 ? "" : "");
+						break;
+				}
+			}
+			datas.add(balanceUsageRecordList);
+		}
+		return datas;
+	}
+	
+	/**
+	 * 获取使用记录总额
+	 * @param driverId
+	 * @param type
+	 * @return
+	 */
+	@Override
+	public Double queryBalanceUsageRecordSum(Integer driverId, Integer type) {
+		return this.baseMapper.queryBalanceUsageRecordSum(driverId, type);
+	}
+	
+	
+	/**
+	 * 保存数据
+	 * @param driverId
+	 * @param type
+	 * @param money
+	 * @param purpose
+	 */
+	@Override
+	public void saveBalanceUsageRecord(Integer driverId, Integer type, Double money, Integer purpose) {
+		BalanceUsageRecord balanceUsageRecord = new BalanceUsageRecord();
+		balanceUsageRecord.setDriverId(driverId);
+		balanceUsageRecord.setType(type);
+		balanceUsageRecord.setMoney(money);
+		balanceUsageRecord.setPurpose(purpose);
+		balanceUsageRecord.setCreateTime(new Date());
+		this.insert(balanceUsageRecord);
+	}
+}
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
index 3cf4d62..d63347f 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderServiceImpl.java
@@ -100,6 +100,9 @@
     
     @Autowired
     private ISettlementRecordService settlementRecordService;
+    
+    @Resource
+    private IBalanceUsageRecordService balanceUsageRecordService;
 
 
 
@@ -1207,14 +1210,18 @@
             }
             if(payType == 3){//余额支付
                 driver.setBalance(driver.getBalance() - money);
-                if(driver.getLaveBusinessMoney().compareTo(money) < 0){
-                    double b = money - driver.getLaveBusinessMoney();
+                Double laveBusinessMoney = driver.getLaveBusinessMoney();
+                if(laveBusinessMoney.compareTo(money) < 0){
+                    double b = money - laveBusinessMoney;
                     driver.setLaveBusinessMoney(0D);
                     driver.setLaveActivityMoney(driver.getLaveActivityMoney() - b);
                     driverService.updateById(driver);
+                    balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 1, b, orderType == 1 ? 1 : 2);
+                    balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 2, laveBusinessMoney, orderType == 1 ? 1 : 2);
                 }else{
                     driver.setLaveBusinessMoney(driver.getLaveBusinessMoney() - money);
                     driverService.updateById(driver);
+                    balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 2, money, orderType == 1 ? 1 : 2);
                 }
 
                 if(orderType == 1){//专车
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SettlementRecordServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SettlementRecordServiceImpl.java
index 662c4eb..c2738ae 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SettlementRecordServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/SettlementRecordServiceImpl.java
@@ -15,10 +15,12 @@
 import com.stylefeng.guns.modular.system.warpper.QueryHistoricalSettlement;
 import com.stylefeng.guns.modular.system.warpper.QuerySettlementAmount;
 import com.stylefeng.guns.modular.system.warpper.QuerySettlementAmountDetails;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -47,6 +49,9 @@
 
     @Value("${callbackPath}")
     private String callbackPath;//支付回调网关地址
+    
+    @Resource
+    private IBalanceUsageRecordService balanceUsageRecordService;
 
 
 
@@ -151,23 +156,40 @@
 
             Double laveActivityMoney = driver1.getLaveActivityMoney();
             Double laveBusinessMoney = driver1.getLaveBusinessMoney();
-            if(laveBusinessMoney.compareTo(payMoney) < 0){
-                driver1.setLaveBusinessMoney(0D);
-                BigDecimal m = new BigDecimal(payMoney).subtract(new BigDecimal(laveBusinessMoney));
-                driver1.setLaveActivityMoney(new BigDecimal(laveActivityMoney).subtract(m).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+            if(laveActivityMoney.compareTo(payMoney) < 0){
+                driver1.setLaveActivityMoney(0D);
+                BigDecimal m = new BigDecimal(payMoney).subtract(new BigDecimal(laveActivityMoney));
+                driver1.setLaveBusinessMoney(new BigDecimal(laveBusinessMoney).subtract(m).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                settlementRecord.setPayMoney(laveActivityMoney);
+                settlementRecord.setPaymentStatus(2);
+                settlementRecord.setPayType(payType);
+                settlementRecord.setBalanceType(1);
+                settlementRecord.setPayTime(new Date());
+                this.updateById(settlementRecord);
+                balanceUsageRecordService.saveBalanceUsageRecord(settlementRecord.getDriverId(), 1, laveActivityMoney, settlementRecord.getType() + 2);
+                balanceUsageRecordService.saveBalanceUsageRecord(settlementRecord.getDriverId(), 2, m.doubleValue(), settlementRecord.getType() + 2);
+    
+                SettlementRecord settlementRecord1 = new SettlementRecord();
+                BeanUtils.copyProperties(settlementRecord, settlementRecord1);
+                settlementRecord1.setId(null);
+                settlementRecord1.setPayMoney(m.doubleValue());
+                settlementRecord1.setBalanceType(2);
+                this.insert(settlementRecord1);
+                
             }else{
-                driver1.setLaveBusinessMoney(new BigDecimal(laveBusinessMoney).subtract(new BigDecimal(payMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                driver1.setLaveActivityMoney(new BigDecimal(laveActivityMoney).subtract(new BigDecimal(payMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
+                settlementRecord.setPaymentStatus(2);
+                settlementRecord.setPayType(payType);
+                settlementRecord.setBalanceType(1);
+                settlementRecord.setPayTime(new Date());
+                this.updateById(settlementRecord);
+                balanceUsageRecordService.saveBalanceUsageRecord(settlementRecord.getDriverId(), 1, payMoney, settlementRecord.getType() + 2);
             }
             driver1.setBalance(new BigDecimal(driver1.getBalance()).subtract(new BigDecimal(payMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
 
             //添加交易明细
             transactionDetailsService.saveData(driverId, "线下结算", payMoney, 2, 1, 2, null, null);
             driverService.updateById(driver1);
-
-            settlementRecord.setPaymentStatus(2);
-            settlementRecord.setPayType(payType);
-            settlementRecord.setPayTime(new Date());
-            this.updateById(settlementRecord);
             return ResultUtil.success("");
         }
         return resultUtil;
@@ -182,14 +204,37 @@
     @Override
     public List<QueryHistoricalSettlement> queryHistoricalSettlement(Integer language, Integer driverId, Integer pageNum, Integer size) {
         pageNum = (pageNum - 1) * size;
-        List<QueryHistoricalSettlement> list = this.baseMapper.queryHistoricalSettlement(driverId, pageNum, size);
-        for (QueryHistoricalSettlement queryHistoricalSettlement : list) {
-            if(ToolUtil.isNotEmpty(queryHistoricalSettlement.getCreateTime())){
-                String createTime = queryHistoricalSettlement.getCreateTime();
-                queryHistoricalSettlement.setCreateTime(DateUtil.conversionFormat(language, createTime));
+        List<Map<String, Object>> list = this.baseMapper.queryHistoricalSettlement(driverId, pageNum, size);
+        List<QueryHistoricalSettlement> datas = new ArrayList<>();
+        for (Map<String, Object> map : list) {
+            QueryHistoricalSettlement queryHistoricalSettlement = new QueryHistoricalSettlement();
+            if(null != map.get("createTime")){
+                queryHistoricalSettlement.setCreateTime(DateUtil.conversionFormat(language, map.get("createTime").toString()));
             }
+            if(null != map.get("price")){
+                queryHistoricalSettlement.setPrice(Double.valueOf(map.get("price").toString()));
+            }
+            if(null != map.get("type")){
+                queryHistoricalSettlement.setType(Integer.valueOf(map.get("type").toString()));
+            }
+            // TODO 待翻译
+            if(null != map.get("payType")){
+                Integer balanceType = Integer.valueOf(map.get("balanceType").toString());
+                switch (map.get("payType").toString()){
+                    case "1":
+                        queryHistoricalSettlement.setPayType(language == 1 ? "手机支付" : language == 2 ? "" : "");
+                        break;
+                    case "2":
+                        queryHistoricalSettlement.setPayType(language == 1 ? "线上支付" : language == 2 ? "" : "");
+                        break;
+                    default:
+                        queryHistoricalSettlement.setPayType(language == 1 ? "余额支付(" + (balanceType == 1 ? "奖励" : "收入") + ")" : language == 2 ? "" : "");
+                        break;
+                }
+            }
+            datas.add(queryHistoricalSettlement);
         }
-        return list;
+        return datas;
     }
 
 
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java
index 3e0f700..a2e6cc0 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/WithdrawalServiceImpl.java
@@ -7,6 +7,7 @@
 import com.stylefeng.guns.modular.system.model.Driver;
 import com.stylefeng.guns.modular.system.model.UserInfo;
 import com.stylefeng.guns.modular.system.model.Withdrawal;
+import com.stylefeng.guns.modular.system.service.IBalanceUsageRecordService;
 import com.stylefeng.guns.modular.system.service.IDriverService;
 import com.stylefeng.guns.modular.system.service.IWithdrawalService;
 import com.stylefeng.guns.modular.system.util.ResultUtil;
@@ -33,6 +34,9 @@
 
     @Autowired
     private IDriverService driverService;
+    
+    @Resource
+    private IBalanceUsageRecordService balanceUsageRecordService;
 
 
 
@@ -107,10 +111,12 @@
             driver.setLaveActivityMoney(v);
             v = new BigDecimal(driver.getBalance()).subtract(new BigDecimal(money)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
             driver.setBalance(v);
+            balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 1, money, 6);
         }
         if(type == 2){
             double v = new BigDecimal(driver.getLaveBusinessMoney()).subtract(new BigDecimal(money)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
             driver.setLaveBusinessMoney(v);
+            balanceUsageRecordService.saveBalanceUsageRecord(driver.getId(), 2, money, 6);
         }
         driverService.updateById(driver);
         return ResultUtil.success();
@@ -268,4 +274,15 @@
         }
         return ResultUtil.success();
     }
+    
+    /**
+     * 获取提现总额
+     * @param uid
+     * @return
+     * @throws Exception
+     */
+    @Override
+    public Double queryWithdrawalSum(Integer uid, Integer type) throws Exception {
+        return this.baseMapper.queryWithdrawalSum(uid, 2, type);
+    }
 }
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 945781e..0e782eb 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
@@ -233,7 +233,7 @@
             @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
             @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
     })
-    public ResultUtil<TravelRecordWarpper> queryMyTravelRecord(Integer pageNum, Integer size, Integer language, HttpServletRequest request){
+    public ResultUtil<List<TravelRecordListWarpper>> queryMyTravelRecord(Integer pageNum, Integer size, Integer language, HttpServletRequest request){
         try {
             Integer uid = userInfoService.getUserIdFormRedis(request);
             if(null == uid){
@@ -288,10 +288,10 @@
             }else{
                 orderWarpper = new ArrayList<>();
             }
-            TravelRecordWarpper travelRecordWarpper = new TravelRecordWarpper();
-            travelRecordWarpper.setList(orderWarpper);
-            travelRecordWarpper.setTotal(sum);
-            return ResultUtil.success(travelRecordWarpper);
+            orderWarpper.forEach(s->{
+                s.setTotal(sum);
+            });
+            return ResultUtil.success(orderWarpper);
         }catch (Exception e){
             e.printStackTrace();
             return ResultUtil.runErr();
@@ -1045,9 +1045,12 @@
                 return ResultUtil.tokenErr();
             }
             Map<String, Object> map = new HashMap<>();
+            Double payMoney = 0D;
             switch (orderType){
                 case 1:
                     map = orderPrivateCarService.queryBalance(orderId, uid);
+                    OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
+                    payMoney = orderPrivateCar.getPayMoney();
                     break;
 //                case 2:
 //                    map = orderTaxiService.queryBalance(orderId, uid);
@@ -1057,11 +1060,22 @@
 //                    break;
                 case 4:
                     map = orderLogisticsService.queryBalance(orderId, uid);
+                    OrderLogistics orderLogistics = orderLogisticsService.selectById(orderId);
+                    payMoney = orderLogistics.getPayMoney();
                     break;
 //                case 5:
 //                    map = orderLogisticsService.queryBalance(orderId, uid);
 //                    break;
             }
+            Double aDouble = userRedPacketRecordService.queryRemainingAmount(uid);
+            map.put("redTotal", aDouble);
+            RedEnvelopePaymentSettings redEnvelopePaymentSettings = redEnvelopePaymentSettingsService.getRedEnvelopePaymentSettings();
+            if(null == redEnvelopePaymentSettings){
+                map.put("deductionAmount", 0D);
+            }else{
+                Double deductionAmount = new BigDecimal(payMoney).multiply(redEnvelopePaymentSettings.getDeductionRatio().divide(new BigDecimal(100))).doubleValue();
+                map.put("deductionAmount", deductionAmount);
+            }
             return ResultUtil.success(map);
         }catch (Exception e){
             e.printStackTrace();
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java
index ffbc64e..4fbb254 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/model/OrderLogistics.java
@@ -404,6 +404,7 @@
     @TableField("destination")
     private String destination;
     private Integer isplatPay;
+    @TableField(exist = false)
     private BigDecimal freeMoney;
     /**
      * 补差价金额
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
index 11229d8..80bb72f 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/UserInfoServiceImpl.java
@@ -1939,7 +1939,7 @@
         UserInfo userInfo = this.selectById(query.getUserId());
         if(null != query){
             //添加交易明细
-            transactionDetailsService.saveData(Integer.valueOf(query.getUserId()), "余额充值", query.getAmount(), 2, 1, 1, 5, null);
+            transactionDetailsService.saveData(Integer.valueOf(query.getUserId()), "余额充值", query.getAmount(), 2, 1, 1, 5, paymentRecordId);
             double v = new BigDecimal(userInfo.getBalance()).add(new BigDecimal(query.getAmount())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
             userInfo.setBalance(v);
             this.updateById(userInfo);
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderTimeInfo.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderTimeInfo.java
index 0288d75..7e2fb4f 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderTimeInfo.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/warpper/OrderTimeInfo.java
@@ -11,7 +11,7 @@
 @Data
 @ApiModel
 public class OrderTimeInfo {
-	@ApiModelProperty("截单时间")
+	@ApiModelProperty("接单时间")
 	private String snatchOrderTime;
 	@ApiModelProperty("取件时间")
 	private String startServiceTime;

--
Gitblit v1.7.1