Commit a954dec6 by 周晓航

Merge branch 'feature/20210609-v2.0.34-购物车支持配送券ID1030707-周晓航' into qa

# Conflicts:
#	shopping-cart-application-service/src/main/java/cn/freemud/controller/ShoppingCartController.java
parents 2a9c3791 ac85b9ed
...@@ -122,13 +122,9 @@ public class ShoppingCartController { ...@@ -122,13 +122,9 @@ public class ShoppingCartController {
@LogIgnore(logMessage = "listCartGoods") @LogIgnore(logMessage = "listCartGoods")
public BaseResponse listCartGoods(@Validated @LogParams @RequestBody ShoppingCartInfoRequestVo request) { public BaseResponse listCartGoods(@Validated @LogParams @RequestBody ShoppingCartInfoRequestVo request) {
// 代金券 & 折扣券互斥校验 // 代金券 & 折扣券互斥校验
List<ShoppingCartInfoRequestVo.couponCode> couponCodes = request.getCouponCodes(); BaseResponse baseResponse = verifyCouponCodes(request.getCouponCodes());
if (CollectionUtils.isNotEmpty(couponCodes) && couponCodes.size() > 1) { if (baseResponse !=null) {
long count = couponCodes.stream().filter(c -> c.getCouponType().compareTo(CouponTypeEnum.TYPE_1.getCode()) == 0 return baseResponse;
|| c.getCouponType().compareTo(CouponTypeEnum.TYPE_3.getCode()) == 0).count();
if (count > 2) {
return ResponseUtil.error(ResponseResult.SHOPPING_CART_COUPON_MUTUAL_EXCLUSION);
}
} }
ShoppingCartNewService instanceByRequest = getInstanceByRequest(request); ShoppingCartNewService instanceByRequest = getInstanceByRequest(request);
if (instanceByRequest instanceof ShoppingCartNewServiceImpl && SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).newShoppingCartGray(request.getPartnerId(), request.getShopId())){ if (instanceByRequest instanceof ShoppingCartNewServiceImpl && SDKCommonBaseContextWare.getBean(ShoppingCartNewServiceImpl.class).newShoppingCartGray(request.getPartnerId(), request.getShopId())){
...@@ -147,13 +143,9 @@ public class ShoppingCartController { ...@@ -147,13 +143,9 @@ public class ShoppingCartController {
@LogIgnore(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},logMessage = "listCartGoodsCheck") @LogIgnore(excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},logMessage = "listCartGoodsCheck")
public BaseResponse listCartGoodsCheck(@Validated @LogParams @RequestBody ShoppingCartInfoRequestVo request) { public BaseResponse listCartGoodsCheck(@Validated @LogParams @RequestBody ShoppingCartInfoRequestVo request) {
// 代金券 & 折扣券互斥校验 // 代金券 & 折扣券互斥校验
List<ShoppingCartInfoRequestVo.couponCode> couponCodes = request.getCouponCodes(); BaseResponse baseResponse = verifyCouponCodes(request.getCouponCodes());
if (CollectionUtils.isNotEmpty(couponCodes) && couponCodes.size() > 1) { if (baseResponse !=null) {
long count = couponCodes.stream().filter(c -> c.getCouponType().compareTo(CouponTypeEnum.TYPE_1.getCode()) == 0 return baseResponse;
|| c.getCouponType().compareTo(CouponTypeEnum.TYPE_3.getCode()) == 0).count();
if (count > 2) {
return ResponseUtil.error(ResponseResult.SHOPPING_CART_COUPON_MUTUAL_EXCLUSION);
}
} }
return getInstanceByRequest(request).getGoodsListCheck(request); return getInstanceByRequest(request).getGoodsListCheck(request);
} }
...@@ -314,4 +306,19 @@ public class ShoppingCartController { ...@@ -314,4 +306,19 @@ public class ShoppingCartController {
return new BaseResponse("1","100",""); return new BaseResponse("1","100","");
} }
/**
* 校验 代金券/ 折扣券互斥
* @param couponCodes
* @return
*/
private BaseResponse verifyCouponCodes (List<ShoppingCartInfoRequestVo.couponCode> couponCodes){
if (CollectionUtils.isNotEmpty(couponCodes) && couponCodes.size() > 1) {
long count = couponCodes.stream().filter(c -> c.getCouponType().compareTo(CouponTypeEnum.TYPE_1.getCode()) == 0
|| c.getCouponType().compareTo(CouponTypeEnum.TYPE_3.getCode()) == 0).count();
if (count > 2) {
return ResponseUtil.error(ResponseResult.SHOPPING_CART_COUPON_MUTUAL_EXCLUSION);
}
}
return null;
}
} }
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