From 82e5f5968a77bde806f45a0ae1fe16f40852d6d6 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期一, 21 十月 2024 17:22:27 +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/controller/TChargingOrderController.java |  102 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 78 insertions(+), 24 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 c38aabe..6b5b491 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
@@ -309,18 +309,38 @@
     @ResponseBody
     @PostMapping(value = "/chargingOrderInfo")
     @ApiOperation(value = "充电桩订单列表查看详情", tags = {"管理后台-订单管理"})
-    public AjaxResult<ChargingOrderInfoVO> chargingOrderInfo(String orderId) {
+    public AjaxResult<ChargingOrderInfoVO> chargingOrderInfo(String strategyId) {
+        TChargingOrder byId = chargingOrderService.getById(strategyId);
         ChargingOrderInfoVO chargingOrderInfoVO = new ChargingOrderInfoVO();
-        chargingOrderInfoVO.setCdElectronic("");
-        chargingOrderInfoVO.setCdVoltage("");
-        chargingOrderInfoVO.setSurplus("");
-        chargingOrderInfoVO.setTotalPower("");
-        chargingOrderInfoVO.setLicensePlate("");
-        chargingOrderInfoVO.setVehicleBrand("");
-        chargingOrderInfoVO.setVehicleModel("");
-        chargingOrderInfoVO.setVehicleUse("");
-        List<TChargingOrderAccountingStrategy> tChargingOrderAccountingStrategies = new ArrayList<>();
-        chargingOrderInfoVO.setList(tChargingOrderAccountingStrategies);
+
+        chargingOrderInfoVO.setCdElectronic(byId.getCurrent()!=null?byId.getCurrent()+"":"");
+        chargingOrderInfoVO.setCdVoltage(byId.getVoltage()!=null?byId.getVoltage()+"":"");
+        chargingOrderInfoVO.setSurplus(byId.getTotalElectricity()!=null?byId.getTotalElectricity()+"":"");
+        chargingOrderInfoVO.setTotalPower(byId.getPower()!=null?byId.getPower()+"":"");
+        if (byId.getAppUserCarId()!=null){
+            List<TAppUserCar> data = appUserCarClient.getCarByIds(Collections.singletonList(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());
+            }
+        }
+        // 时段总服务费
+        BigDecimal bigDecimal = new BigDecimal("0");
+        List<TChargingOrderAccountingStrategy> list = chargingOrderAccountingStrategyService.lambdaQuery().eq(TChargingOrderAccountingStrategy::getChargingOrderId, strategyId).orderByDesc(TChargingOrderAccountingStrategy::getStartTime).list();
+        for (TChargingOrderAccountingStrategy tChargingOrderAccountingStrategy : list) {
+            bigDecimal = bigDecimal.add(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice());
+            tChargingOrderAccountingStrategy.setVipDiscount(
+                    tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice()
+                            .subtract(tChargingOrderAccountingStrategy.getPeriodServicePrice())
+            );
+            tChargingOrderAccountingStrategy.setCouponDiscount(
+                    tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice()
+                            .subtract(tChargingOrderAccountingStrategy.getPeriodServicePrice())
+            );
+        }
+        chargingOrderInfoVO.setList(list);
         return AjaxResult.success(chargingOrderInfoVO);
     }
 
@@ -685,7 +705,7 @@
 //        dto.setUserIds(data);
 //        dto.setPageCurr(1);
 //        dto.setPageSize(99999);
-//        TCharingOrderVO res = chargingOrderService.chargingOrder(dto);
+
 //        Map<String,TChargingOrder> map = new HashMap<>();
 //        //吧list放入map中
 //        for (ChargingOrderVO record : res.getList().getRecords()) {
@@ -696,19 +716,21 @@
 
         List<UploadRealTimeMonitoringData> data1 = uploadRealTimeMonitoringDataClient.getAll(mongoChargingOrderQuery).getData();
 
-//        List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>();
-//        for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1) {
-//            ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto();
-//            BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
-//            TChargingOrder tChargingOrder = map.get(uploadRealTimeMonitoringData.getCharging_pile_code());
-//            if (tChargingOrder!=null) {
-//                BeanUtils.copyProperties(tChargingOrder, dataDto);
-//            }
-//            dtos.add(dataDto);
-//        }
+        List<ChargingOrderAndUploadRealTimeMonitoringDataDto> dtos = new ArrayList<>();
+        for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data1) {
+            ChargingOrderAndUploadRealTimeMonitoringDataDto dataDto = new ChargingOrderAndUploadRealTimeMonitoringDataDto();
+            BeanUtils.copyProperties(uploadRealTimeMonitoringData,dataDto);
+            ChargingOrderQuery dto = new ChargingOrderQuery();
+            TCharingOrderVO vo = chargingOrderService.chargingOrder(dto);
+            ChargingOrderVO chargingOrderVO = vo.getList().getRecords().get(0);
+            if (chargingOrderVO!=null) {
+                BeanUtils.copyProperties(chargingOrderVO, dataDto);
+            }
+            dtos.add(dataDto);
+        }
 
 
-        return R.ok(data1);
+        return R.ok(dtos);
     }
     
     
@@ -925,7 +947,39 @@
                 startDate = startDate.plusDays(1);
             }
 
-            tCharingUserMapVO.setMap(map);
+            tCharingUserMapVO.setMap(dateRangeStatistics);
+
+
+            List<Map<String,Object>> map1 =  chargingOrderService.usersByQuery(statisticsQueryDto);
+
+
+
+
+            List<Map<String, Object>> dateRangeStatistics1 = new ArrayList<>();
+
+            // 遍历日期范围
+            while (!startDate.isAfter(endDate)) {
+                String formattedDate = startDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
+                Map<String, Object> dailyStats = findMapWithDateValue(map1, formattedDate);
+
+                if (dailyStats != null) {
+                    dateRangeStatistics1.add(dailyStats);
+                } else {
+                    Map<String, Object> dateMap = new HashMap<>();
+                    dateMap.put("time", formattedDate);
+                    dateMap.put("counts", 0);
+                    dateRangeStatistics1.add(dateMap);
+                }
+
+                // 移动到下一天
+                startDate = startDate.plusDays(1);
+            }
+
+            tCharingUserMapVO.setMap1(dateRangeStatistics1);
+
+
+
+
         }
 
         //用户标签

--
Gitblit v1.7.1