优惠券价格未渲染,但是优惠券却使用问题
This commit is contained in:
@@ -212,22 +212,27 @@ public class CouponRender implements CartRenderStep {
|
||||
MemberCouponDTO platformCoupon = tradeDTO.getPlatformCoupon();
|
||||
//如果有勾选平台优惠券
|
||||
if (platformCoupon != null) {
|
||||
for (MemberCoupon canUseCoupon : tradeDTO.getCanUseCoupons()) {
|
||||
if(canUseCoupon.getCouponId().equals(platformCoupon.getMemberCoupon().getCouponId())){
|
||||
renderSku(tradeDTO, platformCoupon);
|
||||
}
|
||||
//判断该优惠券是否可以使用,如果可以进行价格渲染,如果不可以使用,去掉该优惠券的使用
|
||||
boolean checkFlag = tradeDTO.getCanUseCoupons().stream().anyMatch(item -> item.getCouponId().equals(platformCoupon.getMemberCoupon().getCouponId()));
|
||||
if(checkFlag){
|
||||
renderSku(tradeDTO, platformCoupon);
|
||||
}else{
|
||||
tradeDTO.setPlatformCoupon(null);
|
||||
}
|
||||
}
|
||||
//计算商家优惠券
|
||||
Map<String, MemberCouponDTO> map = tradeDTO.getStoreCoupons();
|
||||
if (map != null && map.size() > 0) {
|
||||
for (MemberCouponDTO memberCouponDTO : map.values()) {
|
||||
for (MemberCoupon canUseCoupon : tradeDTO.getCanUseCoupons()) {
|
||||
if(canUseCoupon.getCouponId().equals(memberCouponDTO.getMemberCoupon().getCouponId())){
|
||||
renderSku(tradeDTO, memberCouponDTO);
|
||||
}
|
||||
//判断该优惠券是否可以使用,如果可以进行价格渲染,如果不可以使用,去掉该优惠券的使用
|
||||
boolean storeCouponCheck = tradeDTO.getCanUseCoupons().stream().anyMatch(item -> item.getCouponId().equals(memberCouponDTO.getMemberCoupon().getCouponId()));
|
||||
if(storeCouponCheck){
|
||||
renderSku(tradeDTO, memberCouponDTO);
|
||||
}else{
|
||||
map.values().remove(memberCouponDTO);
|
||||
}
|
||||
}
|
||||
tradeDTO.setStoreCoupons(map);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user