电单车充满自停退款逻辑

This commit is contained in:
Guoqs
2024-09-25 10:30:10 +08:00
parent f86e4e44b9
commit e04f830d70

View File

@@ -517,12 +517,6 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic {
orderDetail.setFlatUsedElectricity(message.getConsumedEnergy());
}
// 更新数据库
OrderTransactionDTO dto = new OrderTransactionDTO();
dto.setOrderBasicInfo(orderBasicInfo);
dto.setOrderDetail(orderDetail);
transactionService.doUpdateOrder(dto);
// 充满自停需要退款
BigDecimal bigDecimal = new BigDecimal("5");
if (bigDecimal.compareTo(orderBasicInfo.getPayAmount()) == 0) {
@@ -532,6 +526,12 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic {
// 订单退款
refundOrder(orderBasicInfo);
}
// 更新数据库
OrderTransactionDTO dto = new OrderTransactionDTO();
dto.setOrderBasicInfo(orderBasicInfo);
dto.setOrderDetail(orderDetail);
transactionService.doUpdateOrder(dto);
}
/**
@@ -546,6 +546,11 @@ public class DelayMerchantProgramLogic extends AbstractProgramLogic {
BigDecimal flatElectricityPrice = orderDetail.getFlatElectricityPrice(); // x元/每度
BigDecimal flatServicePrice = orderDetail.getFlatServicePrice(); // x元/每度
if (consumedEnergy == null || flatElectricityPrice == null) {
logger.info("计算电单车退款逻辑,耗电量或计费模板为空,不执行退款逻辑, orderCode:{}, 耗电量:{}, 每度电费:{}", orderBasicInfo.getOrderCode(), consumedEnergy, flatElectricityPrice);
return;
}
// 消费金额
BigDecimal consumeAmount = consumedEnergy.multiply(flatElectricityPrice);