Commit 96ab0b53 by 徐康
parents ca291e74 7390b074
...@@ -110,7 +110,7 @@ public class CalculationSharingCartService { ...@@ -110,7 +110,7 @@ public class CalculationSharingCartService {
if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) { if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) {
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE); calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE);
} else if (ShoppingCartConstant.QUERY_INFO.equals(opt)) { } else if (ShoppingCartConstant.QUERY_INFO.equals(opt)) {
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE); calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.QUERY_INFO);
calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo); calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
} }
......
...@@ -212,7 +212,7 @@ public class CalculationSharingDiscountService { ...@@ -212,7 +212,7 @@ public class CalculationSharingDiscountService {
material.setType(2); material.setType(2);
material.setGoodsId(group.getGoodsId()); material.setGoodsId(group.getGoodsId());
material.setGoodsQuantity(1); material.setGoodsQuantity(1);
material.setOriginalPrice(group.getOriginalPrice()); material.setOriginalPrice(group.getFinalPrice());
groups.add(material); groups.add(material);
} }
calculationDiscountGoods.setSmallMaterial(groups); calculationDiscountGoods.setSmallMaterial(groups);
......
...@@ -48,6 +48,22 @@ public class FullSharingService { ...@@ -48,6 +48,22 @@ public class FullSharingService {
if (discountResult == null || CollectionUtils.isEmpty(discountResult.getGoods())) { if (discountResult == null || CollectionUtils.isEmpty(discountResult.getGoods())) {
return; return;
} }
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> discounts = discountResult.getDiscounts();
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> fullDiscountsList = discounts
.stream()
.filter(d -> ActivityTypeEnum.TYPE_11.getCode().equals(d.getType()) || ActivityTypeEnum.TYPE_12.getCode().equals(d.getType()))
.collect(Collectors.toList());
/**
* 设置到响应中 总的满减优惠金额
*/
if (CollectionUtils.isNotEmpty(fullDiscountsList)) {
long fullDiscount = 0L;
fullDiscount = fullDiscountsList.stream().filter(d -> d.getDiscount() != null).mapToLong(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount::getDiscount).sum();
shoppingCartGoodsResponseVo.setFullDiscount(fullDiscount);
}
shoppingCartGoodsResponseVo.setActivityTip(new ActivityTip()); shoppingCartGoodsResponseVo.setActivityTip(new ActivityTip());
List<ActivityTypeEnum> activityTypeEnums = new LinkedList<>(); List<ActivityTypeEnum> activityTypeEnums = new LinkedList<>();
/** /**
...@@ -55,6 +71,8 @@ public class FullSharingService { ...@@ -55,6 +71,8 @@ public class FullSharingService {
*/ */
activityTypeEnums.add(ActivityTypeEnum.TYPE_11); activityTypeEnums.add(ActivityTypeEnum.TYPE_11);
activityTypeEnums.add(ActivityTypeEnum.TYPE_12); activityTypeEnums.add(ActivityTypeEnum.TYPE_12);
activityTypeEnums.add(ActivityTypeEnum.TYPE_3);
activityTypeEnums.add(ActivityTypeEnum.TYPE_31);
List<Integer> typeEnums = activityTypeEnums.stream().map(ActivityTypeEnum::getCode).collect(Collectors.toList()); List<Integer> typeEnums = activityTypeEnums.stream().map(ActivityTypeEnum::getCode).collect(Collectors.toList());
/** /**
* 还原满减折扣到行记录上 * 还原满减折扣到行记录上
...@@ -65,17 +83,21 @@ public class FullSharingService { ...@@ -65,17 +83,21 @@ public class FullSharingService {
.collect(Collectors.toMap(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods::getCartGoodsUid, Function.identity(), (k1, k2) -> k1)); .collect(Collectors.toMap(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods::getCartGoodsUid, Function.identity(), (k1, k2) -> k1));
long full = 0L; long full = 0L;
long sum = 0L;
for (CartGoods cart : cartGoodsList) { for (CartGoods cart : cartGoodsList) {
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods discountMap = map.get(cart.getCartGoodsUid()); CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods discountMap = map.get(cart.getCartGoodsUid());
full = 0L; full = 0L;
sum = 0L;
if (null==discountMap) continue; if (null==discountMap) continue;
if (CollectionUtils.isNotEmpty(discountMap.getDiscounts())) { if (CollectionUtils.isNotEmpty(discountMap.getDiscounts())) {
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount discount = null; //CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount discount = null;
discount = discountMap.getDiscounts().stream().filter(d -> typeEnums.contains(d.getType())).findFirst().orElse(null); //discount = discountMap.getDiscounts().stream().filter(d -> typeEnums.contains(d.getType())).findFirst().orElse(null);
if (discount!=null) { sum = discountMap.getDiscounts()
full = discount.getDiscount(); .stream()
cart.setAmount(cart.getAmount()+full); .filter(d -> typeEnums.contains(d.getType()))
} .mapToLong(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount::getDiscount)
.sum();
cart.setAmount(cart.getAmount() + sum);
} }
//小料 //小料
if (CollectionUtils.isNotEmpty(cart.getProductMaterialList())) { if (CollectionUtils.isNotEmpty(cart.getProductMaterialList())) {
...@@ -145,7 +167,7 @@ public class FullSharingService { ...@@ -145,7 +167,7 @@ public class FullSharingService {
else { else {
//促销返回满减提示语 //促销返回满减提示语
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.ActivityPrompt> activityPrompts = discountResult.getActivityPrompts(); List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.ActivityPrompt> activityPrompts = discountResult.getActivityPrompts();
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> discounts = discountResult.getDiscounts(); //List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> discounts = discountResult.getDiscounts();
/** /**
* 构建提示语 * 构建提示语
*/ */
...@@ -167,30 +189,6 @@ public class FullSharingService { ...@@ -167,30 +189,6 @@ public class FullSharingService {
if (discountResult == null){ if (discountResult == null){
return; return;
} }
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> discounts = discountResult.getDiscounts();
if (CollectionUtils.isNotEmpty(discounts)) {
return;
}
List<CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount> fullDiscountsList = discounts
.stream()
.filter(d -> d.getType().equals(ActivityTypeEnum.TYPE_11.getCode()) || d.getType().equals(ActivityTypeEnum.TYPE_12))
.collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(fullDiscountsList)) {
return;
}
/**
* 总的满减优惠金额
*/
long fullDiscount = 0L;
fullDiscount = fullDiscountsList.stream().filter(d->d.getDiscount()!=null).mapToLong(CalculationSharingDiscountResponseDto.CalculationDiscountResult.Discount::getDiscount).sum();
/**
* 设置到响应中
*/
shoppingCartGoodsResponseVo.setFullDiscount(fullDiscount);
} }
/** /**
......
...@@ -169,7 +169,7 @@ public class GiftSharingService { ...@@ -169,7 +169,7 @@ public class GiftSharingService {
, List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtoList , List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtoList
, ActivityQueryDto activityQueryDto , ActivityQueryDto activityQueryDto
, String menuType) { , String menuType) {
if (CollectionUtils.isEmpty(discountResult.getSendGoods())) { if (CollectionUtils.isEmpty(discountResult.getGoods())) {
return; return;
} }
List<ProductBeanDTO> beanDTOList = this.drawGiftInfo(discountResult, activityQueryDto, menuType); List<ProductBeanDTO> beanDTOList = this.drawGiftInfo(discountResult, activityQueryDto, menuType);
......
...@@ -546,7 +546,7 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -546,7 +546,7 @@ public class ShoppingCartMCoffeeServiceImpl {
// 新门店check购物车中所有商品 // 新门店check购物车中所有商品
cartGoodsList = checkCartGoods(partnerId, toStoreId, orderType, menuType, shoppingCartGoodsResponseVo, cartGoodsList); cartGoodsList = checkCartGoods(partnerId, toStoreId, orderType, menuType, shoppingCartGoodsResponseVo, cartGoodsList);
if (requestVo.getOperationType() == ShoppingCartOperationType.UPDATE3.getCode()) { if (requestVo.getOperationType() == ShoppingCartOperationType.UPDATE3.getCode()) {
if (null == shoppingCartGoodsResponseVo.getChanged() || StringUtils.isEmpty(shoppingCartGoodsResponseVo.getToastMsg())){ if (StringUtils.isEmpty(shoppingCartGoodsResponseVo.getToastMsg())){
// 重新存储新门店购物车 // 重新存储新门店购物车
assortmentSdkService.setShoppingCart(partnerId, toStoreId, userId, cartGoodsList, sessionId, "", shoppingCartBaseService); assortmentSdkService.setShoppingCart(partnerId, toStoreId, userId, cartGoodsList, sessionId, "", shoppingCartBaseService);
//清空商品券商品 //清空商品券商品
...@@ -658,7 +658,11 @@ public class ShoppingCartMCoffeeServiceImpl { ...@@ -658,7 +658,11 @@ public class ShoppingCartMCoffeeServiceImpl {
cartGoods.setSpuId(orderItem.getProductId()); cartGoods.setSpuId(orderItem.getProductId());
cartGoods.setSkuId(orderItem.getProductSpec()); cartGoods.setSkuId(orderItem.getProductSpec());
if(6 == orderItem.getProductType()) { if(6 == orderItem.getProductType()) {
cartGoods.setGoodsType(3); cartGoods.setGoodsType(com.freemud.sdk.api.assortment.shoppingcart.constant.GoodsTypeEnum.SET_MEAL_GOODS.getGoodsType());
} else if(10 ==orderItem.getProductType()) {
cartGoods.setGoodsType(com.freemud.sdk.api.assortment.shoppingcart.constant.GoodsTypeEnum.SKU_GOODS.getGoodsType());
} else {
cartGoods.setGoodsType(com.freemud.sdk.api.assortment.shoppingcart.constant.GoodsTypeEnum.COMMON_GOODS.getGoodsType());
} }
if(("早餐啡常搭".equals(orderItem.getProductName()) && "早餐啡常搭".equals(orderItem.getProductSpecName())) if(("早餐啡常搭".equals(orderItem.getProductName()) && "早餐啡常搭".equals(orderItem.getProductSpecName()))
|| ("啡常搭".equals(orderItem.getProductName()) && "啡常搭".equals(orderItem.getProductSpecName()))) { || ("啡常搭".equals(orderItem.getProductName()) && "啡常搭".equals(orderItem.getProductSpecName()))) {
......
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