新增刷数据接口

This commit is contained in:
2023-05-25 14:31:50 +08:00
parent 77d17ed2d1
commit 202bda62a9

View File

@@ -170,7 +170,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
private void tempUpdateVirtualAmount(List<OrderListVO> orderListVOS) { private void tempUpdateVirtualAmount(List<OrderListVO> orderListVOS) {
for (OrderListVO orderListVO : orderListVOS) { for (OrderListVO orderListVO : orderListVOS) {
if (orderListVO.getVirtualAmount() != null) { if (orderListVO.getVirtualAmount() != null) {
continue; // continue;
} }
// 订单总消费金额 // 订单总消费金额
BigDecimal orderAmount = new BigDecimal(orderListVO.getOrderAmount()); BigDecimal orderAmount = new BigDecimal(orderListVO.getOrderAmount());
@@ -180,6 +180,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
// 结算金额 // 结算金额
BigDecimal settleAmount = BigDecimal.ZERO; BigDecimal settleAmount = BigDecimal.ZERO;
if (orderAmount.compareTo(BigDecimal.ZERO) > 0) {
if (StringUtils.equals(orderListVO.getPayMode(), OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue())) { if (StringUtils.equals(orderListVO.getPayMode(), OrderPayModeEnum.PAYMENT_OF_BALANCE.getValue())) {
/* /*
余额支付 查询支付记录如全部用本金支付则虚拟金额为0结算金额为订单消费金额 余额支付 查询支付记录如全部用本金支付则虚拟金额为0结算金额为订单消费金额
@@ -189,8 +190,13 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
List<OrderPayRecord> orderPayRecordList = orderPayRecordService.getOrderPayRecordList(orderListVO.getOrderCode()); List<OrderPayRecord> orderPayRecordList = orderPayRecordService.getOrderPayRecordList(orderListVO.getOrderCode());
for (OrderPayRecord orderPayRecord : orderPayRecordList) { for (OrderPayRecord orderPayRecord : orderPayRecordList) {
if (StringUtils.equals(orderPayRecord.getPayMode(), OrderPayRecordEnum.GIFT_BALANCE_PAYMENT.getValue())) { if (StringUtils.equals(orderPayRecord.getPayMode(), OrderPayRecordEnum.GIFT_BALANCE_PAYMENT.getValue())) {
BigDecimal bigDecimal = orderPayRecord.getRefundAmount() == null ? BigDecimal.ZERO : orderPayRecord.getRefundAmount(); if (orderPayRecord.getRefundAmount() == null) {
virtualAmount = orderPayRecord.getPayAmount().subtract(bigDecimal); // 需要退款的金额 = 支付金额 - 订单金额
BigDecimal refundAmount = orderPayRecord.getPayAmount().subtract(orderAmount);
// 赠送金额消费部分 = 支付金额 - 需要退款金额
virtualAmount = orderPayRecord.getPayAmount().subtract(refundAmount);
}
// 结算金额 = 订单金额 - 赠送金额消费部分
settleAmount = orderAmount.subtract(virtualAmount); settleAmount = orderAmount.subtract(virtualAmount);
} else { } else {
settleAmount = orderAmount; settleAmount = orderAmount;
@@ -202,6 +208,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
*/ */
settleAmount = orderAmount; settleAmount = orderAmount;
} }
}
OrderBasicInfo build = OrderBasicInfo.builder() OrderBasicInfo build = OrderBasicInfo.builder()
.id(Long.parseLong(orderListVO.getId())) .id(Long.parseLong(orderListVO.getId()))
@@ -410,6 +417,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService {
/** /**
* 修改订单详情 * 修改订单详情
*
* @param orderDetail * @param orderDetail
* @return * @return
*/ */