fix: 比例计算根据可退金额计算

This commit is contained in:
张松 2024-11-22 15:17:16 +08:00
parent 560281db00
commit 389e852f27
1 changed files with 3 additions and 3 deletions

View File

@ -2817,7 +2817,7 @@ public class TbShopTableServiceImpl implements TbShopTableService {
// 计算当前商品占比
BigDecimal ratio = calcDetailRatio(orderDetail, returnNum);
currentDetailAMount = orderDetail.getPriceAmount().divide(orderDetail.getNum(), 8, RoundingMode.HALF_UP)
.multiply(returnNum).setScale(2, RoundingMode.HALF_UP);
.multiply(returnNum).setScale(2, RoundingMode.DOWN);
if (oldOrderInfo.getRefundAmount() == null) {
oldOrderInfo.setRefundAmount(BigDecimal.ZERO);
}
@ -2905,8 +2905,8 @@ public class TbShopTableServiceImpl implements TbShopTableService {
}
}
return orderDetail.getPriceAmount().divide(totalAmount, 8, RoundingMode.HALF_UP)
.divide(orderDetail.getNum(), 8, RoundingMode.HALF_UP).multiply(returnNum).setScale(2, RoundingMode.HALF_UP);
return orderDetail.getPriceAmount().divide(totalAmount, 10, RoundingMode.DOWN)
.divide(orderDetail.getNum(), 10, RoundingMode.DOWN).multiply(returnNum).setScale(2, RoundingMode.DOWN);
}
private void updateStockAndRecord(List<TbOrderDetail> orderDetailList) {