fix: 折扣金额修复
This commit is contained in:
@@ -1337,11 +1337,20 @@ public class TbShopTableServiceImpl implements TbShopTableService {
|
||||
outRecords.add(tbActivateOutRecord);
|
||||
cashierCart.setUseCouponInfo(JSONObject.toJSONString(tbActivateOutRecord));
|
||||
|
||||
couponVo.setFinalDiscountAmount(discountAmount);
|
||||
// 优惠券未消耗完毕
|
||||
if (balanceCart != null && getCanUseCoupon(couponMap, balanceCart.getProductId()) != null) {
|
||||
discountAmount = reduceProCoupon(couponMap, balanceCart, usedCouponMap, discountAmount, balanceCartList, outRecords, memberId);
|
||||
// 递归调用并累加递归返回的折扣金额
|
||||
discountAmount = discountAmount.add(reduceProCoupon(
|
||||
couponMap,
|
||||
balanceCart,
|
||||
usedCouponMap,
|
||||
BigDecimal.ZERO, // 避免重复累加,递归时传入新的初始值
|
||||
balanceCartList,
|
||||
outRecords,
|
||||
memberId
|
||||
));
|
||||
}
|
||||
couponVo.setFinalDiscountAmount(discountAmount);
|
||||
return discountAmount;
|
||||
}
|
||||
return discountAmount;
|
||||
|
||||
Reference in New Issue
Block a user