Commit 87e25e8e by zhiheng.zhang

Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	assortment-ordercenter-sdk/pom.xml
#	assortment-ordercenter-sdk/readme.md
#	order-application-service/pom.xml
#	order-application-service/src/main/java/cn/freemud/controller/OrderController.java
parents cd3b724e def88f93
......@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.3.03-SNAPSHOT</version>
<version>2.3.04-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
......@@ -38,7 +38,7 @@
<dependency>
<groupId>cn.freemud</groupId>
<artifactId>ordercenter-sdk</artifactId>
<version>2.9.12-SNAPSHOT</version>
<version>2.9.13-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
......
......@@ -227,6 +227,7 @@
| 2.3.01-SNAPSHOT | 美团聚宝盆修改为美团服务商 | 梁崇福 | 2021-04-29|
| 2.3.02-SNAPSHOT | 升级sdk | 王世昌 | 2021-04-29|
| 2.3.03-SNAPSHOT | 添加操作人时间 | 王世昌 | 2021-05-05|
| 2.3.04-SNAPSHOT | 麦咖啡新增优惠类型 | 徐康 | 2021-05-12|
| 2.1.37-RELEASE | 订单满赠优惠 | 张志恒 | 2021-03-11 |
| 2.1.38-RELEASE | 外卖配送自动流转 | 张志恒 | 2021-03-11 |
......
......@@ -1431,6 +1431,9 @@ public class OrderSdkAdapter {
case "SEED_PRODUCT_COUPON":
type = 37;
break;
case "EVM_PRODUCT_COUPON":
type = 39;
break;
case "DISCOUNT_COUPON":
type = 208;
break;
......@@ -2068,6 +2071,9 @@ public class OrderSdkAdapter {
case 37:
newOrderAccountType = OldOrderAccountType.SEED_PRODUCT_COUPON.getCode();
break;
case 39:
newOrderAccountType = OldOrderAccountType.EVM_PRODUCT_COUPON.getCode();
break;
case 208:
newOrderAccountType = OldOrderAccountType.DISCOUNT_COUPON.getCode();
break;
......
......@@ -23,6 +23,7 @@ public enum OldOrderAccountType {
COUPON(5, "代金券", "COUPON"),
PRODUCT_COUPON(6, "商品券", "PRODUCT_COUPON"),
SEED_PRODUCT_COUPON(37, "种子券", "SEED_PRODUCT_COUPON"),
EVM_PRODUCT_COUPON(39, "EVM券", "EVM_PRODUCT_COUPON"),
DISCOUNT_COUPON(7, "折扣券", "DISCOUNT_COUPON"),
DRIVER_FEE(7, "骑手小费", "DRIVER_FEE"),
WITH_ORDER_BUY_COUPON_FEE(10, "随单买月卡", "WITH_ORDER_BUY_COUPON_FEE"),
......
......@@ -25,6 +25,7 @@ public enum QueryOrderAccountType {
FREIGHT_COUPON("FREIGHT_COUPON", "运费券"),
PRODUCT_COUPON("PRODUCT_COUPON", "商品券"),
SEED_PRODUCT_COUPON("SEED_PRODUCT_COUPON", "种子券"),
EVM_PRODUCT_COUPON("EVM_PRODUCT_COUPON", "种子券"),
DISCOUNT_COUPON("DISCOUNT_COUPON", "折扣券"),
DISCOUNT_AMOUNT("DISCOUNT_AMOUNT", "限时折扣金额"),
PREMIUM_EXCHANGE("PREMIUM_EXCHANGE", "加价购"),
......
......@@ -58,7 +58,7 @@
<dependency>
<groupId>com.freemud.application.service.sdk</groupId>
<artifactId>productcenter-sdk</artifactId>
<version>4.0.2.SNAPSHOT</version>
<version>4.0.3.RELEASE</version>
</dependency>
<dependency>
<artifactId>membercenter-sdk</artifactId>
......@@ -78,7 +78,7 @@
<dependency>
<groupId>com.freemud.sdk.api.assortment</groupId>
<artifactId>assortment-messagepush-sdk</artifactId>
<version>2.6.3.RELEASE</version>
<version>2.7.2.RELEASE</version>
<exclusions>
<exclusion>
<groupId>cn.freemud.commons</groupId>
......
......@@ -660,7 +660,7 @@ public class CouponAdapter {
public MCCafeCouponRequest convert2MCCafeCouponRequest(QueryOrdersResponseDto.DataBean.OrderBean orderBean, QueryOrdersResponseDto.DataBean.OrderBean.AccountBean accountBean, McdNetBatchQueryResponse.Coupon coupon) {
List<MCCafeProductRedeemVo> products = new ArrayList<>();
//商品券核销核销参数
if (QueryOrderAccountType.PRODUCT_COUPON.equals(orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
if (OldOrderAccountType.PRODUCT_COUPON.getCode().equals(accountBean.getType()) || OldOrderAccountType.EVM_PRODUCT_COUPON.getCode().equals(accountBean.getType())) {
for (int i = 0; i < orderBean.getProductList().size(); i++) {
QueryOrdersResponseDto.DataBean.OrderBean.ProductBean productBean = orderBean.getProductList().get(i);
String pid = org.apache.commons.lang3.StringUtils.isNotBlank(productBean.getSpecification()) ? productBean.getSpecification() : productBean.getProductId();
......@@ -691,7 +691,7 @@ public class CouponAdapter {
}
}
}
} else if (QueryOrderAccountType.COUPON.equals(orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
} else if (OldOrderAccountType.COUPON.getCode().equals(accountBean.getType())) {
for (int i = 0; i < orderBean.getProductList().size(); i++) {
QueryOrdersResponseDto.DataBean.OrderBean.ProductBean productBean = orderBean.getProductList().get(i);
String pid = org.apache.commons.lang3.StringUtils.isNotBlank(productBean.getSpecification()) ? productBean.getSpecification() : productBean.getProductId();
......@@ -703,7 +703,7 @@ public class CouponAdapter {
mcCafeProductRedeemVo.setSeq(i + 1);
products.add(mcCafeProductRedeemVo);
}
} else if (QueryOrderAccountType.FREIGHT_COUPON.equals(orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
} else if (OldOrderAccountType.FREIGHT_COUPON.getCode().equals(accountBean.getType())) {
if(null != coupon) {
McdNetCouponProductRespDto mcdNetCouponProductRespDto = coupon.getCodeInfo().getProducts().get(0);
MCCafeProductRedeemVo mcCafeProductRedeemVo = new MCCafeProductRedeemVo();
......
......@@ -2822,6 +2822,9 @@ public class OrderAdapter {
if (ActivityTypeEnum.TYPE_31.getCode().equals(activityType)) {
return OldOrderAccountType.DISCOUNT_COUPON;
}
if (ActivityTypeEnum.TYPE_39.getCode().equals(activityType)) {
return OldOrderAccountType.EVM_PRODUCT_COUPON;
}
if (ActivityTypeEnum.TYPE_PACKAGE.getCode().equals(activityType)) {
return OldOrderAccountType.PACK_AMOUNT;
}
......
......@@ -28,6 +28,9 @@ import cn.freemud.utils.ResponseUtil;
import cn.freemud.xxljob.OrderCountJobHandler;
import com.freemud.application.sdk.api.log.ApiAnnotation;
import com.freemud.application.sdk.api.log.LogParams;
import com.freemud.application.sdk.api.ordercenter.request.OrderCountReqs;
import com.freemud.application.sdk.api.ordercenter.response.OrderCountResp;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -35,6 +38,7 @@ import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
......
......@@ -35,6 +35,7 @@ public enum ActivityTypeEnum {
TYPE_35(35, "买1赠3券"),
TYPE_37(37, "种子券"),
TYPE_38(38, "月享卡2.0"),
TYPE_39(39, "EVM券"),
TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"),
TYPE_52(52, "阶梯满金额折"),
......
......@@ -71,10 +71,11 @@ public class CouponClientServiceImpl implements CouponClientService {
return null;
}
List<QueryOrdersResponseDto.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON)
|| orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON)
|| orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON)
|| orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.FREIGHT_COUPON))
account -> (OldOrderAccountType.COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.EVM_PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.DISCOUNT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.FREIGHT_COUPON.getCode().equals(account.getType()))
).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList)) {
return null;
......@@ -143,9 +144,10 @@ public class CouponClientServiceImpl implements CouponClientService {
return null;
}
List<QueryOrdersResponseDto.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (OldOrderAccountType.PRODUCT_COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
|| OldOrderAccountType.COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
|| OldOrderAccountType.DISCOUNT_COUPON.equals(OldOrderAccountType.getByCode(account.getType()))
account -> (OldOrderAccountType.PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.EVM_PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.DISCOUNT_COUPON.getCode().equals(account.getType())
)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList)) {
return null;
......
......@@ -43,9 +43,11 @@ public class McCafeCouponAdapter {
}
List<QueryOrdersResponse.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON))
account -> (OldOrderAccountType.COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.EVM_PRODUCT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.DISCOUNT_COUPON.getCode().equals(account.getType())
|| OldOrderAccountType.FREIGHT_COUPON.getCode().equals(account.getType()))
).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList) ) {
return null;
......@@ -78,7 +80,7 @@ public class McCafeCouponAdapter {
public MCCafeCouponRequest convert2MCCafeCouponRequest(QueryOrdersResponse.DataBean.OrderBean orderBean, QueryOrdersResponse.DataBean.OrderBean.AccountBean accountBean, McdNetBatchQueryResponse.Coupon coupon) {
List<MCCafeProductRedeemVo> products = new ArrayList<>();
//商品券核销核销参数
if (QueryOrderAccountType.PRODUCT_COUPON.equals(getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
if (OldOrderAccountType.PRODUCT_COUPON.getCode().equals(accountBean.getType()) || OldOrderAccountType.EVM_PRODUCT_COUPON.getCode().equals(accountBean.getType())) {
for (int i = 0; i < orderBean.getProductList().size(); i++) {
QueryOrdersResponse.DataBean.OrderBean.ProductBean productBean = orderBean.getProductList().get(i);
String pid = StringUtils.isNotBlank(productBean.getSpecification()) ? productBean.getSpecification() : productBean.getProductId();
......@@ -109,7 +111,7 @@ public class McCafeCouponAdapter {
}
}
}
}else if (QueryOrderAccountType.COUPON.equals(getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
}else if (OldOrderAccountType.COUPON.getCode().equals(accountBean.getType())) {
for (int i = 0; i < orderBean.getProductList().size(); i++) {
QueryOrdersResponse.DataBean.OrderBean.ProductBean productBean = orderBean.getProductList().get(i);
String pid = StringUtils.isNotBlank(productBean.getSpecification()) ? productBean.getSpecification() : productBean.getProductId();
......
......@@ -8,7 +8,7 @@
<version>1.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<version>2.9.12-SNAPSHOT</version>
<version>2.9.13-SNAPSHOT</version>
<artifactId>ordercenter-sdk</artifactId>
<dependencies>
......
......@@ -131,3 +131,4 @@
| 2.9.10-SNAPSHOT | 升级sdk | 王世昌 | 2021-04-29 |
| 2.9.11-SNAPSHOT | 添加es搜索订单支付渠道 | 王世昌 | 2021-05-10|
| 2.9.12-SNAPSHOT | 售后单搜索es增加快递单号条件 | 王世昌 | 2021-05-10|
| 2.9.13-SNAPSHOT | 麦咖啡新增优惠类型 | 徐康 | 2021-05-12|
......@@ -529,13 +529,7 @@ public class ShoppingCartConvertAdapter {
|| ObjectUtils.equals(com.freemud.sdk.api.assortment.shoppingcart.constant.GoodsTypeEnum.COUPON_GOODS.getGoodsType(), cartGoods.getGoodsType())
|| ObjectUtils.equals(GoodsTypeEnum.ALL_COUPON_GOODS.getGoodsType(), cartGoods.getGoodsType()))
? cartGoods.getSkuId() : cartGoods.getSpuId());
// 应产品要求
// 普通商品,取商品的finalePrice(普通商品售价);套餐商品,取originalPrice(套餐价格)
if (ObjectUtils.equals(com.freemud.sdk.api.assortment.shoppingcart.constant.GoodsTypeEnum.SET_MEAL_GOODS.getGoodsType(), cartGoods.getGoodsType())){
productType.setPrice(null == cartGoods.getOriginalPrice() ? 0 : cartGoods.getOriginalPrice().intValue());
}else{
productType.setPrice(cartGoods.getFinalPrice() == null ? 0 : cartGoods.getFinalPrice().intValue());
}
productType.setValidatePrice(productType.getPrice() == 0 ? 0 : 1);
productType.setValidateAttribute(1);
productType.setValidateStatuses(Arrays.asList(2));
......@@ -1059,10 +1053,10 @@ public class ShoppingCartConvertAdapter {
//更新当前商品行价格
Long newOrigOriginalPrice = 0L;
if (isSetMealProduct) {
cartGoods.setOriginalPrice(null != cartGoods.getOriginalPrice()? cartGoods.getOriginalPrice() : 0);
cartGoods.setOriginalPrice(null != spuProduct.getOriginalPrice()? spuProduct.getOriginalPrice() : 0);
cartGoods.setOriginalAmount(cartGoods.getOriginalPrice()* cartGoods.getQty());
//咨询商品服务,套餐售价取originalPrice
cartGoods.setFinalPrice(null != cartGoods.getOriginalPrice() ? cartGoods.getOriginalPrice() : 0);
cartGoods.setFinalPrice(null != spuProduct.getFinalPrice() ? spuProduct.getFinalPrice() : 0);
cartGoods.setAmount(cartGoods.getFinalPrice() * cartGoods.getQty());
} else {
newOrigOriginalPrice = isSkuProduct ? skuProduct.getFinalPrice() : spuProduct.getFinalPrice();
......@@ -1070,7 +1064,7 @@ public class ShoppingCartConvertAdapter {
cartGoods.setOriginalAmount(newOrigOriginalPrice * cartGoods.getQty());
cartGoods.setAmount(newOrigOriginalPrice * cartGoods.getQty());
//咨询商品服务,套餐售价取originalPrice
cartGoods.setFinalPrice(isSkuProduct ? skuProduct.getOriginalPrice() : spuProduct.getFinalPrice());
cartGoods.setFinalPrice(isSkuProduct ? skuProduct.getFinalPrice() : spuProduct.getFinalPrice());
}
cartGoods.setWeight(isSkuProduct ? skuProduct.getWeight() : spuProduct.getWeight());
cartGoods.setUnit(isSkuProduct ? skuProduct.getUnit() : spuProduct.getUnit());
......
......@@ -70,7 +70,7 @@ public class ShoppingCartMccafeAdapter {
cartGoodsDetailDto.setSpuName(comboxGoods.getSpuName());
cartGoodsDetailDto.setSkuId(comboxGoods.getGoodsId());
cartGoodsDetailDto.setSkuName(StringUtils.isEmpty(comboxGoods.getSkuName()) ? comboxGoods.getSpuName() : comboxGoods.getSkuName());
cartGoodsDetailDto.setOriginalPrice(comboxGoods.getOriginalPrice());
cartGoodsDetailDto.setOriginalPrice(comboxGoods.getFinalPrice());
cartGoodsDetailDto.setPicture(comboxGoods.getPic());
int qty = comboxGoods.getQty() * cartGoods.getQty();
cartGoodsDetailDto.setQty(qty);
......@@ -150,9 +150,9 @@ public class ShoppingCartMccafeAdapter {
cartGoodsDetailDto.setSpuName(cartGoods.getSpuName());
cartGoodsDetailDto.setSkuId(StringUtils.isEmpty(cartGoods.getSkuId()) ? cartGoods.getSpuId() : cartGoods.getSkuId());
cartGoodsDetailDto.setSkuName(StringUtils.isEmpty(cartGoods.getSkuName()) ? cartGoods.getSpuName() : cartGoods.getSkuName());
cartGoodsDetailDto.setOriginalPrice(cartGoods.getOriginalPrice());
cartGoodsDetailDto.setOriginalPrice(cartGoods.getFinalPrice());
// cartGoodsDetailDto.setTotalDiscountAmount(0);
cartGoodsDetailDto.setSalePrice(cartGoods.getOriginalPrice());
cartGoodsDetailDto.setSalePrice(cartGoods.getFinalPrice());
cartGoodsDetailDto.setPicture(cartGoods.getPic());
cartGoodsDetailDto.setQty(cartGoods.getQty());
cartGoodsDetailDto.setActivityType(cartGoods.getActivityType());
......
......@@ -38,6 +38,7 @@ public enum ActivityTypeEnum {
TYPE_35(35, "买三赠一券"),
TYPE_37(37, "月享卡种子券"),
TYPE_38(38,"月享卡2.0"),
TYPE_39(39, "EVM券"),
TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"),
TYPE_52(52, "阶梯满金额折"),
......
......@@ -205,8 +205,7 @@ public class ShoppingCartMCoffeeServiceImpl {
//根据券号获取券名称
String couponName = "";
if (StringUtils.isNotEmpty(couponCode)) {
CustomerInfoVo userLoginInfoDto = getCustomerInfoVo(sessionId);
couponName = getCouponNameByCode(couponCode, userLoginInfoDto,
couponName = getCouponNameByCode(couponCode, assortmentCustomerInfoVo,
BusinessTypeEnum.getByType(addShoppingCartGoodsRequestVo.getMenuType()).getCode(), storeId);
//月享卡2.0之后不在显示月享卡券的名称 与普通商品券不同,故过滤掉月享卡券名称查询
if (!("9999").equals(addCartGoods.getSpuId()) && !("9999").equals(addCartGoods.getSkuId())){
......@@ -1716,9 +1715,9 @@ public class ShoppingCartMCoffeeServiceImpl {
//套餐商品赋值
if (ObjectUtils.equals(GoodsTypeEnum.SET_MEAL_GOODS.getGoodsType(), cartGoods.getGoodsType())){
cartGoods.setOriginalPrice(productBeanListSpuClass.get(0).getOriginalPrice());
cartGoods.setFinalPrice(productBeanListSpuClass.get(0).getFinalPrice());
cartGoods.setPackPrice(productBeanListSpuClass.get(0).getPackPrice());
// cartGoods.setOriginalPrice(productBeanListSpuClass.get(0).getOriginalPrice());
// cartGoods.setFinalPrice(productBeanListSpuClass.get(0).getFinalPrice());
// cartGoods.setPackPrice(productBeanListSpuClass.get(0).getPackPrice());
cartGoods.setCustomerCode(productBeanListSpuClass.get(0).getCustomerCode());
cartGoods.setName(productBeanListSpuClass.get(0).getName());
cartGoods.setSpuName(productBeanListSpuClass.get(0).getName());
......@@ -1745,20 +1744,20 @@ public class ShoppingCartMCoffeeServiceImpl {
}
//套餐可选商品赋值
if (CollectionUtils.isNotEmpty(productBeanListSpuClass.get(0).getProductGroupList())){
for (ProductBeanDTO.ProductGroupType groupType : productBeanListSpuClass.get(0).getProductGroupList()) {
if (CollectionUtils.isNotEmpty(groupType.getGroupDetail())){
for (ProductBeanDTO.ProductGroupType.GroupDetailType detailType : groupType.getGroupDetail()) {
for (CartGoods.ComboxGoods groupGoods : cartGoods.getProductGroupList()) {
if (detailType.getProductId().equals(groupGoods.getGoodsId())) {
groupGoods.setFinalPrice(detailType.getMarkUpPrice().longValue());
groupGoods.setOriginalPrice(detailType.getProductPrice().longValue());
}
}
}
}
}
}
// if (CollectionUtils.isNotEmpty(productBeanListSpuClass.get(0).getProductGroupList())){
// for (ProductBeanDTO.ProductGroupType groupType : productBeanListSpuClass.get(0).getProductGroupList()) {
// if (CollectionUtils.isNotEmpty(groupType.getGroupDetail())){
// for (ProductBeanDTO.ProductGroupType.GroupDetailType detailType : groupType.getGroupDetail()) {
// for (CartGoods.ComboxGoods groupGoods : cartGoods.getProductGroupList()) {
// if (detailType.getProductId().equals(groupGoods.getGoodsId())) {
// groupGoods.setFinalPrice(detailType.getMarkUpPrice().longValue());
// groupGoods.setOriginalPrice(detailType.getProductPrice().longValue());
// }
// }
// }
// }
// }
// }
}
}
......@@ -1777,13 +1776,7 @@ public class ShoppingCartMCoffeeServiceImpl {
cartGoods.setIsMonthCardGoods(addShoppingCartGoodsRequestVo.getIsMonthCardGoods());
cartGoods.setCouponCode(addShoppingCartGoodsRequestVo.getCouponCode());
Integer goodsType = StringUtils.isEmpty(skuId) || ObjectUtils.equals(spuId, skuId) ? GoodsTypeEnum.SPU_GOODS.getGoodsType() : GoodsTypeEnum.SKU_GOODS.getGoodsType();
if (spuId.startsWith(CommonsConstant.COUPON_PREFIX)) {
goodsType = GoodsTypeEnum.COUPON_GOODS.getGoodsType();
cartGoods.setSpuId(mCoffeeProductIdsVo.getSpuId());
cartGoods.setSkuId(goodsId);
cartGoods.setCouponCode(spuId.substring(CommonsConstant.COUPON_PREFIX.length()));
// cartGoods.setCartGoodsUid(spuId);
} else if (CollectionUtils.isNotEmpty(addShoppingCartGoodsRequestVo.getProductComboList()) || CollectionUtils.isNotEmpty(addShoppingCartGoodsRequestVo.getProductGroupList())) {
if (CollectionUtils.isNotEmpty(addShoppingCartGoodsRequestVo.getProductComboList()) || CollectionUtils.isNotEmpty(addShoppingCartGoodsRequestVo.getProductGroupList())) {
goodsType = GoodsTypeEnum.SET_MEAL_GOODS.getGoodsType();
} else if (CommonsConstant.COUPON_TYPE.equals(addShoppingCartGoodsRequestVo.getCouponType())){
goodsType = GoodsTypeEnum.ALL_COUPON_GOODS.getGoodsType();
......@@ -1958,7 +1951,7 @@ public class ShoppingCartMCoffeeServiceImpl {
ShoppingCartGoodsBaseResponseVo shoppingCartGoodsResponseVo, List<CartGoods> cartGoodsList) {
//筛选数量不为0商品
cartGoodsList = cartGoodsList.stream().filter(cartGoods -> cartGoods.getQty() != 0 && StringUtils.equals("9999",cartGoods.getSkuId())).collect(Collectors.toList());
cartGoodsList = cartGoodsList.stream().filter(cartGoods -> cartGoods.getQty() != 0 && !StringUtils.equals("9999",cartGoods.getSkuId())).collect(Collectors.toList());
//筛选非加购商品--加价购商品不校验是否在菜单,不调用validateShopProduct
List<CartGoods> checkGoods = cartGoodsList.stream().filter(cartGoods -> cartGoods.getGoodsType() != GoodsTypeEnum.REDUCE_PRICE_GOODS.getGoodsType()).collect(Collectors.toList());
......@@ -2060,7 +2053,7 @@ public class ShoppingCartMCoffeeServiceImpl {
return baseResponse.getResult();
}
private BaseResponse<CheckCartRequest> checkAllCartGoodsForMCoffee(CheckCartRequest checkCartRequest) {
public BaseResponse<CheckCartRequest> checkAllCartGoodsForMCoffee(CheckCartRequest checkCartRequest) {
try {
ValidateShopProductRequest validateShopProductRequest = shoppingCartConvertAdapter.getValidateShopProductRequest(checkCartRequest);
ProductBaseResponse<ValiadShopProductResponse> valiadResponse = productClient.validateShopProductAboutReason(validateShopProductRequest);
......@@ -2078,6 +2071,7 @@ public class ShoppingCartMCoffeeServiceImpl {
if (CollectionUtils.isNotEmpty(validateResult.getFailureList())){
List<String> invalidSpu = new ArrayList<>();
List<String> notFoundSpu = new ArrayList<>();
List<String> numErrorSpu = new ArrayList<>();
List<String> changePriceSpu = new ArrayList<>();
List<String> disableCoupon = new ArrayList<>();
for (int i = 0; i < validateResult.getFailureList().size(); i++) {
......@@ -2107,16 +2101,22 @@ public class ShoppingCartMCoffeeServiceImpl {
cartGoods.setCartGoodsUid(null);
break;
}
if (111 == validaProduct.getCode() || 112 == validaProduct.getCode()) {
numErrorSpu.add(spuName);
if (StringUtils.isNotEmpty(couponName)){
disableCoupon.add(couponName);
}
cartGoodsStates.setHasInvalidGoods(true);
cartGoods.setCartGoodsUid(null);
break;
}
if (PRODUCT_PRICE_CHANGE == validaProduct.getCode()) {
changePriceSpu.add(spuName);
List<ProductTypeBeanDTO> productList =
validateResult.getFailureList().stream().map(ValiadShopProductResult::getProductType).collect(Collectors.toList());
shoppingCartConvertAdapter.updateCartGoodsInfoForMCoffee(cartGoods, productList);
shoppingCartConvertAdapter.updateCartGoodsInfo(cartGoods, validaProduct.getProductType(), validaProduct.getSubProductTypeMap());
}
if (PRODUCT_GROUP_PRICE_CHANGE == validaProduct.getCode()) {
changePriceSpu.add(spuName);
List<ProductTypeBeanDTO> productList = validateResult.getFailureList().stream().map(ValiadShopProductResult::getProductType).collect(Collectors.toList());
shoppingCartConvertAdapter.updateCartGoodsInfoForMCoffee(cartGoods, productList);
shoppingCartConvertAdapter.updateCartGoodsInfo(cartGoods, validaProduct.getProductType(), validaProduct.getSubProductTypeMap());
}
if (PRODUCT_GROUP_EMPTY == validaProduct.getCode()) {
cartGoodsStates.setHasInvalidGoods(true);
......@@ -2138,6 +2138,9 @@ public class ShoppingCartMCoffeeServiceImpl {
if (CollectionUtils.isNotEmpty(changePriceSpu)){
toastMsg = toastMsg.concat(CART_PRODUCT_PRICE_CHANGE.replace("$spuName",StringUtils.join(changePriceSpu,",")));
}
if (CollectionUtils.isNotEmpty(numErrorSpu)){
toastMsg = toastMsg.concat("您选择的【$spuName】不满足购买条件".replace("$spuName",StringUtils.join(numErrorSpu,",")));
}
if (CollectionUtils.isNotEmpty(disableCoupon)){
toastMsg = toastMsg.concat(COUPON_IS_DISABLE.replace("$couponName",StringUtils.join(disableCoupon,",")));
......
......@@ -211,7 +211,6 @@ public class CalculationServiceImpl {
});
for (int i = 0, len = cartGoodsList.size(); i < len; i++) {
CartGoods cartGoods = cartGoodsList.get(i);
// List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtos = shoppingCartConvertAdapter.convertCartGoods2DetailGoodsList(cartGoods, apportionGoodsList,duplicateGoodsMap);
List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtos = shoppingCartMccafeAdapter.convertCartGoods2DetailGoodsList(cartGoods, apportionGoodsList,duplicateGoodsMap);
cartGoodsDetailDtoList.addAll(cartGoodsDetailDtos);
}
......@@ -506,7 +505,7 @@ public class CalculationServiceImpl {
for (CartGoods cartGoods : cartGoodsList) {
// 设置商品原价与商品现价的初始值
long originalAmount = null != cartGoods.getOriginalPrice() ? cartGoods.getOriginalPrice()* cartGoods.getQty() : 0;
long amount = null != cartGoods.getOriginalPrice() ? cartGoods.getOriginalPrice()* cartGoods.getQty() : 0;
long amount = null != cartGoods.getFinalPrice() ? cartGoods.getFinalPrice()* cartGoods.getQty() : 0;
long packAmount = null != cartGoods.getPackPrice() ? cartGoods.getPackPrice()* cartGoods.getQty() : 0;
totalOriginalAmount += originalAmount;
totalAmount += amount;
......
......@@ -209,11 +209,16 @@ public class CouponDiscountCalculation {
*/
public void updateShoppingCartGoodsApportion(ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, ShoppingCartGoodsDto shoppingCartGoodsDto, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo){
if (calculationDiscountResult == null || CollectionUtils.isEmpty(calculationDiscountResult.getDiscounts())
|| !calculationDiscountResult.getDiscounts().stream().anyMatch(discount -> (ActivityTypeEnum.TYPE_3.getCode().equals(discount.getType())
||(ActivityTypeEnum.TYPE_31.getCode().equals(discount.getType())) || (ActivityTypeEnum.TYPE_32.getCode().equals(discount.getType()))
|| (ActivityTypeEnum.TYPE_35.getCode().equals(discount.getType()))
||(ActivityTypeEnum.TYPE_37.getCode().equals(discount.getType())) ||(ActivityTypeEnum.TYPE_38.getCode().equals(discount.getType()))))) {
if (calculationDiscountResult == null
|| CollectionUtils.isEmpty(calculationDiscountResult.getDiscounts())
|| !calculationDiscountResult.getDiscounts().stream().anyMatch(
discount -> ActivityTypeEnum.TYPE_3.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_31.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_32.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_35.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_37.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_38.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_39.getCode().equals(discount.getType()))) {
return;
}
Map<String, Integer> extendTypeMap = calculationDiscountResult.getDiscounts().stream().filter(o -> o.getExtendType() != null)
......@@ -224,10 +229,14 @@ public class CouponDiscountCalculation {
if (CollectionUtils.isEmpty(couponDiscounts)) {
return;
}
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount> discounts = couponDiscounts.stream().filter(discount -> (ActivityTypeEnum.TYPE_3.getCode().equals(discount.getType())
|| (ActivityTypeEnum.TYPE_31.getCode().equals(discount.getType())) || (ActivityTypeEnum.TYPE_32.getCode().equals(discount.getType())
|| (ActivityTypeEnum.TYPE_35.getCode().equals(discount.getType()))
|| (ActivityTypeEnum.TYPE_37.getCode().equals(discount.getType())) || (ActivityTypeEnum.TYPE_38.getCode().equals(discount.getType()))))).collect(Collectors.toList());
List<ActivityCalculationDiscountResponseDto.CalculationDiscountResult.Discount> discounts = couponDiscounts.stream().filter(
discount -> (ActivityTypeEnum.TYPE_3.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_31.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_32.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_35.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_37.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_38.getCode().equals(discount.getType())
|| ActivityTypeEnum.TYPE_39.getCode().equals(discount.getType()))).collect(Collectors.toList());
if (CollectionUtils.isEmpty(discounts)) {
return;
}
......
......@@ -101,8 +101,6 @@ public class SetMealCalculation {
cartGoods.setAmount(cartGoods.getAmount() + materialPrice);
cartGoods.setOriginalAmount(cartGoods.getOriginalAmount() + materialPrice);
}
cartGoods.setOriginalPrice(cartGoods.getOriginalPrice());
cartGoods.setFinalPrice(cartGoods.getFinalPrice());
// 套餐(固定商品)现价
// String toastMsg = getTotalAmount(cartGoods, productGroupAmount, numberMap, goodsMap);
......
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