商品券计算

This commit is contained in:
wangw 2025-10-14 11:05:11 +08:00
parent 004377cc7e
commit 1637287974
1 changed files with 2 additions and 0 deletions

View File

@ -667,6 +667,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
*/
private void foodsCalculate(List<OrderDetail> orderDetails, boolean isAllFoods, List<Long> couponFoodIds, int discountNum, boolean isAsc, BigDecimalDTO prodCouponAmount) {
orderDetails = getDetailsSort(orderDetails, isAsc);
log.info("商品券 计算 orderDetails:{}", orderDetails);
BigDecimal remaining = new BigDecimal(discountNum);
for (OrderDetail detail : orderDetails) {
if ((isAllFoods || couponFoodIds.contains(detail.getProductId())) && detail.getUnitPrice().compareTo(BigDecimal.ZERO) > 0) {
@ -685,6 +686,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
prodCouponAmount.setPrice(prodCouponAmount.getPrice().add(detail.getDiscountAmount()));
}
}
log.info("商品券 计算 已经抵扣金额:{} ,剩余可抵扣数量:{}", prodCouponAmount.getPrice(), remaining);
if (remaining.compareTo(BigDecimal.ZERO) <= 0) {
break;
}