Commit aae2686d by huiyang.chen

Merge branch '2020/11/2-商品券bug-huiyang'

parents c9fac5bb 4f826835
......@@ -171,7 +171,7 @@ public class ShoppingCartMCoffeeServiceImpl {
}
//商品券已添加情况校验
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = checkGoodsCoupon(oldCartGoodsList, operationType, couponCode,goodsId);
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = checkGoodsCoupon(oldCartGoodsList, operationType, couponCode,goodsId, addShoppingCartGoodsRequestVo);
CartGoods addCartGoods = convent2CartGoods(addShoppingCartGoodsRequestVo, goodsId ,vo);
setClassificationAndPrice(addCartGoods, productBeanListSpuClass);
if(StringUtils.isNotEmpty(addShoppingCartGoodsRequestVo.getGroupName())) {
......@@ -217,7 +217,7 @@ public class ShoppingCartMCoffeeServiceImpl {
}
private List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> checkGoodsCoupon(List<CartGoods> oldCartGoodsList, Integer operationType, String couponCode,String goodsId) {
private List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> checkGoodsCoupon(List<CartGoods> oldCartGoodsList, Integer operationType, String couponCode, String goodsId, MCoffeeAddGoodsRequestVo addShoppingCartGoodsRequestVo) {
if (operationType != null && operationType == 1 && StringUtils.isBlank(couponCode)) {
throw new ServiceException(ResponseResult.PARAMETER_MISSING, "商品券券号为空");
}
......@@ -226,6 +226,7 @@ public class ShoppingCartMCoffeeServiceImpl {
}
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = new ArrayList<>();
if (CollectionUtils.isNotEmpty(oldCartGoodsList)) {
Boolean isContinue =true;
for (CartGoods cartGoods : oldCartGoodsList) {
//购物车已存在商品券
if (StringUtils.isNotBlank(cartGoods.getCouponCode())) {
......@@ -237,6 +238,19 @@ public class ShoppingCartMCoffeeServiceImpl {
//使用券的是,如果购物车已经存在这个券,先清除,再添加
cartGoods.setQty(0);
}
if (StringUtils.isNotEmpty(goodsId) && StringUtils.isNotEmpty(couponCode) && goodsId.equals(cartGoods.getSkuId()) && StringUtils.isBlank(cartGoods.getCouponCode()) && isContinue) {
// 如果购物车商品存在商品规格,替换时复制规格信息
if (CollectionUtils.isNotEmpty(cartGoods.getSpecialExtra())) {
addShoppingCartGoodsRequestVo.setSpecialExtra(cartGoods.getSpecialExtra());
}
if (cartGoods.getQty() > 1 ){
cartGoods.setQty(cartGoods.getQty() - 1);
}else {
//如果购物车存在相同的商品,则先删除购物车商品,在新增商品券购物车行
cartGoods.setQty(0);
}
isContinue= false;
}
//同样商品券不能使用
/* if (StringUtils.isNotEmpty(couponCode)&& StringUtils.isNotEmpty(cartGoods.getCouponCode()) && goodsId.equals(cartGoods.getGoodsId())) {
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