From cfc5a86060b10ee7984eab1e628d8704c3828474 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期三, 11 九月 2024 10:47:05 +0800 Subject: [PATCH] 修改枪状态 --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java | 20 +++++++++++++++----- 1 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java index a567303..00e72b4 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java @@ -40,6 +40,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; +import java.math.MathContext; import java.math.RoundingMode; import java.text.SimpleDateFormat; import java.util.*; @@ -241,7 +242,7 @@ List<Integer> id = setAccountingStrategy.getId(); List<TChargingGun> list = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().in(TChargingGun::getChargingPileId, id).eq(TChargingGun::getDelFlag, 0)); for (TChargingGun tChargingGun : list) { - tChargingGun.setChargingPileId(setAccountingStrategy.getAccountingStrategyId()); + tChargingGun.setAccountingStrategyId(setAccountingStrategy.getAccountingStrategyId()); } chargingGunService.updateBatchById(list); } @@ -304,8 +305,13 @@ chargeMonitoring.setNotCharged(total.size() - charging.size()); chargeMonitoring.setRatedPower(ratedPower.setScale(4, RoundingMode.HALF_EVEN)); chargeMonitoring.setRealTimePower(realTimePower.setScale(4, RoundingMode.HALF_EVEN)); - chargeMonitoring.setDemandPowerSatisfactionRate(realTimePower.divide(ratedPower).multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_EVEN)); - + if(ratedPower.equals(BigDecimal.ZERO)){ + chargeMonitoring.setDemandPowerSatisfactionRate(BigDecimal.ZERO); + }else{ + chargeMonitoring.setDemandPowerSatisfactionRate(realTimePower.divide(ratedPower, new MathContext(2, RoundingMode.HALF_EVEN)) + .multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_EVEN)); + } + List<String> dates = new ArrayList<>(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MMM-dd"); Calendar calendar = Calendar.getInstance(); @@ -325,8 +331,12 @@ List<Double> data = chargingOrderAccountingStrategyClient.getDailyChargingDegree(6, siteIds).getData(); List<Double> value2 = new ArrayList<>(); for (Double datum : data) { - Double datum1 = new BigDecimal(datum).divide(new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24))).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); - value2.add(datum1); + if(list.size() == 0){ + value2.add(0D); + }else{ + Double datum1 = new BigDecimal(datum).divide(new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24))).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); + value2.add(datum1); + } } Map<String, Object> utilizationTrend = new HashMap<>(); utilizationTrend.put("date", dates); -- Gitblit v1.7.1