diff --git a/framework/src/main/java/cn/lili/modules/order/cart/entity/dto/TradeDTO.java b/framework/src/main/java/cn/lili/modules/order/cart/entity/dto/TradeDTO.java index e05113b1..45d9cd87 100644 --- a/framework/src/main/java/cn/lili/modules/order/cart/entity/dto/TradeDTO.java +++ b/framework/src/main/java/cn/lili/modules/order/cart/entity/dto/TradeDTO.java @@ -160,4 +160,9 @@ public class TradeDTO implements Serializable { } return skuList; } + + public void removeCoupon() { + this.canUseCoupons = new ArrayList<>(); + this.cantUseCoupons = new ArrayList<>(); + } } diff --git a/framework/src/main/java/cn/lili/modules/order/cart/render/impl/CouponRender.java b/framework/src/main/java/cn/lili/modules/order/cart/render/impl/CouponRender.java index 9eb7f01e..549dbd04 100644 --- a/framework/src/main/java/cn/lili/modules/order/cart/render/impl/CouponRender.java +++ b/framework/src/main/java/cn/lili/modules/order/cart/render/impl/CouponRender.java @@ -57,8 +57,12 @@ public class CouponRender implements CartRenderStep { * @param tradeDTO 交易dto */ private void renderCouponRule(TradeDTO tradeDTO) { + // 清除之前的优惠券 + tradeDTO.removeCoupon(); + List memberCouponList = memberCouponService.getMemberCoupons(tradeDTO.getMemberId()); + //获取最新优惠券 memberCouponList = memberCouponList.stream() .filter(item -> item.getStartTime().before(new Date()) && item.getEndTime().after(new Date())) .collect(Collectors.toList());