Commit 116adeb2 by chongfu.liang

购物车校验券号

parent b599b2ee
......@@ -95,6 +95,7 @@ public enum ResponseResult {
SHOPPING_CART_HG_COUPON_NOT_EXIST("44027", "换购券不存在"),
SHOPPING_CART_LIMIT_ADD("44025", "加购数量超过限制"),
SHOPPING_CART_GOODS_CHECK_ERROR("44028", "当前餐盘中没有可用券的饮品"),
SHOPPING_CART_COUPON_NOT_USE("44029", "优惠券不可用"),
/**
* 订单状态码
......
......@@ -622,6 +622,11 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
// 在原价、现价、折扣价上增加第一次使用会员卡的费用
this.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
}
// 校验入参券是否可用
if (!checkAvailableCoupon(shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo.getCouponCode())){
return ResponseUtil.error(ResponseResult.SHOPPING_CART_COUPON_NOT_USE);
};
return ResponseUtil.success(shoppingCartGoodsResponseVo);
}
......@@ -645,9 +650,16 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
if (goodsList == null || !ResponseResult.SUCCESS.getCode().equals(goodsList.getCode())) {
return goodsList;
}
String partnerId = shoppingCartInfoRequestVo.getPartnerId();
String storeId = shoppingCartInfoRequestVo.getShopId();
ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo = goodsList.getResult();
// 校验入参券是否可用
if (!checkAvailableCoupon(shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo.getCouponCode())){
return ResponseUtil.error(ResponseResult.SHOPPING_CART_COUPON_NOT_USE);
};
//SVC卡支付
SVCCardPay(shoppingCartInfoRequestVo.getCardCode(), shoppingCartInfoRequestVo.getReceiveId(), partnerId, storeId, shoppingCartGoodsResponseVo);
return ResponseUtil.success(shoppingCartGoodsResponseVo);
......@@ -2094,4 +2106,17 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
return false;
}
}
private boolean checkAvailableCoupon(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, String couponCode) {
if (shoppingCartGoodsResponseVo == null || shoppingCartGoodsResponseVo.getAvailableCoupon() == null || shoppingCartGoodsResponseVo.getAvailableCoupon().getUsableCoupons() == null){
return false;
}
List<ActivityCouponBean> usableCoupons = shoppingCartGoodsResponseVo.getAvailableCoupon().getUsableCoupons();
ActivityCouponBean activityCouponBean = usableCoupons.stream().filter(p -> p.getCouponCode().equals(couponCode)).findFirst().orElse(null);
if (activityCouponBean == null){
return false;
} else {
return true;
}
}
}
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