From d56e45a6bf3ad11809fbf51dff0dfbe853860d43 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 19 三月 2025 20:56:33 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java |   66 ++++++++++++++++++++-------------
 1 files changed, 40 insertions(+), 26 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java
index 84ec02b..7048ac6 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java
@@ -88,7 +88,6 @@
 
     @Override
     public ChargingBillVO chargingBillList1(ChargingListQuery dto) {
-
         ChargingBillVO chargingBillVO = new ChargingBillVO();
         List<TChargingOrder> tChargingOrders1 = new ArrayList<>();
         String startTime1 = null;
@@ -105,7 +104,7 @@
         List<TAppUser> userList = appUserClient.getAllUser().getData();
         List<TAppUserCar> carList = appUserCarClient.getAllCar().getData();
         List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class)
-                .eq(TChargingOrder::getRechargePaymentStatus, 2));
+                .eq(TChargingOrder::getRechargePaymentStatus, 2).eq(TChargingOrder::getStatus, 5));
         List<TChargingOrderRefund> totalRefund = chargingOrderRefundService.lambdaQuery().eq(TChargingOrderRefund::getRefundStatus, 2).list();
         Long userId = tokenService.getLoginUser().getUserid();
         // 查询当前登陆人按钮权限
@@ -179,7 +178,10 @@
                     break;
                 case 2:
                     temp = "各个站点账单";
-                    temp1 = siteClient.getSiteByIds(Arrays.asList(chargingBillListVO.getSiteId())).getData().get(0).getName();
+                    Site site = siteList.stream().filter(e -> e.getId().equals(chargingBillListVO.getSiteId())).findFirst().orElse(null);
+                    if (site!=null){
+                        temp1 =site.getName();
+                    }
                     break;
             }
             chargingBillVO.setCategory(temp);
@@ -204,10 +206,15 @@
             // 获取该月份的最后一天
             LocalDateTime lastDayOfMonth = localDate.with(TemporalAdjusters.lastDayOfMonth());
             LocalDateTime firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth());
-            List<TChargingOrder> tChargingOrders = total.stream().filter(e -> chargingBillListVO.getType() == 2 ?
-                    e.getSiteId().equals(chargingBillListVO.getSiteId()) : true &&
-                    e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
-                    && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            List<TChargingOrder> tChargingOrders = new ArrayList<>();
+            if (chargingBillListVO.getType() == 2){
+                tChargingOrders = total.stream().filter(e -> e.getSiteId().equals(chargingBillListVO.getSiteId()) && e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
+                        && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            }else{
+                tChargingOrders = total.stream().filter(e ->  e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
+                        && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            }
+
 
 
             int chargingSecond = 0;
@@ -285,10 +292,10 @@
                 BigDecimal add = tChargingOrder.getElectrovalence().add(tChargingOrder.getServiceCharge());
                 tChargingOrder.setTotalAmount(add.toString());
                 tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount()!=null?tChargingOrder.getCouponDiscountAmount().toString():"0");
-                UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(tChargingOrder.getCode()).getData();
-                if (data5!=null){
-                    tChargingOrder.setEndSoc(data5.getSoc().toString());
-                }
+//                UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(tChargingOrder.getCode()).getData();
+//                if (data5!=null){
+//                    tChargingOrder.setEndSoc(data5.getSoc().toString());
+//                }
                 if (tChargingOrder.getStartTime()!=null && tChargingOrder.getEndTime()!=null){
                     LocalDateTime startTime = tChargingOrder.getStartTime();
                     LocalDateTime endTime = tChargingOrder.getEndTime();
@@ -355,8 +362,8 @@
                             .setScale(2,BigDecimal.ROUND_DOWN));
                 }
                 // 累加平台分佣
-                if (tChargingOrder.getSharingAmount()!=null){
-                    sharingAmount = sharingAmount.add(tChargingOrder.getSharingAmount());
+                if (tChargingOrder.getOrderSource()==2 && tChargingOrder.getServiceCharge()!=null){
+                    sharingAmount = sharingAmount.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.2)).setScale(2,BigDecimal.ROUND_DOWN));
                 }
                 // 累加充电度数
                 if (tChargingOrder.getChargingCapacity()!=null){
@@ -404,11 +411,15 @@
         BigDecimal bigDecimal = new BigDecimal("0");
         int i = 0;
         for (ChargingBillListVO chargingBillListVO : list1) {
-            if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){
-                continue;
-            }
-            if (chargingBillListVO.getType()==1){
-                continue;
+            if (dto.getType() == 1){
+
+            }else{
+                if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){
+                    continue;
+                }
+                if (chargingBillListVO.getType()==1){
+                    continue;
+                }
             }
             i++;
             LocalDateTime billTime = chargingBillListVO.getBillTime();
@@ -427,15 +438,18 @@
             // 获取该月份的最后一天
             LocalDateTime lastDayOfMonth = localDate.with(TemporalAdjusters.lastDayOfMonth());
             LocalDateTime firstDayOfMonth = localDate.with(TemporalAdjusters.firstDayOfMonth());
-            List<TChargingOrder> tChargingOrders = total.stream().filter(e -> chargingBillListVO.getType() == 2 ?
-                    e.getSiteId().equals(chargingBillListVO.getSiteId()) : true &&
-                    e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
-                    && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            List<TChargingOrder> tChargingOrders = new ArrayList<>();
+            if (chargingBillListVO.getType() == 2){
+                tChargingOrders = total.stream().filter(e -> e.getSiteId().equals(chargingBillListVO.getSiteId()) && e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
+                        && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            }else{
+                tChargingOrders = total.stream().filter(e ->  e.getPayTime().isBefore(lastDayOfMonth.withHour(23).withMinute(59).withSecond(59))
+                        && e.getPayTime().isAfter(firstDayOfMonth.withHour(0).withMinute(0).withSecond(0))).collect(Collectors.toList());
+            }
             for (TChargingOrder tChargingOrder : tChargingOrders) {
                 if (tChargingOrder.getOrderAmount()!=null){
                     paymentAmountTotal = paymentAmountTotal.add(tChargingOrder.getPaymentAmount());
                 }
-
                 // 累加订单金额
                 if (tChargingOrder.getRechargeAmount()!=null){
                     orderAmountTotal = orderAmountTotal.add(tChargingOrder.getRechargeAmount());
@@ -463,8 +477,8 @@
                             .setScale(2,BigDecimal.ROUND_DOWN));
                 }
                 // 累加平台分佣
-                if (tChargingOrder.getSharingAmount()!=null){
-                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getSharingAmount());
+                if (tChargingOrder.getOrderSource()==2 && tChargingOrder.getServiceCharge()!=null){
+                    sharingAmountTotal = sharingAmountTotal.add(tChargingOrder.getServiceCharge().multiply(BigDecimal.valueOf(0.2)).setScale(2,BigDecimal.ROUND_DOWN));
                 }
                 // 累加充电度数
                 if (tChargingOrder.getElectricity()!=null){
@@ -521,7 +535,7 @@
             startTime2 = split[1];
         }
         List<TChargingOrder> total = chargingOrderList.selectList(new LambdaQueryWrapper<>(TChargingOrder.class)
-                .eq(TChargingOrder::getRechargePaymentStatus, 2));
+                .eq(TChargingOrder::getRechargePaymentStatus, 2).eq(TChargingOrder::getStatus, 5));
         PageInfo<ChargingBillListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
         List<Site> data6 = siteClient.getSiteAll().getData();
         List<TChargingGun> gunList = chargingGunClient.getAllGun().getData();

--
Gitblit v1.7.1