Commit 27c777da by ping.wu

解决买m赠n券商品spuId变券号问题

parent f76a6957
...@@ -491,6 +491,9 @@ public class AssortmentSdkService { ...@@ -491,6 +491,9 @@ public class AssortmentSdkService {
productIds.add(Long.parseLong(checkSpqInfoResponseDto.getSkuId())); productIds.add(Long.parseLong(checkSpqInfoResponseDto.getSkuId()));
couponProductDto.setType(checkSpqInfoResponseDto.getCouponType()); couponProductDto.setType(checkSpqInfoResponseDto.getCouponType());
String spuId2 = checkSpqInfoResponseDto.getSkuId(); String spuId2 = checkSpqInfoResponseDto.getSkuId();
//商品spuid赋值
addCartGoods.setSpuId(checkSpqInfoResponseDto.getSpuId());
addCartGoods.setSkuId(checkSpqInfoResponseDto.getSkuId());
// TODO: 21-10-20 套餐商品券,商品信息赋值 // TODO: 21-10-20 套餐商品券,商品信息赋值
if(StringUtils.isNotEmpty(couponCode) && CollectionUtils.isNotEmpty(addCartGoods.getProductComboList())){ if(StringUtils.isNotEmpty(couponCode) && CollectionUtils.isNotEmpty(addCartGoods.getProductComboList())){
addCartGoods.setSpuId(goodsId); addCartGoods.setSpuId(goodsId);
......
...@@ -1543,10 +1543,11 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -1543,10 +1543,11 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
cartGoods.setSpuName(checkSpqInfoResponseDto.getCouponName()); cartGoods.setSpuName(checkSpqInfoResponseDto.getCouponName());
} }
cartGoods.setStockLimit(checkSpqInfoResponseDto.isStockLimit()); cartGoods.setStockLimit(checkSpqInfoResponseDto.isStockLimit());
if (GoodsTypeEnum.BUY_M_SEND_N_COUPON.getGoodsType().equals(cartGoods.getGoodsType())) { //逻辑同 viewProductName
cartGoods.setName(checkSpqInfoResponseDto.getSkuName()); // if (GoodsTypeEnum.BUY_M_SEND_N_COUPON.getGoodsType().equals(cartGoods.getGoodsType())) {
cartGoods.setSpuName(checkSpqInfoResponseDto.getSpuName()); // cartGoods.setName(checkSpqInfoResponseDto.getSkuName());
} // cartGoods.setSpuName(checkSpqInfoResponseDto.getSpuName());
// }
//添加请求的优惠券信息 买M赠N券,不重复加促销券集合字段 //添加请求的优惠券信息 买M赠N券,不重复加促销券集合字段
String finalCouponCode = couponCode; String finalCouponCode = couponCode;
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> collect = coupons.stream().filter(calculationDiscountCoupon -> Objects.equals(calculationDiscountCoupon.getCode(), finalCouponCode)).collect(toList()); List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> collect = coupons.stream().filter(calculationDiscountCoupon -> Objects.equals(calculationDiscountCoupon.getCode(), finalCouponCode)).collect(toList());
...@@ -2162,18 +2163,15 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -2162,18 +2163,15 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
} else { } else {
cartGoods.setGoodsType(GoodsTypeEnum.COUPON_GOODS.getGoodsType()); cartGoods.setGoodsType(GoodsTypeEnum.COUPON_GOODS.getGoodsType());
} }
if (StringUtils.isBlank(addShoppingCartGoodsRequestVo.getCouponCode())) { //老商品券 //老商品券
if (StringUtils.isBlank(addShoppingCartGoodsRequestVo.getCouponCode())) {
cartGoods.setCartGoodsUid(spuId); cartGoods.setCartGoodsUid(spuId);
} else {
cartGoods.setCouponCode(couponCode);
} }
// 商品券Id cartGoods.setCouponCode(couponCode);
String spqId = spuId.substring(CommonsConstant.COUPON_PREFIX.length());
cartGoods.setSpuId(spqId);
if (CollectionUtils.isNotEmpty(allCartGoodsList)) { if (CollectionUtils.isNotEmpty(allCartGoodsList)) {
if (Objects.equals(CouponTypeEnum.TYPE_0.getCode(), couponProductDto.getType()) if (Objects.equals(CouponTypeEnum.TYPE_0.getCode(), couponProductDto.getType())
|| Objects.equals(CouponTypeEnum.TYPE_4.getCode(), couponProductDto.getType())) { || Objects.equals(CouponTypeEnum.TYPE_4.getCode(), couponProductDto.getType())) {
int sum = allCartGoodsList.stream().filter(p -> p.getSpuId().equals(spqId)).mapToInt(CartGoods::getQty).sum(); int sum = allCartGoodsList.stream().filter(p -> p.getCouponCode().equals(couponCode)).mapToInt(CartGoods::getQty).sum();
//今日可用次数判断 //今日可用次数判断
if (sum + cartGoods.getQty() > todayAvailableTimes) { if (sum + cartGoods.getQty() > todayAvailableTimes) {
throw new ServiceException(ResponseResult.SHOPPING_CART_GOODS_COUPON_CAN_NOT_USE); throw new ServiceException(ResponseResult.SHOPPING_CART_GOODS_COUPON_CAN_NOT_USE);
......
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