From 7f3ba0b58c0dc60d18bd25edfab97877c801c0ab Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 14 十一月 2024 17:09:58 +0800
Subject: [PATCH] 2.0bug修改

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java |  438 +++++++++++++++++++++++++++++-------------------------
 1 files changed, 233 insertions(+), 205 deletions(-)

diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
index 64bd2dd..af20a78 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
@@ -128,7 +128,7 @@
             LocalDate e = LocalDate.parse(endTime);
             start = s.atStartOfDay();
             end = e.atTime(LocalTime.MAX);
-        }else if (time!=null) {
+        }else{
             switch (time) {
                 case 1:
                     // 获取当天的 00:00:00 和 23:59:59
@@ -172,43 +172,45 @@
         }
         List<Income> incomes = new ArrayList<>();
         List<SettlementDetail> settlementDetails = new ArrayList<>();
-        if (time == null){
+        if (time == 5 && !StringUtils.hasLength(insertTime)){
             incomes = tIncomeService.selectList(new EntityWrapper<Income>()
                     .eq("userType", 1)
                     .eq("objectId",1)
                     .ne("type", 1)
                     .isNotNull("orderType"));
         }else{
-            if (time == 5 && !StringUtils.hasLength(insertTime)){
-                incomes = tIncomeService.selectList(new EntityWrapper<Income>()
-                        .eq("userType", 1)
-                        .eq("objectId",1)
-                        .ne("type", 1)
-                        .isNotNull("orderType"));
-            }else{
-                incomes = tIncomeService.selectList(new EntityWrapper<Income>()
-                        .eq("userType", 1)
-                        .eq("objectId",1)
-                        .ne("type", 1)
-                        .isNotNull("orderType")
-                        .between("insertTime", start, end));
-            }
-
+            incomes = tIncomeService.selectList(new EntityWrapper<Income>()
+                    .eq("userType", 1)
+                    .eq("objectId",1)
+                    .ne("type", 1)
+                    .isNotNull("orderType")
+                    .between("insertTime", start, end));
         }
+
+        EntityWrapper<SettlementDetail> settlementDetailEntityWrapper = new EntityWrapper<>();
+        settlementDetailEntityWrapper.between("createTime", start, end);
+        if (state!=null && state == 2){
+            settlementDetailEntityWrapper.eq("paymentStatus", 2);
+        }
+        if (time == 5 && !StringUtils.hasLength(insertTime)){
+
+        }else{
+            settlementDetailEntityWrapper.between("createTime", start, end);
+        }
+        settlementDetails = settlementDetailService.selectList(settlementDetailEntityWrapper);
         List<PlatformVO> res = new ArrayList<>();
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Map<Integer, TDriver> driverMap = driverService.selectList(new EntityWrapper<TDriver>())
+                .stream()
+                .collect(Collectors.toMap(TDriver::getId, user -> user));
+        Map<Integer, SettlementRecord> settlementRecordMap = settlementRecordService.selectList(new EntityWrapper<SettlementRecord>())
+                .stream()
+                .collect(Collectors.toMap(SettlementRecord::getId, user -> user));
         // 已结算金额
         BigDecimal balance = new BigDecimal("0");
         // 未结算金额
         BigDecimal unBalance = new BigDecimal("0");
-        // 查询订单是否已结算
-
-        // 专车订单结算明细
-        List<SettlementDetail> privateCar = settlementDetails.stream().filter(t -> t.getOrderType() == 1).collect(Collectors.toList());
-        // 小件物流结算明细
-        List<SettlementDetail> xjwl = settlementDetails.stream().filter(t -> t.getOrderType() == 4).collect(Collectors.toList());
-
-        // 查询已结算的订单
+        // 查询所有已结算的订单
         for (Income income : incomes) {
             PlatformVO platformVO = new PlatformVO();
             platformVO.setState(1);
@@ -218,42 +220,19 @@
                         continue;
                     }
                     // 查询订单信息
-                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(income.getIncomeId());
+//                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(income.getIncomeId());
+                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>()
+                            .eq("id", income.getIncomeId())
+                            .between("insertTime", start, end));
+
                     if (tOrderPrivateCar==null){
                         continue;
                     }
-                    platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
-                    if (tDriver != null){
-                        platformVO.setDriverName(tDriver.getFirstName()+tDriver.getLastName());
-                        platformVO.setDriverPhone(tDriver.getPhone());
-                    }
-                    platformVO.setRemark(tOrderPrivateCar.getRemark());
-                    if (income.getInsertTime()!=null){
-                        platformVO.setEndTime(format.format(income.getInsertTime()));
-                    }
-                    platformVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
-                    String string = income.getMoney().toString();
-                    BigDecimal bigDecimal1 = new BigDecimal(string);
-                    platformVO.setMoney(bigDecimal1);
-                    if (tOrderPrivateCar.getPayType() == null){
+
+                    platformVO.setMoney(new BigDecimal(income.getMoney()));
+                    if (tOrderPrivateCar.getState()!=10 && tOrderPrivateCar.getPayType() == null){
                         continue;
                     }
-                    switch (tOrderPrivateCar.getPayType()){
-                        case 1:
-                            platformVO.setPayType("手机支付");
-                            break;
-                        case 2:
-                            platformVO.setPayType("银行卡支付");
-                            break;
-                        case 3:
-                            platformVO.setPayType("余额支付");
-                            break;
-                        case 4:
-                            platformVO.setPayType("现金支付");
-                            break;
-                    }
-
                     // 专车订单
                     balance = balance.add(new BigDecimal(income.getMoney()));
                     res.add(platformVO);
@@ -264,80 +243,45 @@
                     }
                     // 小件物流
                     // 查询订单信息
-                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(income.getIncomeId());
+//                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(income.getIncomeId());
+                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectOne(new EntityWrapper<TOrderLogistics>()
+                            .eq("id", income.getIncomeId())
+                            .between("insertTime", start, end));
                     if (tOrderLogistics==null){
                         continue;
                     }
-                    platformVO.setCode(tOrderLogistics.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics.getDriverId());
-                    if (tDriver1!=null){
-                        platformVO.setDriverName(tDriver1.getFirstName()+tDriver1.getLastName());
-                        platformVO.setDriverPhone(tDriver1.getPhone());
-                    }
 
-                    platformVO.setRemark(tOrderLogistics.getRemark());
                     platformVO.setMoney(new BigDecimal(income.getMoney()));
-                    if (income.getInsertTime()!=null){
-                        platformVO.setEndTime(format.format(income.getInsertTime()));
-                    }
-                    platformVO.setInsertTime(format.format(tOrderLogistics.getInsertTime()));
-                    if (tOrderLogistics.getPayType() == null){
+
+                    if (tOrderLogistics.getState()!=10 && tOrderLogistics.getPayType() == null){
                         continue;
                     }
-                    switch (tOrderLogistics.getPayType()){
-                        case 1:
-                            platformVO.setPayType("手机支付");
-                            break;
-                        case 2:
-                            platformVO.setPayType("银行卡支付");
-                            break;
-                        case 3:
-                            platformVO.setPayType("余额支付");
-                            break;
-                        case 4:
-                            platformVO.setPayType("现金支付");
-                            break;
-                    }
-
                     // 专车订单
                     balance = balance.add(new BigDecimal(income.getMoney()));
                     res.add(platformVO);
                     break;
             }
         }
-
-        EntityWrapper<SettlementDetail> settlementDetailEntityWrapper = new EntityWrapper<>();
-        if (time == 5 && !StringUtils.hasLength(insertTime)){
-
-        }else{
-            settlementDetailEntityWrapper.between("createTime", start, end);
-        }
-        settlementDetails = settlementDetailService.selectList(settlementDetailEntityWrapper);
-        // 查询所有现金支付的订单 再根据结算主表判断是否已结算
+        // 查询所有现金支付的订单
         for (SettlementDetail settlementDetail : settlementDetails) {
             PlatformVO platformVO = new PlatformVO();
             switch (settlementDetail.getOrderType()){
                 case 1:
-
                     // 专车订单
-                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(settlementDetail.getOrderId());
+//                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(settlementDetail.getOrderId());
+                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>()
+                            .eq("id", settlementDetail.getOrderId())
+                            .between("insertTime", start, end));
                     if (tOrderPrivateCar==null){
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
-                    if (tDriver!=null){
-                        platformVO.setDriverName(tDriver.getFirstName()+tDriver.getLastName());
-                        platformVO.setDriverPhone(tDriver.getPhone());
-                    }
-                    platformVO.setRemark(tOrderPrivateCar.getRemark());
-                    platformVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
+
                     String string = settlementDetail.getPrice().toString();
                     BigDecimal bigDecimal1 = new BigDecimal(string);
                     platformVO.setMoney(bigDecimal1);
-                    platformVO.setPayType("现金支付");
                     if (settlementDetail.getSettlementRecordId()!=null){
-                        SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId());
+                        SettlementRecord settlementRecord = settlementRecordMap.get(settlementDetail.getSettlementRecordId());
                         if (settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus()==2){
                             if (state!=null && state!=1){
                                 continue;
@@ -345,7 +289,7 @@
                             // 已结算
                             platformVO.setState(1);
                             balance = balance.add(new BigDecimal(settlementDetail.getPrice()));
-                            platformVO.setEndTime(format.format(settlementRecord.getDay()));
+                            platformVO.setEndTime(format.format(settlementRecord.getPayTime()));
                         }else{
                             // 未结算
                             if (state!=null && state!=2){
@@ -353,7 +297,6 @@
                             }
                             platformVO.setState(2);
                             unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice()));
-                            platformVO.setEndTime(format.format(settlementRecord.getDay()));
                         }
                     }else{
                         // 未结算
@@ -362,30 +305,23 @@
                         }
                         unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice()));
                     }
-
                     res.add(platformVO);
                     break;
                 case 4:
                     // 小件物流
                     // 查询订单信息
-                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(settlementDetail.getOrderId());
+//                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(settlementDetail.getOrderId());
+                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectOne(new EntityWrapper<TOrderLogistics>()
+                            .eq("id", settlementDetail.getOrderId())
+                            .between("insertTime", start, end));
                     if (tOrderLogistics==null){
                         continue;
                     }
-                    platformVO.setCode(tOrderLogistics.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics.getDriverId());
-                    if (tDriver1!=null){
-                        platformVO.setDriverName(tDriver1.getFirstName()+tDriver1.getLastName());
-                        platformVO.setDriverPhone(tDriver1.getPhone());
-                    }
-                    platformVO.setRemark(tOrderLogistics.getRemark());
                     String string1 = settlementDetail.getPrice().toString();
                     BigDecimal bigDecimal2 = new BigDecimal(string1);
                     platformVO.setMoney(bigDecimal2);
-                    platformVO.setInsertTime(format.format(tOrderLogistics.getInsertTime()));
-                    platformVO.setPayType("现金支付");
                     if (settlementDetail.getSettlementRecordId()!=null){
-                        SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId());
+                        SettlementRecord settlementRecord = settlementRecordMap.get(settlementDetail.getSettlementRecordId());
                         if (settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus()==2){
                             if (state!=null && state!=1){
                                 continue;
@@ -660,7 +596,18 @@
         // 用户提现金额
         BigDecimal userWithdrawal = new BigDecimal("0");
         // 用户订单消费
-
+        Map<Integer, TUser> userMap = appUserService.selectList(new EntityWrapper<TUser>())
+                .stream()
+                .collect(Collectors.toMap(TUser::getId, user1 -> user1));
+        Map<Integer, TDriver> driverMap = driverService.selectList(new EntityWrapper<TDriver>())
+                .stream()
+                .collect(Collectors.toMap(TDriver::getId, user1 -> user1));
+        Map<Integer, PaymentRecord> paymentRecordMap = paymentRecordService.selectList(new EntityWrapper<PaymentRecord>())
+                .stream()
+                .collect(Collectors.toMap(PaymentRecord::getId, user1 -> user1));
+        Map<Integer, SettlementRecord> settlementRecordMap = settlementRecordService.selectList(new EntityWrapper<SettlementRecord>())
+                .stream()
+                .collect(Collectors.toMap(SettlementRecord::getId, user1 -> user1));
         // 用户订单消费
         for (TOrderPrivateCar tOrderPrivateCar : tOrderPrivateCars) {
             if (payType!=null){
@@ -684,7 +631,7 @@
             waterVO.setCode(tOrderPrivateCar.getOrderNum());
             String string = tOrderPrivateCar.getPayMoney().toString();
             waterVO.setMoney(new BigDecimal(string)+"");
-            TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
+            TUser user1 = userMap.get(tOrderPrivateCar.getUserId());
             if (user1!=null){
                 waterVO.setName(user1.getNickName());
                 waterVO.setPhone(user1.getPhone());
@@ -709,7 +656,7 @@
             waterVO.setCode(tOrderLogistic.getOrderNum());
             String string = tOrderLogistic.getPayMoney().toString();
             waterVO.setMoney(new BigDecimal(string)+"");
-            TUser user2 = appUserService.selectById(tOrderLogistic.getUserId());
+            TUser user2 = userMap.get(tOrderLogistic.getUserId());
             if (user2!=null){
                 waterVO.setName(user2.getNickName());
                 waterVO.setPhone(user2.getPhone());
@@ -728,7 +675,6 @@
             }
             res.add(waterVO);
             userConsume = userConsume.add(new BigDecimal(waterVO.getMoney()));
-            break;
         }
         for (OrderCancel orderCancel : orderCancels) {
             WaterVO waterVO = new WaterVO();
@@ -760,7 +706,7 @@
                     waterVO.setCode(tOrderPrivateCar.getOrderNum());
                     String string = orderCancel.getMoney().toString();
                     waterVO.setMoney(new BigDecimal(string)+"");
-                    TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
+                    TUser user1 = userMap.get(tOrderPrivateCar.getUserId());
                     if (user1!=null){
                         waterVO.setName(user1.getNickName());
                         waterVO.setPhone(user1.getPhone());
@@ -783,7 +729,7 @@
                     waterVO1.setCode(tOrderLogistics1.getOrderNum());
                     String string1 = orderCancel.getMoney().toString();
                     waterVO1.setMoney(new BigDecimal(string1)+"");
-                    TUser user2 = appUserService.selectById(tOrderLogistics1.getUserId());
+                    TUser user2 = userMap.get(tOrderLogistics1.getUserId());
                     if (user2!=null){
                         waterVO1.setName(user2.getNickName());
                         waterVO1.setPhone(user2.getPhone());
@@ -819,7 +765,7 @@
             WaterVO waterVO = new WaterVO();
             waterVO.setInsertTime(format.format(tPubWithdrawal.getHandleTime()));
             waterVO.setCode(tPubWithdrawal.getCode());
-            TDriver tDriver = driverService.selectById(tPubWithdrawal.getUserId());
+            TDriver tDriver = driverMap.get(tPubWithdrawal.getUserId());
             if (tDriver!=null){
                 waterVO.setName(tDriver.getFirstName()+tDriver.getLastName());
                 waterVO.setPhone(tDriver.getPhone());
@@ -844,7 +790,7 @@
             WaterVO waterVO = new WaterVO();
             waterVO.setInsertTime(format.format(tPubWithdrawal.getHandleTime()));
             waterVO.setCode(tPubWithdrawal.getCode());
-            TUser user2 = appUserService.selectById(tPubWithdrawal.getUserId());
+            TUser user2 = userMap.get(tPubWithdrawal.getUserId());
             if (user2!=null){
                 waterVO.setName(user2.getNickName());
                 waterVO.setPhone(user2.getPhone());
@@ -860,7 +806,8 @@
         for (TPubTransactionDetails tPubTransactionDetail : tPubTransactionDetails) {
             WaterVO waterVO = new WaterVO();
             Integer orderId = tPubTransactionDetail.getOrderId();
-            PaymentRecord paymentRecord = paymentRecordService.selectById(orderId);
+            PaymentRecord paymentRecord = paymentRecordMap.get(orderId);
+
             if (paymentRecord!=null){
                 if (paymentRecord.getState() == 1){
                     // 临时数据
@@ -902,7 +849,7 @@
                 continue;
             }
             if (paymentRecord.getUserId()!=null){
-                TUser user2 = appUserService.selectById(paymentRecord.getUserId());
+                TUser user2 = userMap.get(paymentRecord.getUserId());
                 if (user2!=null){
                     waterVO.setName(user2.getNickName());
                     waterVO.setPhone(user2.getPhone());
@@ -920,7 +867,7 @@
             platformVO.setType("司机结算");
             switch (income.getOrderType()){
                 case 1:
-                    SettlementRecord settlementRecord = settlementRecordService.selectById(income.getSettlementRecordId());
+                    SettlementRecord settlementRecord = settlementRecordMap.get(income.getSettlementRecordId());
                     if (settlementRecord!=null && settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus() == 2){
                         if (settlementRecord.getPayType()!=null){
                             switch (settlementRecord.getPayType()){
@@ -959,7 +906,7 @@
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
+                    TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver != null){
                         platformVO.setName(tDriver.getFirstName()+tDriver.getLastName());
                         platformVO.setPhone(tDriver.getPhone());
@@ -989,7 +936,7 @@
                 case 4:
                     // 小件物流
                     // 查询订单信息
-                    SettlementRecord settlementRecord1 = settlementRecordService.selectById(income.getSettlementRecordId());
+                    SettlementRecord settlementRecord1 = settlementRecordMap.get(income.getSettlementRecordId());
                     if (settlementRecord1!=null){
                         if (settlementRecord1.getPaymentStatus()!=null && settlementRecord1.getPaymentStatus() == 2){
                             switch (settlementRecord1.getPayType()){
@@ -1051,7 +998,7 @@
                         continue;
                     }
                     platformVO.setCode(tOrderLogistics1.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics1.getDriverId());
+                    TDriver tDriver1 = driverMap.get(tOrderLogistics1.getDriverId());
                     if (tDriver1!=null){
                         platformVO.setName(tDriver1.getFirstName()+tDriver1.getLastName());
                         platformVO.setPhone(tDriver1.getPhone());
@@ -1207,11 +1154,13 @@
             orderType = new EntityWrapper<TPubTransactionDetails>()
                     .eq("userType",1)
                     .eq("orderType", 5)
+
             ;
             // 用户提现wrapper
             userWrapper = new EntityWrapper<TPubWithdrawal>()
                     .eq("state", 2)
                     .eq("userType", 1)
+
             ;
             // 司机提现wrapper
             between = new EntityWrapper<TPubWithdrawal>()
@@ -1231,8 +1180,11 @@
                     .in("orderType", Arrays.asList(1, 4));
             // 用户取消订单费用
              orderCancelEntityWrapper.eq("state", 2)
+
                      .in("payType",integers)
-                    .eq("userType", 1);
+
+                    .eq("userType", 1)
+                     ;
         }else{
             orderType = new EntityWrapper<TPubTransactionDetails>()
                     .eq("orderType", 5)
@@ -1328,7 +1280,18 @@
         // 用户提现金额
         BigDecimal userWithdrawal = new BigDecimal("0");
         // 用户订单消费
-
+        Map<Integer, TUser> userMap = appUserService.selectList(new EntityWrapper<TUser>())
+                .stream()
+                .collect(Collectors.toMap(TUser::getId, user1 -> user1));
+        Map<Integer, TDriver> driverMap = driverService.selectList(new EntityWrapper<TDriver>())
+                .stream()
+                .collect(Collectors.toMap(TDriver::getId, user1 -> user1));
+        Map<Integer, PaymentRecord> paymentRecordMap = paymentRecordService.selectList(new EntityWrapper<PaymentRecord>())
+                .stream()
+                .collect(Collectors.toMap(PaymentRecord::getId, user1 -> user1));
+        Map<Integer, SettlementRecord> settlementRecordMap = settlementRecordService.selectList(new EntityWrapper<SettlementRecord>())
+                .stream()
+                .collect(Collectors.toMap(SettlementRecord::getId, user1 -> user1));
         // 用户订单消费
         for (TOrderPrivateCar tOrderPrivateCar : tOrderPrivateCars) {
             if (payType!=null){
@@ -1352,7 +1315,7 @@
             waterVO.setCode(tOrderPrivateCar.getOrderNum());
             String string = tOrderPrivateCar.getPayMoney().toString();
             waterVO.setMoney(new BigDecimal(string)+"");
-            TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
+            TUser user1 = userMap.get(tOrderPrivateCar.getUserId());
             if (user1!=null){
                 waterVO.setName(user1.getNickName());
                 waterVO.setPhone(user1.getPhone());
@@ -1377,7 +1340,7 @@
             waterVO.setCode(tOrderLogistic.getOrderNum());
             String string = tOrderLogistic.getPayMoney().toString();
             waterVO.setMoney(new BigDecimal(string)+"");
-            TUser user2 = appUserService.selectById(tOrderLogistic.getUserId());
+            TUser user2 = userMap.get(tOrderLogistic.getUserId());
             if (user2!=null){
                 waterVO.setName(user2.getNickName());
                 waterVO.setPhone(user2.getPhone());
@@ -1396,7 +1359,6 @@
             }
             res.add(waterVO);
             userConsume = userConsume.add(new BigDecimal(waterVO.getMoney()));
-            break;
         }
         for (OrderCancel orderCancel : orderCancels) {
             WaterVO waterVO = new WaterVO();
@@ -1428,7 +1390,7 @@
                     waterVO.setCode(tOrderPrivateCar.getOrderNum());
                     String string = orderCancel.getMoney().toString();
                     waterVO.setMoney(new BigDecimal(string)+"");
-                    TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
+                    TUser user1 = userMap.get(orderCancel.getUserId());
                     if (user1!=null){
                         waterVO.setName(user1.getNickName());
                         waterVO.setPhone(user1.getPhone());
@@ -1451,7 +1413,7 @@
                     waterVO1.setCode(tOrderLogistics1.getOrderNum());
                     String string1 = orderCancel.getMoney().toString();
                     waterVO1.setMoney(new BigDecimal(string1)+"");
-                    TUser user2 = appUserService.selectById(tOrderLogistics1.getUserId());
+                    TUser user2 = userMap.get(tOrderLogistics1.getUserId());
                     if (user2!=null){
                         waterVO1.setName(user2.getNickName());
                         waterVO1.setPhone(user2.getPhone());
@@ -1487,7 +1449,7 @@
             WaterVO waterVO = new WaterVO();
             waterVO.setInsertTime(format.format(tPubWithdrawal.getHandleTime()));
             waterVO.setCode(tPubWithdrawal.getCode());
-            TDriver tDriver = driverService.selectById(tPubWithdrawal.getUserId());
+            TDriver tDriver = driverMap.get(tPubWithdrawal.getUserId());
             if (tDriver!=null){
                 waterVO.setName(tDriver.getFirstName()+tDriver.getLastName());
                 waterVO.setPhone(tDriver.getPhone());
@@ -1512,7 +1474,7 @@
             WaterVO waterVO = new WaterVO();
             waterVO.setInsertTime(format.format(tPubWithdrawal.getHandleTime()));
             waterVO.setCode(tPubWithdrawal.getCode());
-            TUser user2 = appUserService.selectById(tPubWithdrawal.getUserId());
+            TUser user2 = userMap.get(tPubWithdrawal.getUserId());
             if (user2!=null){
                 waterVO.setName(user2.getNickName());
                 waterVO.setPhone(user2.getPhone());
@@ -1528,7 +1490,7 @@
         for (TPubTransactionDetails tPubTransactionDetail : tPubTransactionDetails) {
             WaterVO waterVO = new WaterVO();
             Integer orderId = tPubTransactionDetail.getOrderId();
-            PaymentRecord paymentRecord = paymentRecordService.selectById(orderId);
+            PaymentRecord paymentRecord = paymentRecordMap.get(orderId);
             if (paymentRecord!=null){
                 if (paymentRecord.getState() == 1){
                     // 临时数据
@@ -1570,7 +1532,7 @@
                 continue;
             }
             if (paymentRecord.getUserId()!=null){
-                TUser user2 = appUserService.selectById(paymentRecord.getUserId());
+                TUser user2 = userMap.get(paymentRecord.getUserId());
                 if (user2!=null){
                     waterVO.setName(user2.getNickName());
                     waterVO.setPhone(user2.getPhone());
@@ -1588,7 +1550,7 @@
             platformVO.setType("司机结算");
             switch (income.getOrderType()){
                 case 1:
-                    SettlementRecord settlementRecord = settlementRecordService.selectById(income.getSettlementRecordId());
+                    SettlementRecord settlementRecord = settlementRecordMap.get(income.getSettlementRecordId());
                     if (settlementRecord!=null && settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus() == 2){
                         if (settlementRecord.getPayType()!=null){
                             switch (settlementRecord.getPayType()){
@@ -1627,7 +1589,7 @@
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
+                    TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver != null){
                         platformVO.setName(tDriver.getFirstName()+tDriver.getLastName());
                         platformVO.setPhone(tDriver.getPhone());
@@ -1657,7 +1619,7 @@
                 case 4:
                     // 小件物流
                     // 查询订单信息
-                    SettlementRecord settlementRecord1 = settlementRecordService.selectById(income.getSettlementRecordId());
+                    SettlementRecord settlementRecord1 = settlementRecordMap.get(income.getSettlementRecordId());
                     if (settlementRecord1!=null){
                         if (settlementRecord1.getPaymentStatus()!=null && settlementRecord1.getPaymentStatus() == 2){
                             switch (settlementRecord1.getPayType()){
@@ -1712,14 +1674,14 @@
                         case 3:
 
                         case 4:
-                            continue;
+                            ;
                     }
                     String code2 = tOrderLogistics1.getOrderNum();
                     if(ToolUtil.isNotEmpty(code) && !code2.contains(code)){
                         continue;
                     }
                     platformVO.setCode(tOrderLogistics1.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics1.getDriverId());
+                    TDriver tDriver1 = driverMap.get(tOrderLogistics1.getDriverId());
                     if (tDriver1!=null){
                         platformVO.setName(tDriver1.getFirstName()+tDriver1.getLastName());
                         platformVO.setPhone(tDriver1.getPhone());
@@ -1816,30 +1778,26 @@
         Page<Map<String,Object>> page = new PageFactory<Map<String,Object>>().defaultPage();
         List<Income> incomes = new ArrayList<>();
         List<SettlementDetail> settlementDetails = new ArrayList<>();
-        if (time == null){
+        if (time == 5 && !StringUtils.hasLength(insertTime)){
             incomes = tIncomeService.selectList(new EntityWrapper<Income>()
                     .eq("userType", 1)
                     .eq("objectId",1)
                     .ne("type", 1)
                     .isNotNull("orderType"));
         }else{
-
-            if (time == 5 && !StringUtils.hasLength(insertTime)){
-                incomes = tIncomeService.selectList(new EntityWrapper<Income>()
-                        .eq("userType", 1)
-                        .eq("objectId",1)
-                        .ne("type", 1)
-                        .isNotNull("orderType"));
-            }else{
-                incomes = tIncomeService.selectList(new EntityWrapper<Income>()
-                        .eq("userType", 1)
-                        .eq("objectId",1)
-                        .ne("type", 1)
-                        .isNotNull("orderType")
-                        .between("insertTime", start, end));
-            }
+            incomes = tIncomeService.selectList(new EntityWrapper<Income>()
+                    .eq("userType", 1)
+                    .eq("objectId",1)
+                    .ne("type", 1)
+                    .isNotNull("orderType")
+                    .between("insertTime", start, end));
         }
+
         EntityWrapper<SettlementDetail> settlementDetailEntityWrapper = new EntityWrapper<>();
+        settlementDetailEntityWrapper.between("createTime", start, end);
+        if (state!=null && state == 2){
+            settlementDetailEntityWrapper.eq("paymentStatus", 2);
+        }
         if (time == 5 && !StringUtils.hasLength(insertTime)){
 
         }else{
@@ -1848,7 +1806,18 @@
         settlementDetails = settlementDetailService.selectList(settlementDetailEntityWrapper);
         List<PlatformVO> res = new ArrayList<>();
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-
+        Map<Integer, TUser> userMap = appUserService.selectList(new EntityWrapper<TUser>())
+                .stream()
+                .collect(Collectors.toMap(TUser::getId, user -> user));
+        Map<Integer, TDriver> driverMap = driverService.selectList(new EntityWrapper<TDriver>())
+                .stream()
+                .collect(Collectors.toMap(TDriver::getId, user -> user));
+        Map<Integer, SettlementRecord> settlementRecordMap = settlementRecordService.selectList(new EntityWrapper<SettlementRecord>())
+                .stream()
+                .collect(Collectors.toMap(SettlementRecord::getId, user -> user));
+        Map<Integer, SettlementDetail> settlementDetailMap = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>())
+                .stream()
+                .collect(Collectors.toMap(SettlementDetail::getId, user -> user));
         // 已结算金额
         BigDecimal balance = new BigDecimal("0");
         // 未结算金额
@@ -1863,12 +1832,16 @@
                         continue;
                     }
                     // 查询订单信息
-                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(income.getIncomeId());
+//                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(income.getIncomeId());
+                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>()
+                            .eq("id", income.getIncomeId())
+                            .between("insertTime", start, end));
+
                     if (tOrderPrivateCar==null){
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
+                    TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver != null){
                         platformVO.setDriverName(tDriver.getFirstName()+tDriver.getLastName());
                         platformVO.setDriverPhone(tDriver.getPhone());
@@ -1879,23 +1852,47 @@
                     }
                     platformVO.setMoney(new BigDecimal(income.getMoney()));
                     platformVO.setInsertTime(format.format(income.getInsertTime()));
-                    if (tOrderPrivateCar.getPayType() == null){
+                    if (tOrderPrivateCar.getState()!=10 && tOrderPrivateCar.getPayType() == null){
                         continue;
                     }
-                    switch (tOrderPrivateCar.getPayType()){
-                        case 1:
-                            platformVO.setPayType("手机支付");
-                            break;
-                        case 2:
-                            platformVO.setPayType("银行卡支付");
-                            break;
-                        case 3:
-                            platformVO.setPayType("余额支付");
-                            break;
-                        case 4:
-                            platformVO.setPayType("现金支付");
-                            break;
+                    if (tOrderPrivateCar.getState() == 10){
+                        // 查询取消订单 用户支付方式
+                        OrderCancel orderCancel = orderCancelService.selectOne(new EntityWrapper<OrderCancel>()
+                                .eq("orderType", 1)
+                                .eq("orderId", tOrderPrivateCar.getId()));
+                        if (orderCancel!=null &&orderCancel.getPayType()!=null){
+                            switch (orderCancel.getPayType()){
+                                case 1:
+                                    platformVO.setPayType("手机支付");
+                                    break;
+                                case 2:
+                                    platformVO.setPayType("银行卡支付");
+                                    break;
+                                case 3:
+                                    platformVO.setPayType("余额支付");
+                                    break;
+                            }
+                        }
+                    }else{
+                        if (tOrderPrivateCar.getPayType()!=null){
+                            switch (tOrderPrivateCar.getPayType()){
+                                case 1:
+                                    platformVO.setPayType("手机支付");
+                                    break;
+                                case 2:
+                                    platformVO.setPayType("银行卡支付");
+                                    break;
+                                case 3:
+                                    platformVO.setPayType("余额支付");
+                                    break;
+                                case 4:
+                                    platformVO.setPayType("现金支付");
+                                    break;
+                            }
+                        }
                     }
+
+
 
                     // 专车订单
                     balance = balance.add(new BigDecimal(income.getMoney()));
@@ -1907,12 +1904,15 @@
                     }
                     // 小件物流
                     // 查询订单信息
-                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(income.getIncomeId());
+//                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(income.getIncomeId());
+                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectOne(new EntityWrapper<TOrderLogistics>()
+                            .eq("id", income.getIncomeId())
+                            .between("insertTime", start, end));
                     if (tOrderLogistics==null){
                         continue;
                     }
                     platformVO.setCode(tOrderLogistics.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics.getDriverId());
+                    TDriver tDriver1 = driverMap.get(tOrderLogistics.getDriverId());
                     if (tDriver1!=null){
                         platformVO.setDriverName(tDriver1.getFirstName()+tDriver1.getLastName());
                         platformVO.setDriverPhone(tDriver1.getPhone());
@@ -1923,22 +1923,44 @@
                         platformVO.setEndTime(format.format(income.getInsertTime()));
                     }
                     platformVO.setInsertTime(format.format(tOrderLogistics.getInsertTime()));
-                    if (tOrderLogistics.getPayType() == null){
+                    if (tOrderLogistics.getState()!=10 && tOrderLogistics.getPayType() == null){
                         continue;
                     }
-                    switch (tOrderLogistics.getPayType()){
-                        case 1:
-                            platformVO.setPayType("手机支付");
-                            break;
-                        case 2:
-                            platformVO.setPayType("银行卡支付");
-                            break;
-                        case 3:
-                            platformVO.setPayType("余额支付");
-                            break;
-                        case 4:
-                            platformVO.setPayType("现金支付");
-                            break;
+                    if (tOrderLogistics.getState() == 10){
+                        // 查询取消订单 用户支付方式
+                        OrderCancel orderCancel = orderCancelService.selectOne(new EntityWrapper<OrderCancel>()
+                                .eq("orderType", 4)
+                                .eq("orderId", tOrderLogistics.getId()));
+                        if (orderCancel!=null &&orderCancel.getPayType()!=null){
+                            switch (orderCancel.getPayType()){
+                                case 1:
+                                    platformVO.setPayType("手机支付");
+                                    break;
+                                case 2:
+                                    platformVO.setPayType("银行卡支付");
+                                    break;
+                                case 3:
+                                    platformVO.setPayType("余额支付");
+                                    break;
+                            }
+                        }
+                    }else{
+                        if (tOrderLogistics.getPayType()!=null){
+                            switch (tOrderLogistics.getPayType()){
+                                case 1:
+                                    platformVO.setPayType("手机支付");
+                                    break;
+                                case 2:
+                                    platformVO.setPayType("银行卡支付");
+                                    break;
+                                case 3:
+                                    platformVO.setPayType("余额支付");
+                                    break;
+                                case 4:
+                                    platformVO.setPayType("现金支付");
+                                    break;
+                            }
+                        }
                     }
 
                     // 专车订单
@@ -1953,12 +1975,15 @@
             switch (settlementDetail.getOrderType()){
                 case 1:
                     // 专车订单
-                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(settlementDetail.getOrderId());
+//                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(settlementDetail.getOrderId());
+                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectOne(new EntityWrapper<TOrderPrivateCar>()
+                            .eq("id", settlementDetail.getOrderId())
+                            .between("insertTime", start, end));
                     if (tOrderPrivateCar==null){
                         continue;
                     }
                     platformVO.setCode(tOrderPrivateCar.getOrderNum());
-                    TDriver tDriver = driverService.selectById(tOrderPrivateCar.getDriverId());
+                    TDriver tDriver = driverMap.get(tOrderPrivateCar.getDriverId());
                     if (tDriver!=null){
                         platformVO.setDriverName(tDriver.getFirstName()+tDriver.getLastName());
                         platformVO.setDriverPhone(tDriver.getPhone());
@@ -1970,7 +1995,7 @@
                     platformVO.setMoney(bigDecimal1);
                     platformVO.setPayType("现金支付");
                     if (settlementDetail.getSettlementRecordId()!=null){
-                        SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId());
+                        SettlementRecord settlementRecord = settlementRecordMap.get(settlementDetail.getSettlementRecordId());
                         if (settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus()==2){
                             if (state!=null && state!=1){
                                 continue;
@@ -1978,7 +2003,7 @@
                             // 已结算
                             platformVO.setState(1);
                             balance = balance.add(new BigDecimal(settlementDetail.getPrice()));
-                            platformVO.setEndTime(format.format(settlementRecord.getPayTime()));
+                            platformVO.setEndTime(format.format(settlementDetail.getCreateTime()));
                         }else{
                             // 未结算
                             if (state!=null && state!=2){
@@ -1999,12 +2024,15 @@
                 case 4:
                     // 小件物流
                     // 查询订单信息
-                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(settlementDetail.getOrderId());
+//                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectById(settlementDetail.getOrderId());
+                    TOrderLogistics tOrderLogistics = orderLogisticsService.selectOne(new EntityWrapper<TOrderLogistics>()
+                            .eq("id", settlementDetail.getOrderId())
+                            .between("insertTime", start, end));
                     if (tOrderLogistics==null){
                         continue;
                     }
                     platformVO.setCode(tOrderLogistics.getOrderNum());
-                    TDriver tDriver1 = driverService.selectById(tOrderLogistics.getDriverId());
+                    TDriver tDriver1 = driverMap.get(tOrderLogistics.getDriverId());
                     if (tDriver1!=null){
                         platformVO.setDriverName(tDriver1.getFirstName()+tDriver1.getLastName());
                         platformVO.setDriverPhone(tDriver1.getPhone());
@@ -2016,7 +2044,7 @@
                     platformVO.setInsertTime(format.format(tOrderLogistics.getInsertTime()));
                     platformVO.setPayType("现金支付");
                     if (settlementDetail.getSettlementRecordId()!=null){
-                        SettlementRecord settlementRecord = settlementRecordService.selectById(settlementDetail.getSettlementRecordId());
+                        SettlementRecord settlementRecord = settlementRecordMap.get(settlementDetail.getSettlementRecordId());
                         if (settlementRecord.getPaymentStatus()!=null && settlementRecord.getPaymentStatus()==2){
                             if (state!=null && state!=1){
                                 continue;
@@ -2024,7 +2052,7 @@
                             // 已结算
                             platformVO.setState(1);
                             balance = balance.add(new BigDecimal(settlementDetail.getPrice()));
-                            platformVO.setEndTime(format.format(settlementRecord.getDay()));
+                            platformVO.setEndTime(format.format(settlementDetail.getCreateTime()));
                         }else{
                             // 未结算
                             if (state!=null && state!=2){

--
Gitblit v1.7.1