打印日志

This commit is contained in:
Guoqs
2025-03-26 15:52:08 +08:00
parent 94c3f33b5e
commit 72b99da831

View File

@@ -301,23 +301,23 @@ public abstract class AbstractProgramLogic implements InitializingBean {
BigDecimal electricityPrice = orderDetail.getSharpElectricityPrice(); BigDecimal electricityPrice = orderDetail.getSharpElectricityPrice();
// 计算该时段电费 = 电费单价 x 用电量 // 计算该时段电费 = 电费单价 x 用电量
BigDecimal sharpElectricityAmount = electricityPrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal electricityAmount = electricityPrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN);
totalElectricityAmount = totalElectricityAmount.add(sharpElectricityAmount); totalElectricityAmount = totalElectricityAmount.add(electricityAmount);
// 该时段服务费单价 // 该时段服务费单价
BigDecimal servicePrice = orderDetail.getSharpServicePrice(); BigDecimal servicePrice = orderDetail.getSharpServicePrice();
// 计算该时段服务费 // 计算该时段服务费
BigDecimal sharpServiceAmount = servicePrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal serviceAmount = servicePrice.multiply(sharpUsedElectricity).setScale(2, RoundingMode.DOWN);
totalServiceAmount = totalServiceAmount.add(sharpServiceAmount); totalServiceAmount = totalServiceAmount.add(serviceAmount);
// 该时段单价 = 电费单价 + 服务费单价 // 该时段单价 = 电费单价 + 服务费单价
BigDecimal price = electricityPrice.add(servicePrice); BigDecimal price = electricityPrice.add(servicePrice);
// 该时段金额 = 该时段电费 + 该时段服务费 // 该时段金额 = 该时段电费 + 该时段服务费
BigDecimal amount = sharpElectricityAmount.add(sharpServiceAmount); BigDecimal amount = electricityAmount.add(serviceAmount);
// if (data.getSharpPrice() != null) { // if (data.getSharpPrice() != null) {
// orderDetail.setSharpPrice(new BigDecimal(data.getSharpPrice())); // orderDetail.setSharpPrice(new BigDecimal(data.getSharpPrice()));
@@ -328,8 +328,8 @@ public abstract class AbstractProgramLogic implements InitializingBean {
orderDetail.setSharpPrice(price); orderDetail.setSharpPrice(price);
orderDetail.setSharpAmount(amount); orderDetail.setSharpAmount(amount);
logger.info("更新订单详情:【{}】, 当前为尖时段, 电费单价:{}, 服务费单价:{}, 时段单价:{}, 耗电量:{}, 平台计算该时段消费金额:{}, 桩传的单价:{}, 桩传的金额:{}", logger.info("更新订单详情:【{}】, 当前为尖时段, 时段单价:{}(电费单价:{}+服务费单价:{}), 耗电量:{}, 平台计算该时段消费金额:{}(电费:{}+服务费:{}), 桩传的单价:{}, 桩传的金额:{}",
orderCode, electricityPrice, servicePrice, price, sharpUsedElectricity, amount, data.getSharpPrice(), data.getSharpAmount()); orderCode, price, electricityPrice, servicePrice, sharpUsedElectricity, amount, electricityAmount, serviceAmount, data.getSharpPrice(), data.getSharpAmount());
} }
// 峰时段用电量 // 峰时段用电量
@@ -342,23 +342,23 @@ public abstract class AbstractProgramLogic implements InitializingBean {
BigDecimal electricityPrice = orderDetail.getPeakElectricityPrice(); BigDecimal electricityPrice = orderDetail.getPeakElectricityPrice();
// 计算该时段电费 = 电费单价 x 用电量 // 计算该时段电费 = 电费单价 x 用电量
BigDecimal peakElectricityAmount = electricityPrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal electricityAmount = electricityPrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN);
totalElectricityAmount = totalElectricityAmount.add(peakElectricityAmount); totalElectricityAmount = totalElectricityAmount.add(electricityAmount);
// 该时段服务费单价 // 该时段服务费单价
BigDecimal servicePrice = orderDetail.getPeakServicePrice(); BigDecimal servicePrice = orderDetail.getPeakServicePrice();
// 计算该时段服务费 // 计算该时段服务费
BigDecimal peakServiceAmount = servicePrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal serviceAmount = servicePrice.multiply(peakUsedElectricity).setScale(2, RoundingMode.DOWN);
totalServiceAmount = totalServiceAmount.add(peakServiceAmount); totalServiceAmount = totalServiceAmount.add(serviceAmount);
// 该时段单价 = 电费单价 + 服务费单价 // 该时段单价 = 电费单价 + 服务费单价
BigDecimal price = electricityPrice.add(servicePrice); BigDecimal price = electricityPrice.add(servicePrice);
// 该时段金额 = 该时段电费 + 该时段服务费 // 该时段金额 = 该时段电费 + 该时段服务费
BigDecimal amount = peakElectricityAmount.add(peakServiceAmount); BigDecimal amount = electricityAmount.add(serviceAmount);
// if (data.getPeakPrice() != null) { // if (data.getPeakPrice() != null) {
// orderDetail.setPeakPrice(new BigDecimal(data.getPeakPrice())); // orderDetail.setPeakPrice(new BigDecimal(data.getPeakPrice()));
@@ -369,8 +369,9 @@ public abstract class AbstractProgramLogic implements InitializingBean {
orderDetail.setPeakPrice(price); orderDetail.setPeakPrice(price);
orderDetail.setPeakAmount(amount); orderDetail.setPeakAmount(amount);
logger.info("更新订单详情:【{}】, 当前为峰时段, 电费单价:{}, 服务费单价:{}, 时段单价:{}, 耗电量:{}, 平台计算该时段消费金额:{}, 桩传的单价:{}, 桩传的金额:{}",
orderCode, electricityPrice, servicePrice, price, peakUsedElectricity, amount, data.getPeakPrice(), data.getPeakAmount()); logger.info("更新订单详情:【{}】, 当前为峰时段, 时段单价:{}(电费单价:{}+服务费单价:{}), 耗电量:{}, 平台计算该时段消费金额:{}(电费:{}+服务费:{}), 桩传的单价:{}, 桩传的金额:{}",
orderCode, price, electricityPrice, servicePrice, peakUsedElectricity, amount, electricityAmount, serviceAmount, data.getPeakPrice(), data.getPeakAmount());
} }
// 平时段用电量 // 平时段用电量
@@ -383,23 +384,23 @@ public abstract class AbstractProgramLogic implements InitializingBean {
BigDecimal electricityPrice = orderDetail.getFlatElectricityPrice(); BigDecimal electricityPrice = orderDetail.getFlatElectricityPrice();
// 计算该时段电费 = 电费单价 x 用电量 // 计算该时段电费 = 电费单价 x 用电量
BigDecimal flatElectricityAmount = electricityPrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal electricityAmount = electricityPrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN);
totalElectricityAmount = totalElectricityAmount.add(flatElectricityAmount); totalElectricityAmount = totalElectricityAmount.add(electricityAmount);
// 该时段服务费单价 // 该时段服务费单价
BigDecimal servicePrice = orderDetail.getFlatServicePrice(); BigDecimal servicePrice = orderDetail.getFlatServicePrice();
// 计算该时段服务费 // 计算该时段服务费
BigDecimal flatServiceAmount = servicePrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal serviceAmount = servicePrice.multiply(flatUsedElectricity).setScale(2, RoundingMode.DOWN);
totalServiceAmount = totalServiceAmount.add(flatServiceAmount); totalServiceAmount = totalServiceAmount.add(serviceAmount);
// 该时段单价 = 电费单价 + 服务费单价 // 该时段单价 = 电费单价 + 服务费单价
BigDecimal price = electricityPrice.add(servicePrice); BigDecimal price = electricityPrice.add(servicePrice);
// 该时段金额 = 该时段电费 + 该时段服务费 // 该时段金额 = 该时段电费 + 该时段服务费
BigDecimal amount = flatElectricityAmount.add(flatServiceAmount); BigDecimal amount = electricityAmount.add(serviceAmount);
// if (data.getFlatPrice() != null) { // if (data.getFlatPrice() != null) {
// orderDetail.setFlatPrice(new BigDecimal(data.getFlatPrice())); // orderDetail.setFlatPrice(new BigDecimal(data.getFlatPrice()));
@@ -410,8 +411,9 @@ public abstract class AbstractProgramLogic implements InitializingBean {
orderDetail.setFlatPrice(price); orderDetail.setFlatPrice(price);
orderDetail.setFlatAmount(amount); orderDetail.setFlatAmount(amount);
logger.info("更新订单详情:【{}】, 当前为平时段, 电费单价:{}, 服务费单价:{}, 时段单价:{}, 耗电量:{}, 平台计算该时段消费金额:{}, 桩传的单价:{}, 桩传的金额:{}",
orderCode, electricityPrice, servicePrice, price, flatUsedElectricity, amount, data.getFlatPrice(), data.getFlatAmount()); logger.info("更新订单详情:【{}】, 当前为平时段, 时段单价:{}(电费单价:{}+服务费单价:{}), 耗电量:{}, 平台计算该时段消费金额:{}(电费:{}+服务费:{}), 桩传的单价:{}, 桩传的金额:{}",
orderCode, price, electricityPrice, servicePrice, flatUsedElectricity, amount, electricityAmount, serviceAmount, data.getFlatPrice(), data.getFlatAmount());
} }
// 谷时段用电量 // 谷时段用电量
@@ -424,23 +426,23 @@ public abstract class AbstractProgramLogic implements InitializingBean {
BigDecimal electricityPrice = orderDetail.getValleyElectricityPrice(); BigDecimal electricityPrice = orderDetail.getValleyElectricityPrice();
// 计算该时段电费 = 电费单价 x 用电量 // 计算该时段电费 = 电费单价 x 用电量
BigDecimal valleyElectricityAmount = electricityPrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal electricityAmount = electricityPrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN);
totalElectricityAmount = totalElectricityAmount.add(valleyElectricityAmount); totalElectricityAmount = totalElectricityAmount.add(electricityAmount);
// 该时段服务费单价 // 该时段服务费单价
BigDecimal servicePrice = orderDetail.getValleyServicePrice(); BigDecimal servicePrice = orderDetail.getValleyServicePrice();
// 计算该时段服务费 // 计算该时段服务费
BigDecimal valleyServiceAmount = servicePrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN); BigDecimal serviceAmount = servicePrice.multiply(valleyUsedElectricity).setScale(2, RoundingMode.DOWN);
totalServiceAmount = totalServiceAmount.add(valleyServiceAmount); totalServiceAmount = totalServiceAmount.add(serviceAmount);
// 该时段单价 = 电费单价 + 服务费单价 // 该时段单价 = 电费单价 + 服务费单价
BigDecimal price = electricityPrice.add(servicePrice); BigDecimal price = electricityPrice.add(servicePrice);
// 该时段金额 = 该时段电费 + 该时段服务费 // 该时段金额 = 该时段电费 + 该时段服务费
BigDecimal amount = valleyElectricityAmount.add(valleyServiceAmount); BigDecimal amount = electricityAmount.add(serviceAmount);
// if (data.getValleyPrice() != null) { // if (data.getValleyPrice() != null) {
// orderDetail.setValleyPrice(new BigDecimal(data.getValleyPrice())); // orderDetail.setValleyPrice(new BigDecimal(data.getValleyPrice()));
@@ -451,13 +453,16 @@ public abstract class AbstractProgramLogic implements InitializingBean {
orderDetail.setValleyPrice(price); orderDetail.setValleyPrice(price);
orderDetail.setValleyAmount(amount); orderDetail.setValleyAmount(amount);
logger.info("更新订单详情:【{}】, 当前为谷时段, 电费单价:{}, 服务费单价:{}, 时段单价:{}, 耗电量:{}, 平台计算该时段消费金额:{}, 桩传的单价:{}, 桩传的金额:{}",
orderCode, electricityPrice, servicePrice, price, valleyUsedElectricity, amount, data.getValleyPrice(), data.getValleyAmount()); logger.info("更新订单详情:【{}】, 当前为谷时段, 时段单价:{}(电费单价:{}+服务费单价:{}), 耗电量:{}, 平台计算该时段消费金额:{}(电费:{}+服务费:{}), 桩传的单价:{}, 桩传的金额:{}",
orderCode, price, electricityPrice, servicePrice, valleyUsedElectricity, amount, electricityAmount, serviceAmount, data.getValleyPrice(), data.getValleyAmount());
} }
// 如果算出来的 电费金额 + 服务费金额 != 总消费金额,则电费金额等于总消费金额 - 服务费金额 // 如果算出来的 电费金额 + 服务费金额 != 总消费金额,则电费金额等于总消费金额 - 服务费金额
if (totalElectricityAmount.add(totalServiceAmount).compareTo(orderAmount) != 0) { if (totalElectricityAmount.add(totalServiceAmount).compareTo(orderAmount) != 0) {
totalElectricityAmount = orderAmount.subtract(totalServiceAmount); // 2025年3月26日15点50分, 订单金额以平台计算为主,所以注释掉, 并打印日志说明
// totalElectricityAmount = orderAmount.subtract(totalServiceAmount);
logger.info("平台计算出电费金额:{}, 服务费金额:{}, 汇总:{}, 交易记录传来的金额:{}", totalElectricityAmount, totalServiceAmount, totalElectricityAmount.add(totalServiceAmount), orderAmount);
} }
// 电费总金额 // 电费总金额