From 6a5c99ce357788e70ce1973e76649e06fb6e8ff2 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 26 十月 2024 17:23:24 +0800
Subject: [PATCH] bug修改

---
 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java |   35 ++++++++++++++++++++++-------------
 1 files changed, 22 insertions(+), 13 deletions(-)

diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index d1971fb..522954c 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -3,6 +3,7 @@
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.DecimalFormat;
 import java.time.*;
 
 
@@ -351,12 +352,12 @@
         chargingOrderInfoVO.setSurplus(byId.getTotalElectricity()!=null?byId.getTotalElectricity().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
         chargingOrderInfoVO.setTotalPower(byId.getPower()!=null?byId.getPower().setScale(2, BigDecimal.ROUND_HALF_DOWN)+"":"");
         if (byId.getAppUserCarId()!=null){
-            List<TAppUserCar> data = appUserCarClient.getCarByIds(Arrays.asList(byId.getAppUserCarId())).getData();
-            if (!data.isEmpty()){
-                chargingOrderInfoVO.setLicensePlate(data.get(0).getLicensePlate());
-                chargingOrderInfoVO.setVehicleBrand(data.get(0).getVehicleBrand());
-                chargingOrderInfoVO.setVehicleModel(data.get(0).getVehicleModel());
-                chargingOrderInfoVO.setVehicleUse(data.get(0).getVehicleUse());
+            TAppUserCar data = appUserCarClient.getCarById(byId.getAppUserCarId()+"").getData();
+            if (data!=null){
+                chargingOrderInfoVO.setLicensePlate(data.getLicensePlate());
+                chargingOrderInfoVO.setVehicleBrand(data.getVehicleBrand());
+                chargingOrderInfoVO.setVehicleModel(data.getVehicleModel());
+                chargingOrderInfoVO.setVehicleUse(data.getVehicleUse());
             }
         }
         // 时段总服务费
@@ -804,14 +805,13 @@
 //        }
 //        Set<String> strings = map.keySet();
 
-
+        mongoChargingOrderQuery.setPageSize(10);
         List<UploadRealTimeMonitoringData> data1 = uploadRealTimeMonitoringDataClient.getAll(mongoChargingOrderQuery).getData();
 
         List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>();
         Map<String,ChargingOrderVO> map  = new HashMap<>();
         for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1) {
             ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto();
-            BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
             ChargingOrderQuery dto = new ChargingOrderQuery();
             dto.setCode(uploadRealTimeMonitoringData.getTransaction_serial_number());
             TCharingOrderVO vo = chargingOrderService.chargingOrder(dto);
@@ -820,12 +820,18 @@
                 if (chargingOrderVO != null) {
                     BeanUtils.copyProperties(chargingOrderVO, dataDto);
                 }
+                BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
+                dataDto.setStartTime(uploadRealTimeMonitoringData.getStartTime());
+                dataDto.setEndTime(uploadRealTimeMonitoringData.getEndTime()==null?null:uploadRealTimeMonitoringData.getEndTime());
+                dataDto.setStatus(uploadRealTimeMonitoringData.getStatus());
                 dtos.add(dataDto);
             }else {
                 continue;
             }
         }
-
+        for (int i = 0; i < dtos.size(); i++) {
+            dtos.get(i).setIndex(i);
+        }
 
         return R.ok(dtos);
     }
@@ -1234,8 +1240,8 @@
         return R.ok(tCharingUserEquimentVO);
     }
 
-
-    private static double calculateAveragePercent(List<Map<String, Object>> mapList1, List<Map<String, Object>> mapList2) {
+    private static final DecimalFormat DF = new DecimalFormat("#.00");
+    public static double calculateAveragePercent(List<Map<String, Object>> mapList1, List<Map<String, Object>> mapList2) {
         int totalElements = mapList1.size() + mapList2.size();
         double sum = 0.0;
 
@@ -1257,7 +1263,10 @@
         }
 
         // 计算平均值
-        return sum / totalElements;
+        double average = sum / totalElements;
+
+        // 格式化为两位小数
+        return Double.parseDouble(DF.format(average));
     }
 
     @ResponseBody
@@ -1287,7 +1296,7 @@
         //当日的订单总数
         int size = list.size();
         //计算list中paymentAmount的总和
-        BigDecimal totalPaymentAmount = list.stream().map(TChargingOrder::getOrderAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+        BigDecimal totalPaymentAmount = list.stream().map(TChargingOrder::getPaymentAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
         //计算list中electrovalence的总和
         BigDecimal totalElectrovalence = list.stream().map(TChargingOrder::getElectrovalence).reduce(BigDecimal.ZERO, BigDecimal::add);
         //计算list中serviceCharge的总和

--
Gitblit v1.7.1