Commit 9675e3a3 by shuhu.hou@freemud.cn

若商品详情赋值有异常,直接移除购物车

parent dd8a026b
package com.freemud.sdk.api.assortment.shoppingcart.adapter; package com.freemud.sdk.api.assortment.shoppingcart.adapter;
import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO; import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO;
import com.freemud.application.sdk.api.productcenter.request.product.valid.ProductAttributeValueType; import com.freemud.application.sdk.api.productcenter.request.product.valid.ProductAttributeValueType;
import com.freemud.application.sdk.api.productcenter.request.product.valid.ValidateShopProductRequest; import com.freemud.application.sdk.api.productcenter.request.product.valid.ValidateShopProductRequest;
...@@ -44,22 +45,22 @@ public class ShoppingCartAdapter { ...@@ -44,22 +45,22 @@ public class ShoppingCartAdapter {
return request; return request;
} }
public ValidateShopProductRequest getValidateShopProductRequest(CheckCartRequest checkCartRequest){ public ValidateShopProductRequest getValidateShopProductRequest(CheckCartRequest checkCartRequest) {
ValidateShopProductRequest validateShopProductRequest = new ValidateShopProductRequest(); ValidateShopProductRequest validateShopProductRequest = new ValidateShopProductRequest();
validateShopProductRequest.setChannel(checkCartRequest.getBusinessType()); validateShopProductRequest.setChannel(checkCartRequest.getBusinessType());
validateShopProductRequest.setPartnerId(checkCartRequest.getPartnerId()); validateShopProductRequest.setPartnerId(checkCartRequest.getPartnerId());
validateShopProductRequest.setStoreId(checkCartRequest.getStoreId()); validateShopProductRequest.setStoreId(checkCartRequest.getStoreId());
validateShopProductRequest.setProductTypeList(new ArrayList<>()); validateShopProductRequest.setProductTypeList(new ArrayList<>());
for (CartGoods cartGoods :checkCartRequest.getCartGoodsList()) { for (CartGoods cartGoods : checkCartRequest.getCartGoodsList()) {
// 过滤非商品券商品 // 过滤非商品券商品
if (cartGoods.getCartGoodsUid().startsWith(CommonsConstant.COUPON_PREFIX)){ if (cartGoods.getCartGoodsUid().startsWith(CommonsConstant.COUPON_PREFIX)) {
continue; continue;
} }
ValidateShopProductType productType = new ValidateShopProductType(); ValidateShopProductType productType = new ValidateShopProductType();
productType.setSpuId(cartGoods.getSpuId()); productType.setSpuId(cartGoods.getSpuId());
productType.setSkuId(ObjectUtils.equals(GoodsTypeEnum.SKU_GOODS.getGoodsType(),cartGoods.getGoodsType())? cartGoods.getSkuId():cartGoods.getSpuId()); productType.setSkuId(ObjectUtils.equals(GoodsTypeEnum.SKU_GOODS.getGoodsType(), cartGoods.getGoodsType()) ? cartGoods.getSkuId() : cartGoods.getSpuId());
productType.setPrice(cartGoods.getOriginalPrice()==null?0:cartGoods.getOriginalPrice().intValue()); productType.setPrice(cartGoods.getOriginalPrice() == null ? 0 : cartGoods.getOriginalPrice().intValue());
productType.setValidatePrice(productType.getPrice()==0?0:1); productType.setValidatePrice(productType.getPrice() == 0 ? 0 : 1);
productType.setValidateAttribute(1); productType.setValidateAttribute(1);
productType.setValidateStatuses(Arrays.asList(2)); productType.setValidateStatuses(Arrays.asList(2));
productType.setUuid(cartGoods.getCartGoodsUid()); productType.setUuid(cartGoods.getCartGoodsUid());
...@@ -73,10 +74,10 @@ public class ShoppingCartAdapter { ...@@ -73,10 +74,10 @@ public class ShoppingCartAdapter {
return validateShopProductRequest; return validateShopProductRequest;
} }
public List<ProductAttributeValueType> getAttributes( List<CartGoods.CartGoodsExtra> extra){ public List<ProductAttributeValueType> getAttributes(List<CartGoods.CartGoodsExtra> extra) {
List<ProductAttributeValueType> attributeValueTypes=new ArrayList<>(); List<ProductAttributeValueType> attributeValueTypes = new ArrayList<>();
if (CollectionUtils.isNotEmpty(extra)){ if (CollectionUtils.isNotEmpty(extra)) {
for (CartGoods.CartGoodsExtra cartGoodsExtra :extra) { for (CartGoods.CartGoodsExtra cartGoodsExtra : extra) {
ProductAttributeValueType productAttributeValueType = new ProductAttributeValueType(); ProductAttributeValueType productAttributeValueType = new ProductAttributeValueType();
productAttributeValueType.setAttributeId(cartGoodsExtra.getAttributeId()); productAttributeValueType.setAttributeId(cartGoodsExtra.getAttributeId());
productAttributeValueType.setAttributeValue(cartGoodsExtra.getAttributeName()); productAttributeValueType.setAttributeValue(cartGoodsExtra.getAttributeName());
...@@ -86,14 +87,14 @@ public class ShoppingCartAdapter { ...@@ -86,14 +87,14 @@ public class ShoppingCartAdapter {
return attributeValueTypes; return attributeValueTypes;
} }
public List<ValidateSkuProductType> getValidateSkuProductType(List<CartGoods.ComboxGoods> productComboList){ public List<ValidateSkuProductType> getValidateSkuProductType(List<CartGoods.ComboxGoods> productComboList) {
List<ValidateSkuProductType> result=new ArrayList<>(); List<ValidateSkuProductType> result = new ArrayList<>();
if (CollectionUtils.isNotEmpty(productComboList)){ if (CollectionUtils.isNotEmpty(productComboList)) {
for (CartGoods.ComboxGoods comboxGoods :productComboList) { for (CartGoods.ComboxGoods comboxGoods : productComboList) {
ValidateSkuProductType validateSkuProductType = new ValidateSkuProductType(); ValidateSkuProductType validateSkuProductType = new ValidateSkuProductType();
validateSkuProductType.setProductId(comboxGoods.getGoodsId()); validateSkuProductType.setProductId(comboxGoods.getGoodsId());
validateSkuProductType.setPrice(comboxGoods.getOriginalPrice()==null?0:comboxGoods.getOriginalPrice().intValue()); validateSkuProductType.setPrice(comboxGoods.getOriginalPrice() == null ? 0 : comboxGoods.getOriginalPrice().intValue());
validateSkuProductType.setMarkUpPrice(comboxGoods.getFinalPrice()==null?0:comboxGoods.getFinalPrice().intValue()); validateSkuProductType.setMarkUpPrice(comboxGoods.getFinalPrice() == null ? 0 : comboxGoods.getFinalPrice().intValue());
validateSkuProductType.setQty(comboxGoods.getQty()); validateSkuProductType.setQty(comboxGoods.getQty());
validateSkuProductType.setAttributeList(getAttributes(comboxGoods.getExtra())); validateSkuProductType.setAttributeList(getAttributes(comboxGoods.getExtra()));
result.add(validateSkuProductType); result.add(validateSkuProductType);
...@@ -236,10 +237,10 @@ public class ShoppingCartAdapter { ...@@ -236,10 +237,10 @@ public class ShoppingCartAdapter {
cartGoodsStates.setPriceChanged(true); cartGoodsStates.setPriceChanged(true);
} }
cartGoods.setOriginalPrice(newOrigOriginalPrice); cartGoods.setOriginalPrice(newOrigOriginalPrice);
cartGoods.setOriginalAmount(newOrigOriginalPrice*cartGoods.getQty()); cartGoods.setOriginalAmount(newOrigOriginalPrice * cartGoods.getQty());
cartGoods.setAmount(newOrigOriginalPrice*cartGoods.getQty()); cartGoods.setAmount(newOrigOriginalPrice * cartGoods.getQty());
//咨询商品服务,套餐售价取originalPrice //咨询商品服务,套餐售价取originalPrice
cartGoods.setFinalPrice(isSetMealProduct?productBean.getOriginalPrice(): productBean.getFinalPrice()); cartGoods.setFinalPrice(isSetMealProduct ? productBean.getOriginalPrice() : productBean.getFinalPrice());
cartGoods.setUnit(productBean.getUnit()); cartGoods.setUnit(productBean.getUnit());
cartGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(productBean.getWeightType())); cartGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(productBean.getWeightType()));
} }
...@@ -251,13 +252,14 @@ public class ShoppingCartAdapter { ...@@ -251,13 +252,14 @@ public class ShoppingCartAdapter {
* @param productBeans 购物车中所有的productId对应的商品详情 * @param productBeans 购物车中所有的productId对应的商品详情
*/ */
public void updateCartGoodsInfoNew(CartGoods cartGoods, List<ProductBeanDTO> productBeans) { public void updateCartGoodsInfoNew(CartGoods cartGoods, List<ProductBeanDTO> productBeans) {
try {
Optional<ProductBeanDTO> firstProduct = productBeans.stream().filter(p -> ObjectUtils.equals(p.getPid(), cartGoods.getSpuId())).findFirst(); Optional<ProductBeanDTO> firstProduct = productBeans.stream().filter(p -> ObjectUtils.equals(p.getPid(), cartGoods.getSpuId())).findFirst();
if (!firstProduct.isPresent()) { if (!firstProduct.isPresent()) {
return; return;
} }
ProductBeanDTO spuProduct = firstProduct.get(); ProductBeanDTO spuProduct = firstProduct.get();
//是否是sku商品 //是否是sku商品
boolean isSkuProduct=ObjectUtils.equals(GoodsTypeEnum.SKU_GOODS.getGoodsType(), cartGoods.getGoodsType()); boolean isSkuProduct = ObjectUtils.equals(GoodsTypeEnum.SKU_GOODS.getGoodsType(), cartGoods.getGoodsType());
// 如果是套餐商品,更新套餐内固定商品&可选商品的详细信息 // 如果是套餐商品,更新套餐内固定商品&可选商品的详细信息
boolean isSetMealProduct = ObjectUtils.equals(ProductType.SetMeal.getCode(), spuProduct.getType()) || ObjectUtils.equals(ProductType.IncreasedPackage.getCode(), spuProduct.getType()); boolean isSetMealProduct = ObjectUtils.equals(ProductType.SetMeal.getCode(), spuProduct.getType()) || ObjectUtils.equals(ProductType.IncreasedPackage.getCode(), spuProduct.getType());
ProductBeanDTO.SkuProductBean skuProduct = isSkuProduct ? spuProduct.getSkuList().stream().filter(p -> ObjectUtils.equals(cartGoods.getSkuId(), p.getSkuId())).findFirst().get() : null; ProductBeanDTO.SkuProductBean skuProduct = isSkuProduct ? spuProduct.getSkuList().stream().filter(p -> ObjectUtils.equals(cartGoods.getSkuId(), p.getSkuId())).findFirst().get() : null;
...@@ -265,12 +267,12 @@ public class ShoppingCartAdapter { ...@@ -265,12 +267,12 @@ public class ShoppingCartAdapter {
Map<String, String> attributes = getAttributesNew(cartGoods.getExtra()); Map<String, String> attributes = getAttributesNew(cartGoods.getExtra());
cartGoods.setName(spuProduct.getName()); cartGoods.setName(spuProduct.getName());
cartGoods.setSpuName(spuProduct.getName()); cartGoods.setSpuName(spuProduct.getName());
cartGoods.setSkuName(isSkuProduct?skuProduct.getProductName():spuProduct.getName()); cartGoods.setSkuName(isSkuProduct ? skuProduct.getProductName() : spuProduct.getName());
cartGoods.setSpecProductId(attributes.get(ATTRIBUTEID)); cartGoods.setSpecProductId(attributes.get(ATTRIBUTEID));
cartGoods.setPic(spuProduct.getPicture()); cartGoods.setPic(spuProduct.getPicture());
cartGoods.setPackPrice(isSkuProduct?skuProduct.getPackPrice(): spuProduct.getPackPrice()); cartGoods.setPackPrice(isSkuProduct ? skuProduct.getPackPrice() : spuProduct.getPackPrice());
cartGoods.setStockLimit(isSkuProduct? ObjectUtils.equals(1, skuProduct.getStockLimit()):ObjectUtils.equals(1, spuProduct.getStockLimit())); cartGoods.setStockLimit(isSkuProduct ? ObjectUtils.equals(1, skuProduct.getStockLimit()) : ObjectUtils.equals(1, spuProduct.getStockLimit()));
cartGoods.setCustomerCode(isSkuProduct?skuProduct.getCustomerCode(): spuProduct.getCustomerCode()); cartGoods.setCustomerCode(isSkuProduct ? skuProduct.getCustomerCode() : spuProduct.getCustomerCode());
String skuSpecName = ""; String skuSpecName = "";
if (isSkuProduct && CollectionUtils.isNotEmpty(skuProduct.getSkuSpecValues())) { if (isSkuProduct && CollectionUtils.isNotEmpty(skuProduct.getSkuSpecValues())) {
...@@ -284,30 +286,34 @@ public class ShoppingCartAdapter { ...@@ -284,30 +286,34 @@ public class ShoppingCartAdapter {
if (isSetMealProduct) { if (isSetMealProduct) {
if (CollectionUtils.isNotEmpty(cartGoods.getProductComboList())) { if (CollectionUtils.isNotEmpty(cartGoods.getProductComboList())) {
for (CartGoods.ComboxGoods productCombo : cartGoods.getProductComboList()) { for (CartGoods.ComboxGoods productCombo : cartGoods.getProductComboList()) {
updateComboxGoodsInfoNew(productCombo,spuProduct, true); updateComboxGoodsInfoNew(productCombo, spuProduct, true);
} }
} }
if (CollectionUtils.isNotEmpty(cartGoods.getProductGroupList())) { if (CollectionUtils.isNotEmpty(cartGoods.getProductGroupList())) {
for (CartGoods.ComboxGoods productGroup : cartGoods.getProductGroupList()) { for (CartGoods.ComboxGoods productGroup : cartGoods.getProductGroupList()) {
updateComboxGoodsInfoNew(productGroup,spuProduct, false); updateComboxGoodsInfoNew(productGroup, spuProduct, false);
} }
} }
} }
//更新当前商品行价格 //更新当前商品行价格
Long newOrigOriginalPrice = 0L; Long newOrigOriginalPrice = 0L;
if (isSetMealProduct) { if (isSetMealProduct) {
newOrigOriginalPrice+=cartGoods.getProductComboList().stream().mapToLong(t->t.getOriginalAmount()).sum(); newOrigOriginalPrice += cartGoods.getProductComboList().stream().mapToLong(t -> t.getOriginalAmount()).sum();
newOrigOriginalPrice += cartGoods.getProductGroupList().stream().mapToLong(t -> t.getOriginalAmount()).sum(); newOrigOriginalPrice += cartGoods.getProductGroupList().stream().mapToLong(t -> t.getOriginalAmount()).sum();
} else { } else {
newOrigOriginalPrice =isSkuProduct?skuProduct.getFinalPrice(): spuProduct.getFinalPrice(); newOrigOriginalPrice = isSkuProduct ? skuProduct.getFinalPrice() : spuProduct.getFinalPrice();
} }
cartGoods.setOriginalPrice(newOrigOriginalPrice); cartGoods.setOriginalPrice(newOrigOriginalPrice);
cartGoods.setOriginalAmount(newOrigOriginalPrice*cartGoods.getQty()); cartGoods.setOriginalAmount(newOrigOriginalPrice * cartGoods.getQty());
cartGoods.setAmount(newOrigOriginalPrice*cartGoods.getQty()); cartGoods.setAmount(newOrigOriginalPrice * cartGoods.getQty());
//咨询商品服务,套餐售价取originalPrice //咨询商品服务,套餐售价取originalPrice
cartGoods.setFinalPrice(isSetMealProduct?spuProduct.getOriginalPrice(): isSkuProduct? skuProduct.getFinalPrice():spuProduct.getFinalPrice()); cartGoods.setFinalPrice(isSetMealProduct ? spuProduct.getOriginalPrice() : isSkuProduct ? skuProduct.getFinalPrice() : spuProduct.getFinalPrice());
cartGoods.setUnit(spuProduct.getUnit()); cartGoods.setUnit(spuProduct.getUnit());
cartGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(spuProduct.getWeightType())); cartGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(spuProduct.getWeightType()));
} catch (Exception ex) {
ErrorLog.infoConvertJson(this.getClass(),"updateCartGoodsInfoNew_Error",ex);
cartGoods.setCartGoodsUid(null);
}
} }
private boolean updateComboxGoodsInfo(CartGoods cartGoods, CartGoods.ComboxGoods comboxGoods, ProductBeanDTO parentProductBean, List<ProductBeanDTO> productBeans, CartGoodsStates cartGoodsStates, List<String> invalidGoodsIdList) { private boolean updateComboxGoodsInfo(CartGoods cartGoods, CartGoods.ComboxGoods comboxGoods, ProductBeanDTO parentProductBean, List<ProductBeanDTO> productBeans, CartGoodsStates cartGoodsStates, List<String> invalidGoodsIdList) {
...@@ -347,8 +353,8 @@ public class ShoppingCartAdapter { ...@@ -347,8 +353,8 @@ public class ShoppingCartAdapter {
comboxGoods.setPic(productBean.getPicture()); comboxGoods.setPic(productBean.getPicture());
comboxGoods.setPackPrice(productBean.getPackPrice()); comboxGoods.setPackPrice(productBean.getPackPrice());
comboxGoods.setOriginalPrice(productBean.getFinalPrice()); comboxGoods.setOriginalPrice(productBean.getFinalPrice());
comboxGoods.setOriginalAmount(productBean.getFinalPrice()*comboxGoods.getQty()); comboxGoods.setOriginalAmount(productBean.getFinalPrice() * comboxGoods.getQty());
comboxGoods.setAmount(finalPrice*comboxGoods.getQty()); comboxGoods.setAmount(finalPrice * comboxGoods.getQty());
comboxGoods.setCustomerCode(productBean.getCustomerCode()); comboxGoods.setCustomerCode(productBean.getCustomerCode());
comboxGoods.setFinalPrice(finalPrice); comboxGoods.setFinalPrice(finalPrice);
comboxGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(productBean.getWeightType())); comboxGoods.setWeightType(CommonsConstant.WEIGHT_PRODUCT.equals(productBean.getWeightType()));
...@@ -367,31 +373,31 @@ public class ShoppingCartAdapter { ...@@ -367,31 +373,31 @@ public class ShoppingCartAdapter {
private void updateComboxGoodsInfoNew(CartGoods.ComboxGoods comboxGoods, ProductBeanDTO parentProductBean, boolean isComboxGoods) { private void updateComboxGoodsInfoNew(CartGoods.ComboxGoods comboxGoods, ProductBeanDTO parentProductBean, boolean isComboxGoods) {
ProductBeanDTO.ProductComboType productComboType = new ProductBeanDTO.ProductComboType(); ProductBeanDTO.ProductComboType productComboType = new ProductBeanDTO.ProductComboType();
ProductBeanDTO.ProductGroupType.GroupDetailType groupDetailType=new ProductBeanDTO.ProductGroupType.GroupDetailType(); ProductBeanDTO.ProductGroupType.GroupDetailType groupDetailType = new ProductBeanDTO.ProductGroupType.GroupDetailType();
if (isComboxGoods){ if (isComboxGoods) {
productComboType= parentProductBean.getProductComboList().stream().filter(p -> ObjectUtils.equals(comboxGoods.getGoodsId(), p.getProductId())).findFirst().orElse(new ProductBeanDTO.ProductComboType()); productComboType = parentProductBean.getProductComboList().stream().filter(p -> ObjectUtils.equals(comboxGoods.getGoodsId(), p.getProductId())).findFirst().orElse(new ProductBeanDTO.ProductComboType());
}else { } else {
Map<String, ProductBeanDTO.ProductGroupType.GroupDetailType> map=new HashMap<>(); Map<String, ProductBeanDTO.ProductGroupType.GroupDetailType> map = new HashMap<>();
parentProductBean.getProductGroupList().stream().map(t-> t.getGroupDetail()).forEach(group-> group.forEach(detailType -> map.put( detailType.getProductId(),detailType))); parentProductBean.getProductGroupList().stream().map(t -> t.getGroupDetail()).forEach(group -> group.forEach(detailType -> map.put(detailType.getProductId(), detailType)));
groupDetailType = map.get(comboxGoods.getGoodsId()); groupDetailType = map.get(comboxGoods.getGoodsId());
} }
// 若是固定商品则取商品详情的FinalPrice,若是可选商品则取MarkUpPrice // 若是固定商品则取商品详情的FinalPrice,若是可选商品则取MarkUpPrice
Long finalPrice =isComboxGoods? productComboType.getFinalPrice().longValue():groupDetailType.getMarkUpPrice().longValue(); Long finalPrice = isComboxGoods ? productComboType.getFinalPrice().longValue() : groupDetailType.getMarkUpPrice().longValue();
// 设置商品详情 // 设置商品详情
Map<String, String> attributes = getAttributesNew(comboxGoods.getExtra()); Map<String, String> attributes = getAttributesNew(comboxGoods.getExtra());
comboxGoods.setName(isComboxGoods?productComboType.getProductName():groupDetailType.getProductName()); comboxGoods.setName(isComboxGoods ? productComboType.getProductName() : groupDetailType.getProductName());
comboxGoods.setSpuName(comboxGoods.getName()); comboxGoods.setSpuName(comboxGoods.getName());
comboxGoods.setSpecProductId(attributes.get(ATTRIBUTEID)); comboxGoods.setSpecProductId(attributes.get(ATTRIBUTEID));
comboxGoods.setSubName(attributes.get(ATTRIBUTENAME)); comboxGoods.setSubName(attributes.get(ATTRIBUTENAME));
comboxGoods.setPic(isComboxGoods?productComboType.getPicture():groupDetailType.getPicture()); comboxGoods.setPic(isComboxGoods ? productComboType.getPicture() : groupDetailType.getPicture());
comboxGoods.setOriginalPrice(isComboxGoods?productComboType.getFinalPrice().longValue():groupDetailType.getProductFinalPrice().longValue()); comboxGoods.setOriginalPrice(isComboxGoods ? productComboType.getFinalPrice().longValue() : groupDetailType.getProductFinalPrice().longValue());
comboxGoods.setOriginalAmount(comboxGoods.getOriginalPrice()*comboxGoods.getQty()); comboxGoods.setOriginalAmount(comboxGoods.getOriginalPrice() * comboxGoods.getQty());
comboxGoods.setAmount(finalPrice*comboxGoods.getQty()); comboxGoods.setAmount(finalPrice * comboxGoods.getQty());
comboxGoods.setCustomerCode(isComboxGoods?productComboType.getCustomerCode():groupDetailType.getCustomerCode()); comboxGoods.setCustomerCode(isComboxGoods ? productComboType.getCustomerCode() : groupDetailType.getCustomerCode());
comboxGoods.setFinalPrice(finalPrice); comboxGoods.setFinalPrice(finalPrice);
comboxGoods.setWeightType(isComboxGoods? CommonsConstant.WEIGHT_PRODUCT.equals(productComboType.getWeightType()):CommonsConstant.WEIGHT_PRODUCT.equals(groupDetailType.getWeightType())); comboxGoods.setWeightType(isComboxGoods ? CommonsConstant.WEIGHT_PRODUCT.equals(productComboType.getWeightType()) : CommonsConstant.WEIGHT_PRODUCT.equals(groupDetailType.getWeightType()));
comboxGoods.setUnit(isComboxGoods?productComboType.getUnit():groupDetailType.getUnit()); comboxGoods.setUnit(isComboxGoods ? productComboType.getUnit() : groupDetailType.getUnit());
} }
private Map<String, String> getAttributes(CartGoods cartGoods, List<CartGoods.CartGoodsExtra> extra, List<ProductBeanDTO.ProductAttributeGroupListBean> attributeGroupListBeanList, List<String> invalidGoodsIdList) { private Map<String, String> getAttributes(CartGoods cartGoods, List<CartGoods.CartGoodsExtra> extra, List<ProductBeanDTO.ProductAttributeGroupListBean> attributeGroupListBeanList, List<String> invalidGoodsIdList) {
......
...@@ -212,6 +212,12 @@ public interface ShoppingCartBaseService { ...@@ -212,6 +212,12 @@ public interface ShoppingCartBaseService {
if (cartGoodsStates != null && cartGoodsStates.isOrderWayFlag()) { if (cartGoodsStates != null && cartGoodsStates.isOrderWayFlag()) {
setToastMsgIfNotExist(checkCartRequest.getShoppingCartGoodsResponseVo(), ShoppingCartConstant.ORDER_WAY_CHANGE); setToastMsgIfNotExist(checkCartRequest.getShoppingCartGoodsResponseVo(), ShoppingCartConstant.ORDER_WAY_CHANGE);
} }
//若商品详情赋值有异常,直接移除购物车
if (checkCartRequest.getCartGoodsList().stream().anyMatch(cart->StringUtils.isEmpty( cart.getCartGoodsUid()))){
checkCartRequest.getCartGoodsList().removeIf(k -> StringUtils.isEmpty(k.getCartGoodsUid()));
checkCartRequest.getShoppingCartGoodsResponseVo().setChanged(true);
checkCartRequest.getShoppingCartGoodsResponseVo().setToastMsg(ShoppingCartConstant.SHOPPING_CART_INVALIAD_GOODS);
}
return CartResponseUtil.success(checkCartRequest); return CartResponseUtil.success(checkCartRequest);
} catch (Exception e) { } catch (Exception e) {
ErrorLog.printErrorLog("assortment-shoppingcart-sdk", checkCartRequest.getTrackingNo(), e.getMessage(), "checkAllCartGoods", checkCartRequest, e, Level.ERROR); ErrorLog.printErrorLog("assortment-shoppingcart-sdk", checkCartRequest.getTrackingNo(), e.getMessage(), "checkAllCartGoods", checkCartRequest, e, Level.ERROR);
......
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