fix: 退款修改
This commit is contained in:
@@ -2964,6 +2964,8 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
||||
BigDecimal saleAmount = BigDecimal.ZERO;
|
||||
ArrayList<TbOrderDetail> remainOrderDetailList = new ArrayList<>();
|
||||
boolean hasNormalReturn = false;
|
||||
|
||||
ArrayList<TbOrderDetail> copyDetailList = new ArrayList<>();
|
||||
for (TbOrderDetail orderDetail : detailList) {
|
||||
// 原始金额
|
||||
BigDecimal originalAmount = orderDetail.getPriceAmount();
|
||||
@@ -3056,6 +3058,10 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
||||
orderDetail.setReturnAmount(returnAmount);
|
||||
// orderDetail.setStatus(isOnline ? "refunding" : "refund");
|
||||
orderDetail.setStatus("refund");
|
||||
|
||||
TbOrderDetail returnOrderDetailCopy = BeanUtil.copyProperties(orderDetail, TbOrderDetail.class);
|
||||
returnOrderDetailCopy.setId(null);
|
||||
copyDetailList.add(returnOrderDetailCopy);
|
||||
}
|
||||
|
||||
if (returnAmount.compareTo(BigDecimal.ZERO) < 0) {
|
||||
@@ -3101,6 +3107,11 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
||||
orderInfoMapper.updateById(returnOrder);
|
||||
}
|
||||
|
||||
// 保存新的退款detail信息
|
||||
TbOrderInfo finalReturnOrder = returnOrder;
|
||||
copyDetailList.forEach(item -> item.setOrderId(finalReturnOrder.getId()));
|
||||
mpOrderDetailService.saveBatch(copyDetailList);
|
||||
|
||||
updateStockAndRecord(detailList);
|
||||
mpOrderDetailService.updateBatchById(detailList);
|
||||
data.put("returnOrder", returnOrder);
|
||||
|
||||
Reference in New Issue
Block a user