From f85ea638d98b302c590e65f00e6912d91601613c Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期六, 09 十一月 2024 15:53:53 +0800
Subject: [PATCH] 修改bug

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java |  177 ++++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 102 insertions(+), 75 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 2a82173..d7c9a39 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
@@ -211,33 +211,50 @@
             // 专车wrapper
             between = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("activityId")
-                    .isNotNull("discountMoney");
+                    .isNotNull("discountMoney")
+                    .between("insertTime", start, end);
+
             // 小件物流wrapper
             between1 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("activityId")
-                    .isNotNull("discountMoney");
+                    .isNotNull("discountMoney")
+                    .between("insertTime", start, end);
+
             // 已使用优惠券记录wrapper
            between2 = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("couponId")
-                    .isNotNull("couponMoney");
+                    .isNotNull("couponMoney")
+                   .between("insertTime", start, end);
+
             between22 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("couponId")
-                    .isNotNull("couponMoney");
+                    .isNotNull("couponMoney")
+                    .between("insertTime", start, end);
+
             // 已使用红包记录wrapper
             between3 = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("redPacketId")
-                    .isNotNull("redPacketMoney");
+                    .isNotNull("redPacketMoney")
+                    .between("insertTime", start, end);
+
             between33 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("redPacketId")
-                    .isNotNull("redPacketMoney");
+                    .isNotNull("redPacketMoney")
+                    .between("insertTime", start, end);
+
             // 司机已消费金额
             between4 = new EntityWrapper<BalanceUsageRecord>()
-                    .ne("purpose", 6);
+                    .eq("type",1)
+                    .ne("purpose", 6)
+                    .between("insertTime", start, end);
+
             // 司机提现
             driverWrapper = new EntityWrapper<TPubWithdrawal>()
                     .eq("state", 2)
                     .eq("type",1)
                     .eq("userType", 2)
+                    .between("insertTime", start, end);
+
             ;
         }else{
             driverWrapper = new EntityWrapper<TPubWithdrawal>()
@@ -276,6 +293,7 @@
             // 司机已消费金额
             between4 = new EntityWrapper<BalanceUsageRecord>()
                     .ne("purpose", 6)
+                    .eq("type",1)
                     .between("createTime", start, end);
 
 
@@ -368,13 +386,13 @@
             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));
+            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());
@@ -387,13 +405,13 @@
             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));
+            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());
@@ -573,6 +591,7 @@
         List<BalanceUsageRecord> balanceUsageRecords = new ArrayList<>();
         // 司机提现
         List<TPubWithdrawal> driverWithdrawal = new ArrayList<>();
+
         Wrapper<TPubWithdrawal> driverWrapper = new EntityWrapper<TPubWithdrawal>()
                 ;
         // 专车wrapper
@@ -594,40 +613,55 @@
         // 司机已消费金额
         Wrapper<BalanceUsageRecord> between4 = new EntityWrapper<BalanceUsageRecord>()
                 ;
-        // 司机提现
-        Wrapper<BalanceUsageRecord> between44 = new EntityWrapper<BalanceUsageRecord>()
-                ;
         if (time == 5 && !StringUtils.hasLength(insertTime)){
-            driverWrapper = new EntityWrapper<TPubWithdrawal>()
-                    .eq("state", 2)
-                    .eq("type",1)
-                    .eq("userType", 2);
             // 专车wrapper
             between = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("activityId")
-                    .isNotNull("discountMoney");
+                    .isNotNull("discountMoney")
+                    .between("insertTime", start, end);
+
             // 小件物流wrapper
             between1 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("activityId")
-                    .isNotNull("discountMoney");
+                    .isNotNull("discountMoney")
+                    .between("insertTime", start, end);
+
             // 已使用优惠券记录wrapper
             between2 = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("couponId")
-                    .isNotNull("couponMoney");
+                    .isNotNull("couponMoney")
+                    .between("insertTime", start, end);
+
             between22 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("couponId")
-                    .isNotNull("couponMoney");
+                    .isNotNull("couponMoney")
+                    .between("insertTime", start, end);
+
             // 已使用红包记录wrapper
             between3 = new EntityWrapper<TOrderPrivateCar>()
                     .isNotNull("redPacketId")
-                    .isNotNull("redPacketMoney");
+                    .isNotNull("redPacketMoney")
+                    .between("insertTime", start, end);
+
             between33 = new EntityWrapper<TOrderLogistics>()
                     .isNotNull("redPacketId")
-                    .isNotNull("redPacketMoney");
+                    .isNotNull("redPacketMoney")
+                    .between("insertTime", start, end);
+
             // 司机已消费金额
             between4 = new EntityWrapper<BalanceUsageRecord>()
-                    .ne("purpose", 6);
+                    .eq("type",1)
+                    .ne("purpose", 6)
+                    .between("insertTime", start, end);
 
+            // 司机提现
+            driverWrapper = new EntityWrapper<TPubWithdrawal>()
+                    .eq("state", 2)
+                    .eq("type",1)
+                    .eq("userType", 2)
+                    .between("insertTime", start, end);
+
+            ;
         }else{
             driverWrapper = new EntityWrapper<TPubWithdrawal>()
                     .eq("state", 2)
@@ -665,9 +699,12 @@
             // 司机已消费金额
             between4 = new EntityWrapper<BalanceUsageRecord>()
                     .ne("purpose", 6)
+                    .eq("type",1)
                     .between("createTime", start, end);
-        }
 
+
+        }
+        // 司机提现wrapper
         if (type!=null){
             switch (type){
                 case 1:
@@ -683,8 +720,6 @@
                 case 3:
                     // 司机消费记录
                     balanceUsageRecords = balanceUsageRecordService.selectList(between4);
-
-                    // 司机提现记录
                     driverWithdrawal = pubWithdrawalService.selectList(driverWrapper);
                     break;
                 case 4:
@@ -727,9 +762,6 @@
         BigDecimal driverWithdrawal1 = new BigDecimal("0");
         // 查询已使用折扣总额
         for (TOrderPrivateCar tOrderPrivateCar : tOrderPrivateCars) {
-            if (tOrderPrivateCar.getState() != 9 &&tOrderPrivateCar.getState() != 8){
-                continue;
-            }
             discount = discount.add(new BigDecimal(tOrderPrivateCar.getDiscountMoney().toString()));
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
@@ -743,9 +775,6 @@
             res.add(grantVO);
         }
         for (TOrderLogistics tOrderPrivateCar : tOrderLogistics) {
-            if (tOrderPrivateCar.getState() != 9 &&tOrderPrivateCar.getState() != 8){
-                continue;
-            }
             discount = discount.add(new BigDecimal(tOrderPrivateCar.getDiscountMoney().toString()));
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
@@ -758,56 +787,53 @@
             grantVO.setRemark("订单号:"+tOrderPrivateCar.getOrderNum());
             res.add(grantVO);
         }
-        // 查询已领取红包总额
+        // 查询已使用红包总额
         for (TOrderPrivateCar userRedPacketRecord : userRedPacketRecords) {
-            if (userRedPacketRecord.getState() != 9 &&userRedPacketRecord.getState() != 8){
-                continue;
-            }
             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());
             }
             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){
-                continue;
-            }
             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));
+            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(new BigDecimal(userRedPacketRecord.getPayMoney().toString()));
         }
         // 查询已领取优惠券总额
         for (TOrderPrivateCar userCouponRecord : userCouponRecords) {
-            if (userCouponRecord.getState() != 9 &&userCouponRecord.getState() != 8){
-                continue;
-            }
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(userCouponRecord.getInsertTime()));
             grantVO.setType("优惠券");
@@ -817,13 +843,10 @@
                 grantVO.setName(tUser.getNickName());
             }
             grantVO.setRemark("订单号:"+userCouponRecord.getOrderNum());
-            coupon = coupon.add(new BigDecimal(userCouponRecord.getCouponMoney().toString()));
+            coupon = coupon.add(new BigDecimal(userCouponRecord.getPayMoney().toString()));
             res.add(grantVO);
         }
         for (TOrderLogistics userCouponRecord : userCouponRecords1) {
-            if (userCouponRecord.getState() != 9 &&userCouponRecord.getState() != 8){
-                continue;
-            }
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(userCouponRecord.getInsertTime()));
             grantVO.setType("优惠券");
@@ -833,12 +856,11 @@
                 grantVO.setName(tUser.getNickName());
             }
             grantVO.setRemark("订单号:"+userCouponRecord.getOrderNum());
-            coupon = coupon.add(new BigDecimal(userCouponRecord.getCouponMoney().toString()));
+            coupon = coupon.add(new BigDecimal(userCouponRecord.getPayMoney().toString()));
             res.add(grantVO);
         }
         // 司机消费奖励
         for (BalanceUsageRecord balanceUsageRecord : balanceUsageRecords) {
-
             GrantVO grantVO = new GrantVO();
             grantVO.setInsertTime(format.format(balanceUsageRecord.getCreateTime()));
             grantVO.setType("司机奖励");
@@ -886,12 +908,14 @@
             driverWithdrawal1 = driverWithdrawal1.add(new BigDecimal(balanceUsageRecord.getMoney().toString()));
             res.add(grantVO);
         }
+
+
         // 总额
         total = total.add(redPackage).add(coupon).add(discount).add(driverConsume).add(driverWithdrawal1);
         // 已使用司机奖励合计
         driver = driverConsume.add(driverWithdrawal1);
         UseMoneyVO useMoneyVO = new UseMoneyVO();
-        useMoneyVO.setTotal(total.add(driver));
+        useMoneyVO.setTotal(total);
         useMoneyVO.setDiscount(discount);
         useMoneyVO.setRedPackage(redPackage);
         useMoneyVO.setCoupon(coupon);
@@ -901,6 +925,8 @@
         return useMoneyVO;
     }
 
+    @Autowired
+    private ISysRedPacketRecordService sysRedPacketRecordService;
     /**
      * 发放补贴统计
      */
@@ -1147,10 +1173,11 @@
             if (tUser!=null){
                 grantVO.setName(tUser.getNickName());
             }
-            if (userRedPacketRecord.getRedPacketActivityId() == null){
+            if (userRedPacketRecord.getIsGrant() == 1){
                 // 后台发放的红包
-                grantVO.setRemark("后台指定派发");
+                grantVO.setRemark("指定发放");
             }
+
             UserActivityRedenvelope userActivityRedenvelope =
                     userActivityRedenvelopeService.selectById(userRedPacketRecord.getRedPacketActivityId());
             if (userActivityRedenvelope!=null){

--
Gitblit v1.7.1