From a22fb0f4cf84f5b09e65a23fa204a61f4e246260 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 22 十月 2024 16:15:43 +0800
Subject: [PATCH] 合并代码

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingBillServiceImpl.java |   65 ++++++++++++++++++--------------
 1 files changed, 36 insertions(+), 29 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 fb3c109..f955e49 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
@@ -282,16 +282,23 @@
             // 格式化为字符串
             String timeString = String.format("%d小时%d分钟%d秒", hours, minutes, seconds);
             chargingBillVO.setChargingTime(timeString);
+            if (chargingBillVO.getPaymentAmount() == null){
+                chargingBillVO.setPaymentAmount(BigDecimal.ZERO);
+            }
+
             chargingBillVO.setOrderAmount(chargingBillVO.getPaymentAmount().subtract(chargingBillVO.getRefundAmount()==null?BigDecimal.ZERO:chargingBillVO.getRefundAmount())
                     .subtract(chargingBillVO.getCommissionAmount()==null?BigDecimal.ZERO:chargingBillVO.getCommissionAmount())
                     .subtract(chargingBillVO.getSharingAmount()==null?BigDecimal.ZERO:chargingBillVO.getSharingAmount()));
-            chargingBillListVO.setPaymentAmount(paymentAmount);
-            chargingBillListVO.setOrderAmount(orderAmount);
-            chargingBillListVO.setElectrovalence(electrovalence);
-            chargingBillListVO.setServiceCharge(serviceCharge);
-            chargingBillListVO.setCommissionAmount(commissionAmount);
-            chargingBillListVO.setSharingAmount(sharingAmount);
-            chargingBillListVO.setChargingCapacity(chargingCapacity);
+            chargingBillListVO.setPaymentAmount(paymentAmount == null?BigDecimal.ZERO:paymentAmount);
+            chargingBillListVO.setOrderAmount(orderAmount == null?BigDecimal.ZERO:orderAmount);
+            chargingBillListVO.setElectrovalence(electrovalence == null?BigDecimal.ZERO:electrovalence);
+            chargingBillListVO.setServiceCharge(serviceCharge == null?BigDecimal.ZERO:serviceCharge);
+            chargingBillListVO.setCommissionAmount(commissionAmount == null?BigDecimal.ZERO:commissionAmount);
+            chargingBillListVO.setSharingAmount(sharingAmount == null?BigDecimal.ZERO:sharingAmount);
+            chargingBillListVO.setChargingCapacity(chargingCapacity == null?BigDecimal.ZERO:chargingCapacity);
+            chargingBillListVO.setBillMoney(chargingBillListVO.getPaymentAmount().subtract(chargingBillListVO.getRefundAmount()==null?BigDecimal.ZERO:chargingBillListVO.getRefundAmount())
+                    .subtract(chargingBillListVO.getCommissionAmount()==null?BigDecimal.ZERO:chargingBillListVO.getCommissionAmount())
+                    .subtract(chargingBillListVO.getSharingAmount()==null?BigDecimal.ZERO:chargingBillListVO.getSharingAmount()));
             switch (chargingBillListVO.getType()){
                 case 1:
                     chargingBillListVO.setSiteName("全站");
@@ -452,33 +459,33 @@
                 }
                 BigDecimal add = tChargingOrder.getElectrovalence().add(tChargingOrder.getServiceCharge());
                 tChargingOrder.setTotalAmount(add.toString());
-                tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount().toString());
+                tChargingOrder.setDiscount(tChargingOrder.getCouponDiscountAmount()!=null?tChargingOrder.getCouponDiscountAmount().toString():"0");
                 UploadRealTimeMonitoringData data5 = uploadRealTimeMonitoringDataClient.chargingOrderInfo(tChargingOrder.getCode()).getData();
                 if (data5!=null){
                     if (data5.getTime_remaining()!=null){
                         chargingSecond+=data5.getTime_remaining()*60;
                     }
+                    Integer cumulativeChargingTime = data5.getCumulative_charging_time();
+                    // 将其转化为xx小时xx分钟xx秒显示 如果是0小时则不展示小时 如果是0分钟则不展示分钟
+                    if (cumulativeChargingTime!=null){
+                        // 计算小时、分钟和秒
+                        int hours = cumulativeChargingTime / 60;
+                        int minutes = cumulativeChargingTime % 60;
+                        int seconds = 0; // 如果没有秒数,则默认是0
+                        StringBuilder result = new StringBuilder();
+                        if (hours > 0) {
+                            result.append(hours).append("小时");
+                        }
+                        if (minutes > 0) {
+                            result.append(minutes).append("分钟");
+                        }
+                        if (seconds > 0 || result.length() == 0) { // 如果秒数大于0,或者小时和分钟都为0,则显示秒数
+                            result.append(seconds).append("秒");
+                        }
+                        tChargingOrder.setChargingTime(result.toString());
+                    }
+                    tChargingOrder.setEndSoc(data5.getSoc().toString());
                 }
-                Integer cumulativeChargingTime = data5.getCumulative_charging_time();
-                // 将其转化为xx小时xx分钟xx秒显示 如果是0小时则不展示小时 如果是0分钟则不展示分钟
-                if (cumulativeChargingTime!=null){
-                    // 计算小时、分钟和秒
-                    int hours = cumulativeChargingTime / 60;
-                    int minutes = cumulativeChargingTime % 60;
-                    int seconds = 0; // 如果没有秒数,则默认是0
-                    StringBuilder result = new StringBuilder();
-                    if (hours > 0) {
-                        result.append(hours).append("小时");
-                    }
-                    if (minutes > 0) {
-                        result.append(minutes).append("分钟");
-                    }
-                    if (seconds > 0 || result.length() == 0) { // 如果秒数大于0,或者小时和分钟都为0,则显示秒数
-                        result.append(seconds).append("秒");
-                    }
-                    tChargingOrder.setChargingTime(result.toString());
-                }
-                tChargingOrder.setEndSoc(data5.getSoc().toString());
                 TAppUser data3 = appUserClient.getUserById(tChargingOrder.getAppUserId()).getData();
                 if (tChargingOrder.getAppUserCarId()!=null){
                     List<TAppUserCar> data4 = appUserCarClient.getCarByIds(Arrays.asList(tChargingOrder.getAppUserCarId())).getData();
@@ -507,7 +514,7 @@
                 electrovalence = electrovalence.add(tChargingOrder.getElectrovalence());
                 electrovalenceTotal = electrovalenceTotal.add(tChargingOrder.getElectrovalence());
                 }
-                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() == 2){
+                if (tChargingOrder.getRefundAmount()!=null && tChargingOrder.getRefundStatus() !=null && tChargingOrder.getRefundStatus() == 2){
                     refundAmount = refundAmount.add(tChargingOrder.getRefundAmount());
                 }
                 // 累加累计服务费

--
Gitblit v1.7.1