退款时, 已退款金额判断移动到具体方法中

This commit is contained in:
Guoqs
2025-04-23 10:18:26 +08:00
parent 6203e957a9
commit 2b6fd1ac36
3 changed files with 54 additions and 12 deletions

View File

@@ -4662,6 +4662,28 @@ public class OrderBasicInfoServiceImpl implements OrderBasicInfoService {
return orderBasicInfoMapper.queryRepayOrder(memberId);
}
/**
* 获取订单已退款金额
*/
@Override
public BigDecimal getOrderRefundedAmount(String orderCode) {
BigDecimal refunded = BigDecimal.ZERO;
OrderBasicInfo orderBasicInfo = getOrderInfoByOrderCode(orderCode);
List<OrderDetailInfoVO.OrderRefundInfo> orderRefundInfoList = getOrderRefundInfoList(orderBasicInfo);
if (CollectionUtils.isNotEmpty(orderRefundInfoList)) {
// 已退款金额
refunded = orderRefundInfoList.stream()
.map(x -> Objects.nonNull(x.getReverseAmt()) ? new BigDecimal(x.getReverseAmt()) : BigDecimal.ZERO)
.reduce(BigDecimal.ZERO,BigDecimal::add);
}
return refunded;
}
/**
* 查询该笔订单的退款记录
* @param orderCode
* @return
*/
@Override
public List<OrderDetailInfoVO.OrderRefundInfo> getOrderRefundInfoList(String orderCode) {
OrderBasicInfo orderBasicInfo = getOrderInfoByOrderCode(orderCode);