Commit 1f667cea by ping.wu

Merge branches 'feature/20200926_麦咖啡特定属性与加料_wuping' and 'qa' of…

Merge branches 'feature/20200926_麦咖啡特定属性与加料_wuping' and 'qa' of http://gitlab.freemud.com/order-group-application/order-group into qa
parents 03539a12 376d2d10
......@@ -49,5 +49,12 @@ public class ShoppingCartConstant {
*/
public static final int PRODUCT_DOWN= 104;
public static final String CART_PRODUCT_INVALID_STATE = "您选择的【$spuName】商品已失效;";
/**
* 必选商品组无勾选商品
*/
public static final int PRODUCT_GROUP_EMPTY= 109;
public static final String CART_PRODUCT_GROUP_EMPTY_STATE = "您选择的【$spuName】商品有未选商品";
}
......@@ -533,6 +533,9 @@ public class ShoppingCartConvertAdapter {
List<ValidateSkuProductType> result = new ArrayList<>();
if (CollectionUtils.isNotEmpty(productComboList)) {
for (com.freemud.sdk.api.assortment.shoppingcart.domain.CartGoods.ComboxGoods comboxGoods : productComboList) {
if("0".equals(comboxGoods.getGoodsId())){
continue;
}
ValidateSkuProductType validateSkuProductType = new ValidateSkuProductType();
validateSkuProductType.setProductId(StringUtils.isNotEmpty(comboxGoods.getSpuId()) ? comboxGoods.getSpuId() : comboxGoods.getSkuId());
validateSkuProductType.setSkuId(comboxGoods.getSkuId());
......@@ -659,7 +662,9 @@ public class ShoppingCartConvertAdapter {
* @return
*/
private void updateComboxGoodsInfoForMCoffee(com.freemud.sdk.api.assortment.shoppingcart.domain.CartGoods.ComboxGoods comboxGoods, ProductBeanDTO parentProductBean, boolean isComboxGoods) {
if("0".equals(comboxGoods.getGoodsId())){
return;
}
ProductBeanDTO.ProductComboType productComboType = new ProductBeanDTO.ProductComboType();
ProductBeanDTO.ProductGroupType.GroupDetailType groupDetailType = new ProductBeanDTO.ProductGroupType.GroupDetailType();
if (isComboxGoods) {
......
......@@ -30,6 +30,11 @@ public class ComboxGoodsRequestVo {
* 商品组Id
*/
private String productGroupId;
/**
* 麦咖啡空键位
*/
private String emptyKey;
/**
* 商品额外的属性
*/
......
......@@ -1083,6 +1083,20 @@ public class ShoppingCartMCoffeeServiceImpl {
productCombox.setExtra(vo.getExtra());
productCombox.setSpecialExtra(vo.getSpecialExtra());
productCombox.setProductGroupId(StringUtils.isEmpty(vo.getProductGroupId()) ? null : Long.parseLong(vo.getProductGroupId()));
if(StringUtils.isNotEmpty(vo.getEmptyKey())){
productCombox.setGoodsId("0");
productCombox.setSkuId("0");
productCombox.setSpuId("0");
productCombox.setCustomerCode(vo.getEmptyKey());
productCombox.setName("无");
productCombox.setSpuName("无");
productCombox.setSkuName("无");
productCombox.setFinalPrice(0L);
productCombox.setOriginalPrice(0L);
productCombox.setOriginalAmount(0L);
productCombox.setAmount(0L);
productCombox.setQty(1);
}
//加料商品集
if (CollectionUtils.isNotEmpty(vo.getProductMaterialList())) {
List<CartGoods.MaterialGoods> comboxMaterialGoodsList = new ArrayList<>();
......@@ -1238,6 +1252,7 @@ public class ShoppingCartMCoffeeServiceImpl {
ValiadShopProductResponse validateResult = valiadResponse.getData();
CartGoodsStates cartGoodsStates = new CartGoodsStates();
String toastMsg = "";
//非法商品(商品是否存在、商品是否处于上架状态)自动移除,返回前端提示
if (CollectionUtils.isNotEmpty(validateResult.getFailureList())){
List<String> invalidSpu = new ArrayList<>();
......@@ -1266,11 +1281,16 @@ public class ShoppingCartMCoffeeServiceImpl {
List<ProductBeanDTO> productList = validateResult.getFailureList().stream().map(ValiadShopProductResult::getProductType).collect(Collectors.toList());
shoppingCartConvertAdapter.updateCartGoodsInfoForMCoffee(cartGoods, productList);
}
if (PRODUCT_GROUP_EMPTY == validaProduct.getCode()) {
cartGoodsStates.setHasInvalidGoods(true);
cartGoods.setCartGoodsUid(null);
toastMsg = toastMsg.concat(CART_PRODUCT_GROUP_EMPTY_STATE.replace("$spuName",StringUtils.join(Arrays.asList(spuName),",")));
break;
}
}
}
}
String toastMsg = "";
if (CollectionUtils.isNotEmpty(invalidSpu)){
toastMsg = toastMsg.concat(CART_PRODUCT_INVALID_STATE.replace("$spuName",StringUtils.join(invalidSpu,",")));
}
......
......@@ -379,6 +379,9 @@ public class CalculationServiceImpl {
//可选搭配
if (cartGoods != null && CollectionUtils.isNotEmpty(cartGoods.getProductGroupList())) {
for (CartGoods.ComboxGoods materialGoods : cartGoods.getProductGroupList()) {
if("0".equals(materialGoods.getGoodsId())){
continue;
}
ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material material = new ActivityCalculationDiscountRequestDto.CalculationDiscountGoods.Material();
material.setType(2);
material.setGoodsId(materialGoods.getGoodsId());
......
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