From 4b9e8610e48d5a4fd4e0ceb55c79b3f36146bc2b Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 20 三月 2025 17:41:49 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java |   30 +++++++++++++++++-------------
 1 files changed, 17 insertions(+), 13 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 87bf2d2..529c1fb 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
@@ -387,7 +387,7 @@
                 chargingBillVO.setPaymentAmount(BigDecimal.ZERO);
             }
 
-            chargingBillListVO.setPaymentAmount(paymentAmount.subtract(sharingAmount));
+            chargingBillListVO.setPaymentAmount(paymentAmount);
             chargingBillListVO.setOrderAmount(refundAmount);
             chargingBillListVO.setRefundAmount(refundAmount == null?BigDecimal.ZERO:refundAmount);
             chargingBillListVO.setElectrovalence(electrovalence == null?BigDecimal.ZERO:electrovalence);
@@ -395,7 +395,7 @@
             chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount.setScale(2,BigDecimal.ROUND_DOWN));
             chargingBillListVO.setSharingAmount(sharingAmount == null?BigDecimal.ZERO:sharingAmount);
             chargingBillListVO.setChargingCapacity(chargingCapacity == null?BigDecimal.ZERO:chargingCapacity);
-            chargingBillListVO.setBillMoney(orderAmount
+            chargingBillListVO.setBillMoney(paymentAmount
                             .subtract(commissionAmount.setScale(2,BigDecimal.ROUND_DOWN)).subtract(sharingAmount).setScale(2, BigDecimal.ROUND_DOWN));
             switch (chargingBillListVO.getType()){
                 case 1:
@@ -640,7 +640,10 @@
                     break;
                 case 2:
                     temp = "各个站点账单";
-                    temp1 = data6.stream().filter(e->e.getId().equals(chargingBillListVO.getSiteId())).findFirst().orElse(new Site()).getName();
+                    Site site = data6.stream().filter(e -> e.getId().equals(chargingBillListVO.getSiteId())).findFirst().orElse(null);
+                    if(site!=null){
+                        temp1 = site.getName();
+                    }
                     break;
             }
             chargingBillVO.setCategory(temp);
@@ -748,8 +751,7 @@
                             break;
                     }
                 }
-                BigDecimal add = tChargingOrder.getElectrovalence().add(tChargingOrder.getServiceCharge());
-                tChargingOrder.setTotalAmount(add.toString());
+
                 tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount()!=null?tChargingOrder.getCouponDiscountAmount().toString():"0");
                 if (tChargingOrder.getStartTime()!=null && tChargingOrder.getEndTime()!=null){
                     LocalDateTime startTime = tChargingOrder.getStartTime();
@@ -795,9 +797,12 @@
                 BigDecimal electronic_reduce = list4.stream().map(TChargingOrderAccountingStrategy::getPeriodElectricPrice).reduce(BigDecimal.ZERO, BigDecimal::add);
                 BigDecimal service_reduce = list4.stream().map(TChargingOrderAccountingStrategy::getPeriodServicePrice).reduce(BigDecimal.ZERO, BigDecimal::add);
                 BigDecimal charging_capacity = list4.stream().map(TChargingOrderAccountingStrategy::getChargingCapacity).reduce(BigDecimal.ZERO, BigDecimal::add);
+
                 if ( !tChargingOrder.getOrderSource().equals(2)){
                     // 实收
                     paymentAmount = paymentAmount.add(electronic_reduce).add(service_reduce);
+                    BigDecimal add = electronic_reduce.add(service_reduce);
+                    tChargingOrder.setTotalAmount(add.toString());
                 }
                 // 总金额
                 if (tChargingOrder.getRechargeAmount()!=null){
@@ -816,19 +821,18 @@
                         sharingAmount = sharingAmount.add(service_reduce.multiply(new BigDecimal("0.2")).setScale(2,BigDecimal.ROUND_DOWN));
                         // 累加实收
                         paymentAmount = paymentAmount.add(electronic_reduce).add(service_reduce.multiply(new BigDecimal("0.8")).setScale(2,BigDecimal.ROUND_DOWN));
+                        BigDecimal add = electronic_reduce.add(service_reduce.multiply(new BigDecimal("0.8")));
+                        tChargingOrder.setTotalAmount(add.toString());
                     }else {
                         serviceCharge = serviceCharge.add(service_reduce);
                     }
 
                 // 累加平台手续费
                 if (tChargingOrder.getRechargeAmount()!=null){
-                    commissionAmount = commissionAmount.add(tChargingOrder.getRechargeAmount().multiply(BigDecimal.valueOf(0.006))
-                            .setScale(2,BigDecimal.ROUND_DOWN));
+                    commissionAmount = commissionAmount.add(tChargingOrder.getRechargeAmount().multiply(BigDecimal.valueOf(0.006)).setScale(2,BigDecimal.ROUND_DOWN));
                 }
-
                 // 累加充电度数
                 chargingCapacity = chargingCapacity.add(charging_capacity);
-
             }
             // 将chargingSecond 这是以秒为单位存放的总秒数 将其转化为xx小时xx分钟xx秒
             int hours = chargingSecond / 3600;
@@ -863,7 +867,9 @@
         }
         for (ChargingBillListVO chargingBillListVO : list1) {
             if (dto.getType() == 1){
-
+                if (chargingBillListVO.getSiteId()!=0){
+                    continue;
+                }
             }else{
                 if (chargingBillListVO.getSiteId()!=0&&!siteIds.contains(chargingBillListVO.getSiteId())){
                     continue;
@@ -886,7 +892,6 @@
             chargingBillListVO.setUid(chargingBillListVO.getId().toString());
             // 根据账单的出账时间 查询上个月的充电订单
             LocalDateTime localDate = chargingBillListVO.getBillTime().minusMonths(1);
-//            LocalDateTime localDate = chargingBillListVO.getBillTime().minusDays(1);
             // 账单周期
             chargingBillListVO.setBillWeek(localDate.format(java.time.format.DateTimeFormatter.ofPattern("yyyy-MM")));
             // 获取 LocalDate 对象
@@ -952,8 +957,7 @@
                     // 累加平台手续费
                 if (tChargingOrder.getOrderAmount()!=null){
                     commissionAmount = commissionAmount.add(tChargingOrder.getRechargeAmount().multiply(new BigDecimal("0.006")).setScale(2,BigDecimal.ROUND_DOWN));
-                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getRechargeAmount().multiply(new BigDecimal("0.006"))
-                            .setScale(2,BigDecimal.ROUND_DOWN));
+                    commissionAmountTotal = commissionAmountTotal.add(tChargingOrder.getRechargeAmount().multiply(new BigDecimal("0.006")).setScale(2,BigDecimal.ROUND_DOWN));
                 }
 
                 // 累加充电度数

--
Gitblit v1.7.1