无关风月
2025-02-07 643cccdfd2c00285cfdce0be609f7cd909207ad6
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -234,6 +234,9 @@
        data.setRecords(res1);
        return R.ok(data);
    }
    public static List<PayOrderDto> testing5(long total, long current, long size, List<PayOrderDto> str){
    List<PayOrderDto> result = new ArrayList<>();
    //获取初始化分页结构
@@ -255,6 +258,9 @@
    }
    return result;
}
    @ResponseBody
    @PostMapping(value = "/pay/order/refund")
    @ApiOperation(value = "退款", tags = {"管理后台-支付订单-订单信息"})
@@ -325,6 +331,10 @@
        return R.ok();
    }
    @ResponseBody
    @GetMapping(value = "/pay/order/refund/detail")
    @ApiOperation(value = "退款信息", tags = {"管理后台-支付订单-订单信息"})
@@ -470,6 +480,10 @@
        }
        return result;
    }
    @ResponseBody
    @PostMapping(value = "/pay/order/refund/list1")
    @ApiOperation(value = "列表1", tags = {"管理后台-支付订单-退款订单"})
@@ -578,6 +592,8 @@
                .between(TChargingOrder::getStartTime, req.getStartTime(), req.getEndTime())).size();
        return R.ok(size);
    }
    //用户订单数量
    @PostMapping(value = "/useOrderCount")
    public R<Long> useOrderCount(@RequestParam("userId") Long userId) {
@@ -586,12 +602,16 @@
        return R.ok(count);
    }
    //订单详情
    @PostMapping(value = "/detail")
    public R<TChargingOrder> detail(@RequestParam("orderId") Long orderId) {
        return R.ok(chargingOrderService.getById(orderId));
    }
    @PostMapping(value = "/getList")
    public R<List<TChargingOrder>> getList(@RequestParam("siteId") Integer siteId) {
@@ -599,6 +619,8 @@
        return R.ok(list);
    }
    @PostMapping(value = "/getBySiteIdAndTime")
    public R<List<ChargingOrderGroup>> getBySiteIdAndTime(@RequestBody ChargingPercentProvinceDto chargingPercentProvinceDto) {
@@ -783,12 +805,6 @@
        chargingOrderService.endChargeBillingCharge(vo);
    }
    
//    @PostMapping("/endChargeBillingCharge1")
//    public void endChargeBillingCharge1(@RequestBody TransactionRecordMessageVO vo){
//        log.info("-------------------停止充电返回账单后计算费用及修改业务状态-------------------:" + vo);
//        chargingOrderService.endChargeBillingCharge1(vo);
//    }
    
    
    
@@ -1903,20 +1919,17 @@
        }
       List<Map<String,Object>>   capMap  =   chargingOrderService.getchargingCapacity(siteIds,statisticsQueryDto);
        List<TChargingPile> chargingPiles = chargingPileClient.getChargingPileBySiteIds(siteIds).getData();
        //获取chargingPiles的ratedPower的总和再乘以chargingPiles的数量再乘以24
        BigDecimal totalRatedPower = chargingPiles.stream().map(TChargingPile::getRatedPower).reduce(BigDecimal.ZERO, BigDecimal::add).multiply(new BigDecimal(chargingPiles.size())).multiply(new BigDecimal(24));
        //将capMap的chargingCapacity除以totalRatedPower保留两位数
        //每日利用率=当日充电度数/(总桩数量*桩总功率*24小时)
        BigDecimal multiply1 = new BigDecimal(chargingPiles.size()).multiply(totalRatedPower).multiply(new BigDecimal(24));
        capMap.forEach(map -> {
            BigDecimal chargingCapacity = (BigDecimal) map.get("chargingCapacity");
            BigDecimal result = chargingCapacity.divide(totalRatedPower, 4, RoundingMode.HALF_UP);
            BigDecimal result = chargingCapacity.divide(multiply1, 4, RoundingMode.HALF_UP);
            BigDecimal multiply = result.multiply(new BigDecimal(100));
            map.put("chargingCapacity", multiply);
        });
        //
        // 解析 startTime 和 endTime 为 LocalDate
        LocalDate startDate = statisticsQueryDto.getStartTime();
        LocalDate endDate = statisticsQueryDto.getEndTime();
@@ -1941,8 +1954,6 @@
            startDate = startDate.plusDays(1);
        }
        return R.ok(dateRangeStatistics);
    }