Commit 755d48bc by 徐康

种子券号免校验

parent b90beb08
...@@ -55,6 +55,7 @@ import com.freemud.application.sdk.api.membercenter.service.MemberCenterService; ...@@ -55,6 +55,7 @@ import com.freemud.application.sdk.api.membercenter.service.MemberCenterService;
import com.freemud.application.sdk.api.membercenter.service.MemberPropertyService; import com.freemud.application.sdk.api.membercenter.service.MemberPropertyService;
import com.freemud.application.sdk.api.ordercenter.constant.ResponseConstant; import com.freemud.application.sdk.api.ordercenter.constant.ResponseConstant;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType; import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
import com.freemud.application.sdk.api.storecenter.request.QueryDeliveryRequest; import com.freemud.application.sdk.api.storecenter.request.QueryDeliveryRequest;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest; import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
import com.freemud.application.sdk.api.storecenter.response.QueryDeliverDetailResponse; import com.freemud.application.sdk.api.storecenter.response.QueryDeliverDetailResponse;
...@@ -66,6 +67,7 @@ import org.apache.commons.collections4.CollectionUtils; ...@@ -66,6 +67,7 @@ import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.awt.geom.Point2D; import java.awt.geom.Point2D;
...@@ -116,6 +118,9 @@ public class CheckMCCafeOrder { ...@@ -116,6 +118,9 @@ public class CheckMCCafeOrder {
@Autowired @Autowired
private DeliveryServiceFeiginMCCafeClient deliveryServiceFeiginMCCafeClient; private DeliveryServiceFeiginMCCafeClient deliveryServiceFeiginMCCafeClient;
@Value("${mccafe.universal.coupon.code}")
private String withOrderBuyCouponCode;
private static Gson gson = new Gson(); private static Gson gson = new Gson();
/** /**
* 下单会员相关校验 * 下单会员相关校验
...@@ -486,7 +491,7 @@ public class CheckMCCafeOrder { ...@@ -486,7 +491,7 @@ public class CheckMCCafeOrder {
if("remove".equals(createOrderVo.getCouponCode())) { if("remove".equals(createOrderVo.getCouponCode())) {
createOrderVo.setCouponCode(""); createOrderVo.setCouponCode("");
} }
if("recardNomove".equals(createOrderVo.getFreightCouponCode())) { if("remove".equals(createOrderVo.getFreightCouponCode())) {
createOrderVo.setFreightCouponCode(""); createOrderVo.setFreightCouponCode("");
} }
if (StringUtils.isNotBlank(createOrderVo.getCouponCode())) { if (StringUtils.isNotBlank(createOrderVo.getCouponCode())) {
...@@ -558,18 +563,23 @@ public class CheckMCCafeOrder { ...@@ -558,18 +563,23 @@ public class CheckMCCafeOrder {
} }
List<MCCafeCouponVo> mcCafeCouponVos = new ArrayList<>(); List<MCCafeCouponVo> mcCafeCouponVos = new ArrayList<>();
Map<String, String> mcCafeUsedCoupon = new HashMap<>(); Map<String, String> mcCafeUsedCoupon = new HashMap<>();
List<String> seedCardList = shoppingCartGoodsDto.getProducts().stream().filter(o -> ProductTypeEnum.getVirtualProductType().contains(o.getProductType()))
.map(o -> o.getMonthCardInfo().getCardCode()).collect(Collectors.toList());
seedCardList.add(withOrderBuyCouponCode);
if(CollectionUtils.isNotEmpty(shoppingCartGoodsDto.getActivityDiscountsDtos())) { if(CollectionUtils.isNotEmpty(shoppingCartGoodsDto.getActivityDiscountsDtos())) {
shoppingCartGoodsDto.getActivityDiscountsDtos().forEach(o-> { shoppingCartGoodsDto.getActivityDiscountsDtos().forEach(o-> {
if(ActivityTypeEnum.TYPE_3.getCode().equals(o.getActivityType()) || ActivityTypeEnum.TYPE_32.getCode().equals(o.getActivityType()) if(!seedCardList.contains(o.getActivityCode())) {
|| ActivityTypeEnum.TYPE_34.getCode().equals(o.getActivityType()) || ActivityTypeEnum.TYPE_35.getCode().equals(o.getActivityType())) { if(ActivityTypeEnum.TYPE_3.getCode().equals(o.getActivityType()) || ActivityTypeEnum.TYPE_32.getCode().equals(o.getActivityType())
mcCafeCouponVos.add(new MCCafeCouponVo(o.getActivityCode())); || ActivityTypeEnum.TYPE_34.getCode().equals(o.getActivityType()) || ActivityTypeEnum.TYPE_35.getCode().equals(o.getActivityType())) {
} mcCafeCouponVos.add(new MCCafeCouponVo(o.getActivityCode()));
if(ActivityTypeEnum.TYPE_32.getCode().equals(o.getActivityType()) && null != o.getExtendType() }
&& (0 == o.getExtendType() || 3 == o.getExtendType() || 4 == o.getExtendType() || 5 == o.getExtendType())) { if(ActivityTypeEnum.TYPE_32.getCode().equals(o.getActivityType()) && null != o.getExtendType()
if(StringUtils.isNotBlank(mcCafeUsedCoupon.get(o.getActivityCode()))) { && (0 == o.getExtendType() || 3 == o.getExtendType() || 4 == o.getExtendType() || 5 == o.getExtendType())) {
throw new ServiceException(ResponseResult.COUPON_SHOP_NOTSUPPORT, o.getActivityName() + "不可以重复使用"); if(StringUtils.isNotBlank(mcCafeUsedCoupon.get(o.getActivityCode()))) {
} else { throw new ServiceException(ResponseResult.COUPON_SHOP_NOTSUPPORT, o.getActivityName() + "不可以重复使用");
mcCafeUsedCoupon.put(o.getActivityCode(), o.getActivityName()); } else {
mcCafeUsedCoupon.put(o.getActivityCode(), o.getActivityName());
}
} }
} }
}); });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment