From 7320cba2abc7beb1f990fb4fd52dc577b8d609dc Mon Sep 17 00:00:00 2001 From: zhibing.pu <393733352@qq.com> Date: 星期四, 05 九月 2024 10:44:10 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java | 24 ++++++++++++++++++++---- 1 files changed, 20 insertions(+), 4 deletions(-) diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java index 9b2aaab..2412c8c 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java @@ -24,10 +24,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalTime; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.List; -import java.util.Objects; +import java.util.*; import java.util.stream.Collectors; /** @@ -146,4 +143,23 @@ return isFirstElementValid || !isTimeContinuous; } + + @Override + public Boolean isStrategyPriceConsistent(List<TAccountingStrategyDetail> accountingStrategyDetails) { + Map<Integer, BigDecimal> phaseToServiceFee = new HashMap<>(); + for (TAccountingStrategyDetail detail : accountingStrategyDetails) { + Integer type = detail.getType(); + BigDecimal serviceFee = detail.getServiceCharge(); + + if (phaseToServiceFee.containsKey(type)) { + BigDecimal existingFee = phaseToServiceFee.get(type); + if (!existingFee.equals(serviceFee)) { + return false; // 发现不一致的服务费 + } + } else { + phaseToServiceFee.put(type, serviceFee); + } + } + return true; // 所有相同阶段的服务费一致 + } } -- Gitblit v1.7.1