Commit ffb66ec0 by ping.wu

麦咖啡购物车可用券

parent b670c7f8
...@@ -47,4 +47,14 @@ public class GetMemberCouponListRequestDto { ...@@ -47,4 +47,14 @@ public class GetMemberCouponListRequestDto {
*/ */
private Integer pageSize; private Integer pageSize;
//以下为麦咖啡需要参数
private String appId;
private String unionId;
private String thirdPartyMemberId;
private String tag;
} }
...@@ -116,9 +116,9 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -116,9 +116,9 @@ public class ShoppingCartMCoffeeServiceImpl {
String spuId2 = spuId; String spuId2 = spuId;
List<Long> productIds = new ArrayList<>(); List<Long> productIds = new ArrayList<>();
//商品券校验 //商品券校验
if(spuId.startsWith(CommonsConstant.COUPON_PREFIX)){ if (spuId.startsWith(CommonsConstant.COUPON_PREFIX)) {
couponCode = spuId.substring(CommonsConstant.COUPON_PREFIX.length()); couponCode = spuId.substring(CommonsConstant.COUPON_PREFIX.length());
spuId2 = validCoupon(partnerId, storeId, spuId, productIds,BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode()); spuId2 = validCoupon(partnerId, storeId, spuId, productIds, BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode());
goodsId = spuId2; goodsId = spuId2;
} }
productIds.add(Long.parseLong(goodsId)); productIds.add(Long.parseLong(goodsId));
...@@ -133,7 +133,7 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -133,7 +133,7 @@ public class ShoppingCartMCoffeeServiceImpl {
//商品券已添加情况校验 //商品券已添加情况校验
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = checkGoodsCoupon(oldCartGoodsList, operationType, couponCode); List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = checkGoodsCoupon(oldCartGoodsList, operationType, couponCode);
CartGoods addCartGoods = convent2CartGoods(addShoppingCartGoodsRequestVo,goodsId); CartGoods addCartGoods = convent2CartGoods(addShoppingCartGoodsRequestVo, goodsId);
setClassificationAndPrice(addCartGoods, productBeanListSpuClass); setClassificationAndPrice(addCartGoods, productBeanListSpuClass);
//查询多个商品库存信息 //查询多个商品库存信息
// Integer checkQty = this.checkSkuQty(oldCartGoodsList, addCartGoods); // Integer checkQty = this.checkSkuQty(oldCartGoodsList, addCartGoods);
...@@ -159,9 +159,9 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -159,9 +159,9 @@ public class ShoppingCartMCoffeeServiceImpl {
return ResponseUtil.success(shoppingCartGoodsResponseVo); return ResponseUtil.success(shoppingCartGoodsResponseVo);
} }
private String validCoupon(String partnerId, String storeId, String spuId, List<Long> productIds,String menuType) { private String validCoupon(String partnerId, String storeId, String spuId, List<Long> productIds, String menuType) {
String spuId2; String spuId2;
CheckSpqInfoRequestDto checkSpqInfoRequestDto = new CheckSpqInfoRequestDto(partnerId, storeId, spuId.substring(CommonsConstant.COUPON_PREFIX.length()),menuType); CheckSpqInfoRequestDto checkSpqInfoRequestDto = new CheckSpqInfoRequestDto(partnerId, storeId, spuId.substring(CommonsConstant.COUPON_PREFIX.length()), menuType);
CouponService couponService = SDKCommonBaseContextWare.getBean(CouponService.class); CouponService couponService = SDKCommonBaseContextWare.getBean(CouponService.class);
CheckSpqInfoResponseDto checkSpqInfoResponseDto = couponService.checkSpqInfo(checkSpqInfoRequestDto); CheckSpqInfoResponseDto checkSpqInfoResponseDto = couponService.checkSpqInfo(checkSpqInfoRequestDto);
if (checkSpqInfoResponseDto == null) { if (checkSpqInfoResponseDto == null) {
...@@ -320,9 +320,11 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -320,9 +320,11 @@ public class ShoppingCartMCoffeeServiceImpl {
// 获取用户信息 // 获取用户信息
CustomerInfoVo assortmentCustomerInfoVo = getCustomerInfoVo(shoppingCartInfoRequestVo.getSessionId()); CustomerInfoVo assortmentCustomerInfoVo = getCustomerInfoVo(shoppingCartInfoRequestVo.getSessionId());
String userId = assortmentCustomerInfoVo.getMemberId(); String userId = assortmentCustomerInfoVo.getMemberId();
String thirdPartyMemberID = assortmentCustomerInfoVo.getThirdPartyMemberID();
String unionId = assortmentCustomerInfoVo.getUnionId();
String partnerId = shoppingCartInfoRequestVo.getPartnerId(); String partnerId = shoppingCartInfoRequestVo.getPartnerId();
String storeId = shoppingCartInfoRequestVo.getShopId(); String storeId = shoppingCartInfoRequestVo.getShopId();
// String appId = shoppingCartInfoRequestVo.getAppId(); String appId = shoppingCartInfoRequestVo.getAppId();
//非商品券券号 //非商品券券号
String couponCode = shoppingCartInfoRequestVo.getCouponCode(); String couponCode = shoppingCartInfoRequestVo.getCouponCode();
// String menuType = shoppingCartInfoRequestVo.getMenuType(); // String menuType = shoppingCartInfoRequestVo.getMenuType();
...@@ -335,7 +337,7 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -335,7 +337,7 @@ public class ShoppingCartMCoffeeServiceImpl {
return ResponseUtil.error(ResponseResult.SHOPPING_CART_ADD_INVAILD); return ResponseUtil.error(ResponseResult.SHOPPING_CART_ADD_INVAILD);
} }
// 获取购物车商品-查询用户券-券码校验可用券 // 获取购物车商品-查询用户券-券码校验可用券
availableCoupon = couponDiscountCalculation.availableCoupon(partnerId, storeId, userId, couponCode, orderType, cartGoodsList); availableCoupon = couponDiscountCalculation.availableCoupon(partnerId, storeId, userId, thirdPartyMemberID, unionId,appId, couponCode, orderType, cartGoodsList);
return ResponseUtil.success(availableCoupon); return ResponseUtil.success(availableCoupon);
} }
...@@ -489,8 +491,8 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -489,8 +491,8 @@ public class ShoppingCartMCoffeeServiceImpl {
/** /**
* 清除购物车商品券 * 清除购物车商品券
*/ */
private void clearCartCouponGoods(String partnerId, String storeId, String userId, String sessionId,List<CartGoods> cartGoodsList) { private void clearCartCouponGoods(String partnerId, String storeId, String userId, String sessionId, List<CartGoods> cartGoodsList) {
if(CollectionUtils.isEmpty(cartGoodsList)){ if (CollectionUtils.isEmpty(cartGoodsList)) {
return; return;
} }
cartGoodsList = cartGoodsList.stream().filter(cartGoods -> cartGoods.getCouponCode() == null).collect(Collectors.toList()); cartGoodsList = cartGoodsList.stream().filter(cartGoods -> cartGoods.getCouponCode() == null).collect(Collectors.toList());
...@@ -756,7 +758,7 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -756,7 +758,7 @@ public class ShoppingCartMCoffeeServiceImpl {
private List<CartGoods> checkNewCartGoods(List<CartGoods> newCartGoods, CartGoods addCartGoods) { private List<CartGoods> checkNewCartGoods(List<CartGoods> newCartGoods, CartGoods addCartGoods) {
Integer qty = addCartGoods.getQty() == null ? 0 : addCartGoods.getQty(); Integer qty = addCartGoods.getQty() == null ? 0 : addCartGoods.getQty();
if(StringUtils.isNotBlank(addCartGoods.getCouponCode())){ if (StringUtils.isNotBlank(addCartGoods.getCouponCode())) {
newCartGoods.add(addCartGoods); newCartGoods.add(addCartGoods);
return newCartGoods; return newCartGoods;
} }
...@@ -764,8 +766,8 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -764,8 +766,8 @@ public class ShoppingCartMCoffeeServiceImpl {
boolean isadd = true; boolean isadd = true;
if (CollectionUtils.isNotEmpty(newCartGoods)) { if (CollectionUtils.isNotEmpty(newCartGoods)) {
for (CartGoods goods : newCartGoods) { for (CartGoods goods : newCartGoods) {
if (goods.getSkuId().equals(addCartGoods.getSkuId()) && goods.getSpuId().equals(addCartGoods.getSpuId())){ if (goods.getSkuId().equals(addCartGoods.getSkuId()) && goods.getSpuId().equals(addCartGoods.getSpuId())) {
if(goods.getProductGroupList() != null && addCartGoods.getProductGroupList() !=null && goods.getProductGroupList().size() == addCartGoods.getProductGroupList().size()){ if (goods.getProductGroupList() != null && addCartGoods.getProductGroupList() != null && goods.getProductGroupList().size() == addCartGoods.getProductGroupList().size()) {
} }
} }
...@@ -862,7 +864,7 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -862,7 +864,7 @@ public class ShoppingCartMCoffeeServiceImpl {
} }
public static CartGoods convent2CartGoods(MCoffeeAddGoodsRequestVo addShoppingCartGoodsRequestVo,String goodsId) { public static CartGoods convent2CartGoods(MCoffeeAddGoodsRequestVo addShoppingCartGoodsRequestVo, String goodsId) {
String spuId = addShoppingCartGoodsRequestVo.getSpuId(); String spuId = addShoppingCartGoodsRequestVo.getSpuId();
String skuId = addShoppingCartGoodsRequestVo.getSkuId(); String skuId = addShoppingCartGoodsRequestVo.getSkuId();
// String goodsId = StringUtils.isEmpty(skuId) ? spuId : skuId; // String goodsId = StringUtils.isEmpty(skuId) ? spuId : skuId;
......
...@@ -61,10 +61,10 @@ public class CouponDiscountCalculation { ...@@ -61,10 +61,10 @@ public class CouponDiscountCalculation {
private CouponClient mCoffeeCouponClient; private CouponClient mCoffeeCouponClient;
@Autowired @Autowired
private CouponAdapter couponAdapter; private CouponAdapter couponAdapter;
@Autowired // @Autowired
private RedisCache redisCache; // private RedisCache redisCache;
@Autowired // @Autowired
private CardBinClient cardBinClient; // private CardBinClient cardBinClient;
@Value("${coupon.app.id}") @Value("${coupon.app.id}")
private String appid; private String appid;
...@@ -136,24 +136,24 @@ public class CouponDiscountCalculation { ...@@ -136,24 +136,24 @@ public class CouponDiscountCalculation {
} }
} }
public void getCoupon(CouponPromotionVO couponPromotionVO, ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, List<CartGoods> cartGoodsList, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo){ // public void getCoupon(CouponPromotionVO couponPromotionVO, ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, List<CartGoods> cartGoodsList, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo){
// 用户选择了查询优惠券信息 // // 用户选择了查询优惠券信息
if (couponPromotionVO != null && ObjectUtils.equals(CouponFlag.YES.getCode(), couponPromotionVO.getFlg())) { // if (couponPromotionVO != null && ObjectUtils.equals(CouponFlag.YES.getCode(), couponPromotionVO.getFlg())) {
// 构建可用不可用优惠券 // // 构建可用不可用优惠券
ActivityClassifyCouponBean activityClassifyCouponBean = availableCoupon(couponPromotionVO.getPartnerId() // ActivityClassifyCouponBean activityClassifyCouponBean = availableCoupon(couponPromotionVO.getPartnerId()
, couponPromotionVO.getUserId(), couponPromotionVO.getStoreId(), couponPromotionVO.getCouponCode(), couponPromotionVO.getOrderType(),cartGoodsList); // , couponPromotionVO.getUserId(), couponPromotionVO.getStoreId(), couponPromotionVO.getCouponCode(), couponPromotionVO.getOrderType(),cartGoodsList);
if (Objects.equals(activityClassifyCouponBean, null)) { // if (Objects.equals(activityClassifyCouponBean, null)) {
// 构建一个空得订单券信息 // // 构建一个空得订单券信息
activityClassifyCouponBean = new ActivityClassifyCouponBean(); // activityClassifyCouponBean = new ActivityClassifyCouponBean();
activityClassifyCouponBean.setCouponNum(0); // activityClassifyCouponBean.setCouponNum(0);
activityClassifyCouponBean.setDisableCouponNum(0); // activityClassifyCouponBean.setDisableCouponNum(0);
activityClassifyCouponBean.setUsableCouponNum(0); // activityClassifyCouponBean.setUsableCouponNum(0);
activityClassifyCouponBean.setDisableCoupons(Lists.newArrayList()); // activityClassifyCouponBean.setDisableCoupons(Lists.newArrayList());
activityClassifyCouponBean.setUsableCoupons(Lists.newArrayList()); // activityClassifyCouponBean.setUsableCoupons(Lists.newArrayList());
} // }
shoppingCartGoodsResponseVo.setAvailableCoupon(activityClassifyCouponBean); // shoppingCartGoodsResponseVo.setAvailableCoupon(activityClassifyCouponBean);
} // }
} // }
...@@ -161,7 +161,7 @@ public class CouponDiscountCalculation { ...@@ -161,7 +161,7 @@ public class CouponDiscountCalculation {
/** /**
* 可选优惠券 * 可选优惠券
*/ */
public ActivityClassifyCouponBean availableCoupon( String partnerId, String storeId,String userId public ActivityClassifyCouponBean availableCoupon( String partnerId, String storeId,String userId,String thirdPartyMemberId,String unionId,String appId
, String couponCode, Integer orderType,List<CartGoods> cartGoods) { , String couponCode, Integer orderType,List<CartGoods> cartGoods) {
List<CartGoods> tmpCartGoods = cartGoods.parallelStream().filter(k -> k.getCartGoodsUid().startsWith(CommonsConstant.COUPON_PREFIX)).collect(Collectors.toList()); List<CartGoods> tmpCartGoods = cartGoods.parallelStream().filter(k -> k.getCartGoodsUid().startsWith(CommonsConstant.COUPON_PREFIX)).collect(Collectors.toList());
...@@ -170,6 +170,11 @@ public class CouponDiscountCalculation { ...@@ -170,6 +170,11 @@ public class CouponDiscountCalculation {
// 获取会员服务的优惠券列表 // 获取会员服务的优惠券列表
GetMemberCouponListRequestDto getMemberCouponListRequestDto = new GetMemberCouponListRequestDto(partnerId, userId); GetMemberCouponListRequestDto getMemberCouponListRequestDto = new GetMemberCouponListRequestDto(partnerId, userId);
getMemberCouponListRequestDto.setStatusFlags(Arrays.asList(CouponStatus.STATUS_0.getCode())); getMemberCouponListRequestDto.setStatusFlags(Arrays.asList(CouponStatus.STATUS_0.getCode()));
getMemberCouponListRequestDto.setAppId(appId);
getMemberCouponListRequestDto.setThirdPartyMemberId(thirdPartyMemberId);
getMemberCouponListRequestDto.setUnionId(unionId);
//麦咖啡固定值
getMemberCouponListRequestDto.setTag("mccafe");
getMemberCouponListRequestDto.setPageNum(1); getMemberCouponListRequestDto.setPageNum(1);
getMemberCouponListRequestDto.setPageSize(Integer.MAX_VALUE); getMemberCouponListRequestDto.setPageSize(Integer.MAX_VALUE);
GetMemberCouponListResponseDto.Result result = getMemberCouponList(getMemberCouponListRequestDto); GetMemberCouponListResponseDto.Result result = getMemberCouponList(getMemberCouponListRequestDto);
......
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