From 246927e112edb4ad77278a5442275aad1c3d3d2d Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 09 十月 2024 11:45:35 +0800
Subject: [PATCH] 2.0bug修改

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java |   70 ++++++++++++++++++++++++++---------
 1 files changed, 52 insertions(+), 18 deletions(-)

diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
index 313d3ba..8ff8b9d 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
@@ -27,6 +27,7 @@
 import java.math.BigInteger;
 import java.text.SimpleDateFormat;
 import java.time.*;
+import java.time.format.DateTimeFormatter;
 import java.time.temporal.TemporalAdjusters;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -276,7 +277,7 @@
             between4 = new EntityWrapper<BalanceUsageRecord>()
                     .ne("purpose", 6)
                     .between("createTime", start, end);
-            // 司机提现
+
 
         }
         // 司机提现wrapper
@@ -367,13 +368,19 @@
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(userRedPacketRecord.getInsertTime()));
             grantVO.setType("红包");
-            JSONArray objects = JSONArray.parseArray(userRedPacketRecord.getRedPacketId());
-            BigDecimal temp = new BigDecimal(BigInteger.ZERO);
-            for (int i = 0; i < objects.size(); i++) {
-                String string = objects.getJSONObject(i).getString("money");
-                temp = temp.add(new BigDecimal(string));
+//            JSONArray objects = JSONArray.parseArray(userRedPacketRecord.getRedPacketId());
+//            BigDecimal temp = new BigDecimal(BigInteger.ZERO);
+//            for (int i = 0; i < objects.size(); i++) {
+//                String string = objects.getJSONObject(i).getString("money");
+//                temp = temp.add(new BigDecimal(string));
+//            }
+            if (userRedPacketRecord.getRedPacketMoney()==null){
+                continue;
             }
-            grantVO.setAmount(temp.toString());
+            if (userRedPacketRecord.getRedPacketMoney().compareTo(new BigDecimal("0"))==0){
+                continue;
+            }
+            grantVO.setAmount(userRedPacketRecord.getRedPacketMoney().toString());
             TUser tUser = appUserService.selectById(userRedPacketRecord.getUserId());
             if (tUser!=null){
                 grantVO.setName(tUser.getNickName());
@@ -478,10 +485,18 @@
             res.add(grantVO);
         }
 
+
         // 总额
         total = total.add(redPackage).add(coupon).add(discount).add(driverConsume).add(driverWithdrawal1);
         // 已使用司机奖励合计
         driver = driverConsume.add(driverWithdrawal1);
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        // 对集合进行排序
+        res.sort((a, b) -> {
+            LocalDateTime timeA = LocalDateTime.parse(a.getInsertTime(), formatter);
+            LocalDateTime timeB = LocalDateTime.parse(b.getInsertTime(), formatter);
+            return timeA.compareTo(timeB);
+        });
         return res;
     }
 
@@ -586,13 +601,13 @@
         Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>()
                 ;
         // 司机提现
-        Wrapper<TPubWithdrawal> between44 = new EntityWrapper<TPubWithdrawal>()
+        Wrapper<BalanceUsageRecord> between44 = new EntityWrapper<BalanceUsageRecord>()
                 ;
         if (time == 5 && !StringUtils.hasLength(insertTime)){
             driverWrapper = new EntityWrapper<TPubWithdrawal>()
                     .eq("state", 2)
-                    .eq("userType", 2)
-            ;
+                    .eq("type",1)
+                    .eq("userType", 2);
             // 专车wrapper
             between = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("activityId")
@@ -622,6 +637,7 @@
         }else{
             driverWrapper = new EntityWrapper<TPubWithdrawal>()
                     .eq("state", 2)
+                    .eq("type",1)
                     .eq("userType", 2)
                     .between("insertTime", start, end);
             // 专车wrapper
@@ -674,6 +690,7 @@
                     // 司机消费记录
                     balanceUsageRecords = balanceUsageRecordService.selectList(between4);
 
+                    // 司机提现记录
                     driverWithdrawal = pubWithdrawalService.selectList(driverWrapper);
                     break;
                 case 4:
@@ -697,7 +714,7 @@
             // 消费
             balanceUsageRecords = balanceUsageRecordService.selectList(between4);
             // 提现
-            driverWithdrawal = pubWithdrawalService.selectList(between44);
+            driverWithdrawal = pubWithdrawalService.selectList(driverWrapper);
         }
 
         // 已发放补贴总额
@@ -756,19 +773,25 @@
             grantVO.setInsertTime(format.format(userRedPacketRecord.getInsertTime()));
             grantVO.setType("红包");
             JSONArray objects = JSONArray.parseArray(userRedPacketRecord.getRedPacketId());
-            BigDecimal temp = new BigDecimal(BigInteger.ZERO);
-            for (int i = 0; i < objects.size(); i++) {
-                String string = objects.getJSONObject(i).getString("money");
-                temp = temp.add(new BigDecimal(string));
+//            BigDecimal temp = new BigDecimal(BigInteger.ZERO);
+//            for (int i = 0; i < objects.size(); i++) {
+//                String string = objects.getJSONObject(i).getString("money");
+//                temp = temp.add(new BigDecimal(string));
+//            }
+            if (userRedPacketRecord.getRedPacketMoney()==null){
+                continue;
             }
-            grantVO.setAmount(temp.toString());
+            if (userRedPacketRecord.getRedPacketMoney().compareTo(new BigDecimal("0"))==0){
+                continue;
+            }
+            grantVO.setAmount(userRedPacketRecord.getRedPacketMoney().toString());
             TUser tUser = appUserService.selectById(userRedPacketRecord.getUserId());
             if (tUser!=null){
                 grantVO.setName(tUser.getNickName());
             }
             grantVO.setRemark("订单号:"+userRedPacketRecord.getOrderNum());
             res.add(grantVO);
-            redPackage = redPackage.add(new BigDecimal(temp.toString()));
+            redPackage = redPackage.add(userRedPacketRecord.getRedPacketMoney());
         }
         for (TOrderLogistics userRedPacketRecord : userRedPacketRecords1) {
             if (userRedPacketRecord.getState() != 9 &&userRedPacketRecord.getState() != 8){
@@ -880,7 +903,7 @@
         // 已使用司机奖励合计
         driver = driverConsume.add(driverWithdrawal1);
         UseMoneyVO useMoneyVO = new UseMoneyVO();
-        useMoneyVO.setTotal(total);
+        useMoneyVO.setTotal(total.add(driver));
         useMoneyVO.setDiscount(discount);
         useMoneyVO.setRedPackage(redPackage);
         useMoneyVO.setCoupon(coupon);
@@ -890,6 +913,8 @@
         return useMoneyVO;
     }
 
+    @Autowired
+    private ISysRedPacketRecordService sysRedPacketRecordService;
     /**
      * 发放补贴统计
      */
@@ -1004,6 +1029,7 @@
                     ;
             // 红包领取记录wrapper
             between3 = new EntityWrapper<UserRedPacketRecord>()
+                    .ne("state",0)
                     ;
             // 司机奖励
             between4 = new EntityWrapper<DriverActivityHistory>()
@@ -1027,6 +1053,7 @@
                     .between("insertTime", start, end);
             // 红包领取记录wrapper
             between3 = new EntityWrapper<UserRedPacketRecord>()
+                    .ne("state",0)
                     .between("insertTime", start, end);
             // 司机奖励
             between4 = new EntityWrapper<DriverActivityHistory>()
@@ -1134,6 +1161,11 @@
             if (tUser!=null){
                 grantVO.setName(tUser.getNickName());
             }
+            if (userRedPacketRecord.getIsGrant() == 1){
+                // 后台发放的红包
+                grantVO.setRemark("指定发放");
+            }
+
             UserActivityRedenvelope userActivityRedenvelope =
                     userActivityRedenvelopeService.selectById(userRedPacketRecord.getRedPacketActivityId());
             if (userActivityRedenvelope!=null){
@@ -1307,6 +1339,7 @@
             ;
             // 红包领取记录wrapper
             between3 = new EntityWrapper<UserRedPacketRecord>()
+                    .ne("state",0)
             ;
             // 司机奖励
             between4 = new EntityWrapper<DriverActivityHistory>()
@@ -1330,6 +1363,7 @@
                     .between("insertTime", start, end);
             // 红包领取记录wrapper
             between3 = new EntityWrapper<UserRedPacketRecord>()
+                    .ne("state",0)
                     .between("insertTime", start, end);
             // 司机奖励
             between4 = new EntityWrapper<DriverActivityHistory>()

--
Gitblit v1.7.1