mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-07-07 15:38:10 +08:00
如果算出来的 电费金额 + 服务费金额 != 总消费金额,并且尖峰平谷总用电量大于0, 则使用平台计算金额
This commit is contained in:
@@ -430,11 +430,17 @@ public abstract class AbstractProgramLogic implements InitializingBean {
|
|||||||
orderCode, price, electricityPrice, servicePrice, valleyUsedElectricity, amount, electricityAmount, serviceAmount, data.getValleyPrice(), data.getValleyAmount());
|
orderCode, price, electricityPrice, servicePrice, valleyUsedElectricity, amount, electricityAmount, serviceAmount, data.getValleyPrice(), data.getValleyAmount());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 尖峰平谷用电量汇总
|
||||||
|
BigDecimal sumUsedElectricity = sharpUsedElectricity.add(peakUsedElectricity).add(flatUsedElectricity).add(valleyUsedElectricity);
|
||||||
|
|
||||||
|
// data中的总用电量
|
||||||
|
BigDecimal totalElectricity = new BigDecimal(StringUtils.isBlank(data.getTotalElectricity()) ? Constants.ZERO : data.getTotalElectricity());
|
||||||
|
|
||||||
// 平台计算的总消费金额 平台计算总电费金额 + 平台计算总服务费金额
|
// 平台计算的总消费金额 平台计算总电费金额 + 平台计算总服务费金额
|
||||||
BigDecimal computeTotalAmount = totalElectricityAmount.add(totalServiceAmount);
|
BigDecimal computeTotalAmount = totalElectricityAmount.add(totalServiceAmount);
|
||||||
|
|
||||||
// 如果算出来的 电费金额 + 服务费金额 != 总消费金额,则电费金额等于总消费金额 - 服务费金额
|
// 如果算出来的 电费金额 + 服务费金额 != 总消费金额,并且尖峰平谷总用电量大于0, 则使用平台计算金额
|
||||||
if (computeTotalAmount.compareTo(orderAmount) != 0) {
|
if (computeTotalAmount.compareTo(orderAmount) != 0 && (sumUsedElectricity.compareTo(BigDecimal.ZERO) > 0)) {
|
||||||
// 2025年3月26日15点50分, 订单金额以平台计算为主,所以注释掉, 并打印日志说明
|
// 2025年3月26日15点50分, 订单金额以平台计算为主,所以注释掉, 并打印日志说明
|
||||||
// totalElectricityAmount = orderAmount.subtract(totalServiceAmount);
|
// totalElectricityAmount = orderAmount.subtract(totalServiceAmount);
|
||||||
logger.info("平台计算出电费金额:{}, 服务费金额:{}, 汇总:{}, 交易记录传来的金额:{}", totalElectricityAmount, totalServiceAmount, computeTotalAmount, orderAmount);
|
logger.info("平台计算出电费金额:{}, 服务费金额:{}, 汇总:{}, 交易记录传来的金额:{}", totalElectricityAmount, totalServiceAmount, computeTotalAmount, orderAmount);
|
||||||
@@ -445,10 +451,7 @@ public abstract class AbstractProgramLogic implements InitializingBean {
|
|||||||
orderDetail.setTotalElectricityAmount(totalElectricityAmount);
|
orderDetail.setTotalElectricityAmount(totalElectricityAmount);
|
||||||
// 服务费总金额
|
// 服务费总金额
|
||||||
orderDetail.setTotalServiceAmount(totalServiceAmount);
|
orderDetail.setTotalServiceAmount(totalServiceAmount);
|
||||||
// 尖峰平谷用电量汇总
|
|
||||||
BigDecimal sumUsedElectricity = sharpUsedElectricity.add(peakUsedElectricity).add(flatUsedElectricity).add(valleyUsedElectricity);
|
|
||||||
// data中的总用电量
|
|
||||||
BigDecimal totalElectricity = new BigDecimal(StringUtils.isBlank(data.getTotalElectricity()) ? Constants.ZERO : data.getTotalElectricity());
|
|
||||||
// sumUsedElectricity与totalElectricity对比, 取最大的值
|
// sumUsedElectricity与totalElectricity对比, 取最大的值
|
||||||
orderDetail.setTotalUsedElectricity(totalElectricity.max(sumUsedElectricity));
|
orderDetail.setTotalUsedElectricity(totalElectricity.max(sumUsedElectricity));
|
||||||
// 订单总金额
|
// 订单总金额
|
||||||
|
|||||||
Reference in New Issue
Block a user