解决优惠券在购物车中缓存会出现的一些极端bug

This commit is contained in:
Chopper 2022-04-11 14:18:37 +08:00
parent 4095481411
commit 81c7a72b9c
2 changed files with 9 additions and 0 deletions

View File

@ -160,4 +160,9 @@ public class TradeDTO implements Serializable {
}
return skuList;
}
public void removeCoupon() {
this.canUseCoupons = new ArrayList<>();
this.cantUseCoupons = new ArrayList<>();
}
}

View File

@ -57,8 +57,12 @@ public class CouponRender implements CartRenderStep {
* @param tradeDTO 交易dto
*/
private void renderCouponRule(TradeDTO tradeDTO) {
// 清除之前的优惠券
tradeDTO.removeCoupon();
List<MemberCoupon> memberCouponList = memberCouponService.getMemberCoupons(tradeDTO.getMemberId());
//获取最新优惠券
memberCouponList = memberCouponList.stream()
.filter(item -> item.getStartTime().before(new Date()) && item.getEndTime().after(new Date()))
.collect(Collectors.toList());