配置充电停车优惠

This commit is contained in:
Guoqs
2025-02-18 13:36:15 +08:00
parent ced4a72cd8
commit c3e78af9e9
3 changed files with 35 additions and 13 deletions

View File

@@ -1773,19 +1773,31 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
*/
@Override
public OrderSplitResult realTimeOrderSplit(AfterSettleOrderDTO afterSettleOrderDTO) throws BaseAdaPayException {
// 查询订单信息
OrderBasicInfo orderBasicInfo = this.getOrderInfoByOrderCode(afterSettleOrderDTO.getOrderCode());
afterSettleOrderDTO.setOrderBasicInfo(orderBasicInfo);
// 校验订单支付金额,消费金额,退款金额
BigDecimal orderPayAmount = afterSettleOrderDTO.getOrderPayAmount(); // 支付金额
BigDecimal orderConsumeAmount = afterSettleOrderDTO.getOrderConsumeAmount(); // 消费金额
BigDecimal orderSettleAmount = afterSettleOrderDTO.getOrderSettleAmount();
BigDecimal orderRefundAmount = afterSettleOrderDTO.getOrderRefundAmount(); // 退款金额
if (orderSettleAmount.add(orderRefundAmount).compareTo(orderPayAmount) != 0) {
logger.info("realTimeOrderSplit-订单:{}, 支付金额与结算金额+退款金额不相等", afterSettleOrderDTO.getOrderCode());
return null;
// 如果是余额支付, 校验消费金额+ 退款金额 = 支付金额
if (StringUtils.equals(orderBasicInfo.getPayMode(), "1")) {
if (orderConsumeAmount.add(orderRefundAmount).compareTo(orderPayAmount) != 0) {
logger.info("realTimeOrderSplit-订单:{}, 支付金额与消费金额+退款金额不相等", afterSettleOrderDTO.getOrderCode());
return null;
}
}
// 查询订单信息
OrderBasicInfo orderBasicInfo = this.getOrderInfoByOrderCode(afterSettleOrderDTO.getOrderCode());
afterSettleOrderDTO.setOrderBasicInfo(orderBasicInfo);
// 如果是在线支付, 校验消费金额+ 退款金额 = 支付金额
if (StringUtils.equals(orderBasicInfo.getPayMode(), "4") || StringUtils.equals(orderBasicInfo.getPayMode(), "5")) {
if (orderSettleAmount.add(orderRefundAmount).compareTo(orderPayAmount) != 0) {
logger.info("realTimeOrderSplit-订单:{}, 支付金额与结算金额+退款金额不相等", afterSettleOrderDTO.getOrderCode());
return null;
}
}
// 订单结算金额,汇付分账
splittingMethod(afterSettleOrderDTO);