Commit e3b3d62f by zhiheng.zhang

Merge branch 'qa' of http://gitlab.freemud.com/order-group-application/order-group into qa

 Conflicts:
	shopping-cart-application-service/src/main/java/cn/freemud/entities/vo/ShoppingCartInfoRequestVo.java
	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/mcoffee/ShoppingCartMCoffeeServiceImpl.java
parents 080c9f18 b4af45e4
...@@ -25,6 +25,10 @@ public class RedisKeyConstant { ...@@ -25,6 +25,10 @@ public class RedisKeyConstant {
/** /**
* 用户购物车在redis的key前缀 * 用户购物车在redis的key前缀
*/ */
public final static String SAAS_SHOPPINGCART_COUPON_KEY_PREFIX_TYPE = "saas:user:info:cart:coupon:type:";
/**
* 用户购物车在redis的key前缀
*/
public final static String SAAS_USER_INFO_CART_CARTADDPRODUCT = "saas:user:info:cart:cartAddProduct:goods:"; public final static String SAAS_USER_INFO_CART_CARTADDPRODUCT = "saas:user:info:cart:cartAddProduct:goods:";
/** /**
* 用户购物车总价在redis的key前缀 * 用户购物车总价在redis的key前缀
......
...@@ -41,4 +41,9 @@ public class CartParamDto { ...@@ -41,4 +41,9 @@ public class CartParamDto {
private MealClearOperationEnum operationType; private MealClearOperationEnum operationType;
private Integer couponType; private Integer couponType;
/**
* 各类券信息
*/
private List<CouponTypeVo> couponTypeList;
} }
package com.freemud.sdk.api.assortment.shoppingcart.domain;
import lombok.Data;
@Data
public class CouponTypeVo {
/**
* 券类型 1:买三赠一券
*/
private Integer type;
/**
* 券code
*/
private String code;
}
...@@ -5,6 +5,8 @@ public enum SaveCouponType { ...@@ -5,6 +5,8 @@ public enum SaveCouponType {
COUPON(1, "代金券"), COUPON(1, "代金券"),
FREIGHT_COUPON(2, "运费券"), FREIGHT_COUPON(2, "运费券"),
MON_COUPON(3, "随单购月卡"), MON_COUPON(3, "随单购月卡"),
THREE_TO_ONE_COUPON(4, "买三赠一券"),
THREE_TO_ONE_ACTIVITY_CODE(5, "买三赠一券虚拟活动号"),
; ;
private Integer code; private Integer code;
......
...@@ -109,6 +109,26 @@ public interface ShoppingCartBaseService { ...@@ -109,6 +109,26 @@ public interface ShoppingCartBaseService {
BaseResponse clear(CartParamDto cartParamDto, String trackingNo); BaseResponse clear(CartParamDto cartParamDto, String trackingNo);
/** /**
*
* @param cartParamDto
* @param trackingNo
* @return
*/
default BaseResponse<List<CouponTypeVo>> setTypeCartCouponCode(CartParamDto cartParamDto, String trackingNo) {
return null;
}
/**
*
* @param cartParamDto
* @param trackingNo
* @return
*/
default BaseResponse<List<CouponTypeVo>> getTypeCartCouponCode(CartParamDto cartParamDto, String trackingNo) {
return null;
}
/**
* 清除麦咖啡购物车商品行信息 * 清除麦咖啡购物车商品行信息
* *
* @param cartParamDto * @param cartParamDto
......
...@@ -3,41 +3,23 @@ package com.freemud.sdk.api.assortment.shoppingcart.service.impl; ...@@ -3,41 +3,23 @@ package com.freemud.sdk.api.assortment.shoppingcart.service.impl;
import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Level;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.redis.RedisCache; import cn.freemud.redis.RedisCache;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.couponcenter.enums.CouponTypeEnum;
import com.freemud.application.sdk.api.couponcenter.online.domain.*; import com.freemud.application.sdk.api.couponcenter.online.domain.*;
import com.freemud.application.sdk.api.couponcenter.online.request.ActiveBatchQueryRequest; import com.freemud.application.sdk.api.couponcenter.online.request.ActiveBatchQueryRequest;
import com.freemud.application.sdk.api.couponcenter.online.request.CouponDetailRequest;
import com.freemud.application.sdk.api.couponcenter.online.request.PartnerRequest;
import com.freemud.application.sdk.api.couponcenter.online.response.CouponDetailResponse;
import com.freemud.application.sdk.api.couponcenter.online.service.FMActiveSdkService; import com.freemud.application.sdk.api.couponcenter.online.service.FMActiveSdkService;
import com.freemud.application.sdk.api.couponcenter.online.service.OnlineCouponSdkService; import com.freemud.application.sdk.api.couponcenter.online.service.OnlineCouponSdkService;
import com.freemud.application.sdk.api.log.ErrorLog; import com.freemud.application.sdk.api.log.ErrorLog;
import com.freemud.application.sdk.api.productcenter.constant.ResponseConstant;
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.domain.ProductInfosDTO;
import com.freemud.application.sdk.api.productcenter.request.menu.GetMenuCategoryByIdsRequest;
import com.freemud.application.sdk.api.productcenter.request.product.GetProductRequest;
import com.freemud.application.sdk.api.productcenter.response.menu.GetMenuCategoryByIdsResponse;
import com.freemud.application.sdk.api.productcenter.response.menu.GetMenuCategoryInfoResponse;
import com.freemud.application.sdk.api.productcenter.response.product.GetProductInfosResponse;
import com.freemud.application.sdk.api.productcenter.service.MenuService; import com.freemud.application.sdk.api.productcenter.service.MenuService;
import com.freemud.application.sdk.api.productcenter.service.ProductService; import com.freemud.application.sdk.api.productcenter.service.ProductService;
import com.freemud.sdk.api.assortment.shoppingcart.adapter.ShoppingCartAdapter; import com.freemud.sdk.api.assortment.shoppingcart.adapter.ShoppingCartAdapter;
import com.freemud.sdk.api.assortment.shoppingcart.constant.*; import com.freemud.sdk.api.assortment.shoppingcart.constant.*;
import com.freemud.sdk.api.assortment.shoppingcart.domain.*; import com.freemud.sdk.api.assortment.shoppingcart.domain.*;
import com.freemud.sdk.api.assortment.shoppingcart.enums.SaveCouponType; import com.freemud.sdk.api.assortment.shoppingcart.enums.SaveCouponType;
import com.freemud.sdk.api.assortment.shoppingcart.request.CheckCartRequest;
import com.freemud.sdk.api.assortment.shoppingcart.request.GetProductInfoRequest;
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService; import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import com.freemud.sdk.api.assortment.shoppingcart.util.CartResponseUtil; import com.freemud.sdk.api.assortment.shoppingcart.util.CartResponseUtil;
import com.freemud.sdk.api.assortment.shoppingcart.util.DateTimeUtils;
import com.freemud.sdk.api.assortment.shoppingcart.util.PropertyConvertUtil; import com.freemud.sdk.api.assortment.shoppingcart.util.PropertyConvertUtil;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.BoundHashOperations; import org.springframework.data.redis.core.BoundHashOperations;
...@@ -45,7 +27,6 @@ import org.springframework.data.redis.core.BoundValueOperations; ...@@ -45,7 +27,6 @@ import org.springframework.data.redis.core.BoundValueOperations;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.*; import java.util.*;
import java.util.function.Function; import java.util.function.Function;
import java.util.function.Predicate; import java.util.function.Predicate;
...@@ -154,6 +135,34 @@ public class ShoppingCartBaseServiceImpl implements ShoppingCartBaseService { ...@@ -154,6 +135,34 @@ public class ShoppingCartBaseServiceImpl implements ShoppingCartBaseService {
} }
@Override @Override
public BaseResponse<List<CouponTypeVo>> setTypeCartCouponCode(CartParamDto cartParamDto, String trackingNo) {
try {
String redisKey = getShoppingCartTypeCouponCodeKey(cartParamDto);
redisTemplate.delete(redisKey);
BoundValueOperations<String, List<CouponTypeVo>> operations = redisTemplate.boundValueOps(redisKey);
operations.set(cartParamDto.getCouponTypeList());
return CartResponseUtil.success();
} catch (Exception e) {
ErrorLog.printErrorLog("assortment-shoppingcart-sdk", trackingNo, e.getMessage(), "setTypeCartCouponCode", cartParamDto, e, Level.ERROR);
return null;
}
}
@Override
public BaseResponse<List<CouponTypeVo>> getTypeCartCouponCode(CartParamDto cartParamDto, String trackingNo) {
try {
String redisKey = getShoppingCartTypeCouponCodeKey(cartParamDto);
BoundValueOperations<String, List<CouponTypeVo>> operations = redisTemplate.boundValueOps(redisKey);
List<CouponTypeVo> couponTypeVos = operations.get();
return CartResponseUtil.success(couponTypeVos);
} catch (Exception e) {
ErrorLog.printErrorLog("assortment-shoppingcart-sdk", trackingNo, e.getMessage(), "getTypeCartCouponCode", cartParamDto, e, Level.ERROR);
return null;
}
}
@Override
public BaseResponse<CartGoods> getCartGoods(CartParamDto cartParamDto, String trackingNo) { public BaseResponse<CartGoods> getCartGoods(CartParamDto cartParamDto, String trackingNo) {
try { try {
String redisKey = getShoppingCartGoodsKey(cartParamDto); String redisKey = getShoppingCartGoodsKey(cartParamDto);
...@@ -341,6 +350,10 @@ public class ShoppingCartBaseServiceImpl implements ShoppingCartBaseService { ...@@ -341,6 +350,10 @@ public class ShoppingCartBaseServiceImpl implements ShoppingCartBaseService {
return RedisKeyConstant.SAAS_SHOPPINGCART_COUPON_KEY_PREFIX + cartParamDto.getPartnerId() + "_" + cartParamDto.getStoreId() + "_" + cartParamDto.getUserId() + "_" + cartParamDto.getCouponType(); return RedisKeyConstant.SAAS_SHOPPINGCART_COUPON_KEY_PREFIX + cartParamDto.getPartnerId() + "_" + cartParamDto.getStoreId() + "_" + cartParamDto.getUserId() + "_" + cartParamDto.getCouponType();
} }
private String getShoppingCartTypeCouponCodeKey(CartParamDto cartParamDto) {
return RedisKeyConstant.SAAS_SHOPPINGCART_COUPON_KEY_PREFIX_TYPE + cartParamDto.getPartnerId() + "_" + cartParamDto.getStoreId() + "_" + cartParamDto.getUserId();
}
/** /**
* 获取记录购物车价格的key * 获取记录购物车价格的key
* *
......
...@@ -83,6 +83,10 @@ public class ActivityCalculationDiscountRequestDto { ...@@ -83,6 +83,10 @@ public class ActivityCalculationDiscountRequestDto {
* 活动号 * 活动号
*/ */
private String activityCode; private String activityCode;
/**
* 买卡活动Id
*/
private String payCardActivityId;
} }
@Data @Data
......
...@@ -169,13 +169,22 @@ public class ActivityCalculationDiscountResponseDto { ...@@ -169,13 +169,22 @@ public class ActivityCalculationDiscountResponseDto {
*/ */
private String tenderId; private String tenderId;
/** /**
* 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券 * 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券 7买三赠一券
*/ */
private Integer extendType; private Integer extendType;
private SendPointDto sendPointVo; private SendPointDto sendPointVo;
private Date endTime; private Date endTime;
/**
* 买卡现价
*/
private Integer cardAmount;
/**
* 买卡原价
*/
private Integer cardOriginalPrice;
} }
@Data @Data
......
...@@ -23,7 +23,7 @@ public class ActivityDiscountsDto { ...@@ -23,7 +23,7 @@ public class ActivityDiscountsDto {
private Integer activityType; private Integer activityType;
private String tenderId; private String tenderId;
/** /**
* 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券 * 1-运费券 2-运费月卡券 3-月卡券 4-万能券 5-啡常月享卡 6-通用券 7-买三赠一券
*/ */
private Integer extendType; private Integer extendType;
......
...@@ -133,6 +133,11 @@ public class ShoppingCartGoodsDto { ...@@ -133,6 +133,11 @@ public class ShoppingCartGoodsDto {
private SendPoint sendPoint; private SendPoint sendPoint;
/**
* 麦咖啡-买三赠一券价格
*/
private Long buyThreeGiveOneCouponFee;
@Data @Data
public static class CartGoodsDetailDto { public static class CartGoodsDetailDto {
/** /**
......
package cn.freemud.entities.vo;
import lombok.Data;
@Data
public class CouponTypeVo {
/**
* 券类型 1:买三赠一券
*/
private Integer type;
/**
* 券code
*/
private String code;
}
...@@ -141,4 +141,19 @@ public class ShoppingCartGoodsResponseVo extends ShoppingCartGoodsBaseResponseV ...@@ -141,4 +141,19 @@ public class ShoppingCartGoodsResponseVo extends ShoppingCartGoodsBaseResponseV
*/ */
private Long payCardFee; private Long payCardFee;
/**
* 各类券信息
*/
private List<CouponTypeVo> couponTypeList;
/**
* 麦咖啡-买三赠一券活动号
*/
private String buyThreeGiveOneActivityCode;
/**
* 麦咖啡-买三赠一券默认券号
*/
private String buyThreeGiveOneCouponCode;
} }
...@@ -87,6 +87,31 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo { ...@@ -87,6 +87,31 @@ public class ShoppingCartInfoRequestVo extends BaseRequestVo {
*/ */
private String menuType ; private String menuType ;
/**
* 随单购是否购买月享卡
* 1:不购买,2:月卡续费,3:新购月卡
*/
private String buyMonthlyCard;
/**
* 月享卡卡号
*/
private String monthlyCardCode;
/**
* 各类券信息
*/
private List<CouponTypeVo> couponTypeList;
/**
* 麦咖啡-买三赠一券活动号
*/
private String buyThreeGiveOneActivityCode;
/**
* 麦咖啡-买三赠一券默认券号
*/
private String buyThreeGiveOneCouponCode;
@Data @Data
public final static class SendGoods { public final static class SendGoods {
/** /**
......
...@@ -37,6 +37,11 @@ public class UpdateShoppingCartGoodsQtyRequestVo extends BaseRequestVo { ...@@ -37,6 +37,11 @@ public class UpdateShoppingCartGoodsQtyRequestVo extends BaseRequestVo {
@NotNull(message = "qty不能为空") @NotNull(message = "qty不能为空")
private Integer qty; private Integer qty;
/**
* 更新前商品数量
*/
private Integer oldQty;
private String version; private String version;
/** /**
* 购物车版本号(围餐) * 购物车版本号(围餐)
......
...@@ -32,6 +32,7 @@ public enum ActivityTypeEnum { ...@@ -32,6 +32,7 @@ public enum ActivityTypeEnum {
TYPE_3(3, "代金券"), TYPE_3(3, "代金券"),
TYPE_31(31, "折扣券"), TYPE_31(31, "折扣券"),
TYPE_32(32, "商品券"), TYPE_32(32, "商品券"),
TYPE_35(35, "买三赠一券"),
TYPE_5(5, "整单满金额折"), TYPE_5(5, "整单满金额折"),
TYPE_51(51, "每满金额折"), TYPE_51(51, "每满金额折"),
TYPE_52(52, "阶梯满金额折"), TYPE_52(52, "阶梯满金额折"),
......
...@@ -3,11 +3,10 @@ package cn.freemud.service.impl; ...@@ -3,11 +3,10 @@ package cn.freemud.service.impl;
import ch.qos.logback.classic.Level; import ch.qos.logback.classic.Level;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.vo.CartGoods; import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.CouponTypeVo;
import cn.freemud.entities.vo.ShoppingCartGoodsBaseResponseVo; import cn.freemud.entities.vo.ShoppingCartGoodsBaseResponseVo;
import cn.freemud.enums.ResponseResult; import cn.freemud.enums.ResponseResult;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
import cn.freemud.utils.LogUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare; import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
...@@ -20,10 +19,8 @@ import com.freemud.sdk.api.assortment.shoppingcart.request.GetProductInfoRequest ...@@ -20,10 +19,8 @@ import com.freemud.sdk.api.assortment.shoppingcart.request.GetProductInfoRequest
import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService; import com.freemud.sdk.api.assortment.shoppingcart.service.ShoppingCartBaseService;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.naming.Name;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
...@@ -149,6 +146,25 @@ public class AssortmentSdkService { ...@@ -149,6 +146,25 @@ public class AssortmentSdkService {
} }
/** /**
* 获取用户选择的优惠券列表
*
* @param partnerId
* @param storeId
* @param useId
* @param shoppingCartService
* @return
*/
public List<CouponTypeVo> getTypeCartCouponCode(String partnerId, String storeId, String useId, ShoppingCartBaseService shoppingCartService) {
com.freemud.sdk.api.assortment.shoppingcart.domain.CartParamDto cartParamDto = getCartParamDto(partnerId, storeId, useId);
BaseResponse<List<com.freemud.sdk.api.assortment.shoppingcart.domain.CouponTypeVo>> baseResponse = shoppingCartService.getTypeCartCouponCode(cartParamDto, LogThreadLocal.getTrackingNo());
if (baseResponse == null || !ResponseResult.SUCCESS.getCode().equals(baseResponse.getCode()) || CollectionUtils.isEmpty(baseResponse.getResult())) {
return null;
}
return JSONArray.parseArray(JSONObject.toJSONString(baseResponse.getResult()), CouponTypeVo.class);
}
/**
* 调用聚合sdk设置缓存中购物车信息 * 调用聚合sdk设置缓存中购物车信息
* *
* @param partnerId * @param partnerId
...@@ -190,6 +206,21 @@ public class AssortmentSdkService { ...@@ -190,6 +206,21 @@ public class AssortmentSdkService {
} }
/** /**
* 保存用户选择的优惠券列表
* @param partnerId
* @param storeId
* @param useId
* @param couponTypeList
* @param shoppingCartService
* @return
*/
public void setTypeCartCouponCode(String partnerId, String storeId, String useId, List<CouponTypeVo> couponTypeList , ShoppingCartBaseService shoppingCartService) {
com.freemud.sdk.api.assortment.shoppingcart.domain.CartParamDto cartParamDto = getCartParamDto(partnerId, storeId, useId);
cartParamDto.setCouponTypeList(JSONArray.parseArray(JSONObject.toJSONString(couponTypeList), com.freemud.sdk.api.assortment.shoppingcart.domain.CouponTypeVo.class));
shoppingCartService.setTypeCartCouponCode(cartParamDto, LogThreadLocal.getTrackingNo());
}
/**
* 调用SDK校验购物车 * 调用SDK校验购物车
* *
* @param oldAllCartGoodsList * @param oldAllCartGoodsList
......
...@@ -91,7 +91,7 @@ public class CalculationServiceImpl { ...@@ -91,7 +91,7 @@ public class CalculationServiceImpl {
boolean isMember, String menuType, String receiveId,String couponCode, boolean isMember, String menuType, String receiveId,String couponCode,
List<CartGoods> cartGoodsList, List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons, List<CartGoods> cartGoodsList, List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons,
List<ShoppingCartInfoRequestVo.SendGoods> sendGoodsList, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, List<ShoppingCartInfoRequestVo.SendGoods> sendGoodsList, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,
Long payCardFee) { Long payCardFee, List<String> eliminateGoodsList) {
Long deliveryAmount = calculateDeliveryAmount(receiveId, partnerId, storeId, menuType); Long deliveryAmount = calculateDeliveryAmount(receiveId, partnerId, storeId, menuType);
...@@ -107,13 +107,15 @@ public class CalculationServiceImpl { ...@@ -107,13 +107,15 @@ public class CalculationServiceImpl {
//优惠券 //优惠券
CouponPromotionVO couponPromotionVO = couponDiscountCalculation.getCouponPromotionVO(partnerId, storeId, userId, couponCode, orderType); CouponPromotionVO couponPromotionVO = couponDiscountCalculation.getCouponPromotionVO(partnerId, storeId, userId, couponCode, orderType);
couponDiscountCalculation.updateShoppingCartGoodsDiscount(couponPromotionVO,calculationDiscount,cartGoodsList, shoppingCartGoodsResponseVo); couponDiscountCalculation.updateShoppingCartGoodsDiscount(couponPromotionVO,calculationDiscount,cartGoodsList, shoppingCartGoodsResponseVo,eliminateGoodsList);
//套餐 //套餐
setMealCalculation.updateShoppingCartGoodsDiscount(calculationDiscount,cartGoodsList,shoppingCartGoodsResponseVo); setMealCalculation.updateShoppingCartGoodsDiscount(calculationDiscount,cartGoodsList,shoppingCartGoodsResponseVo);
//加料 //加料
materialCalculation.updateShoppingCartGoodsApportion(calculationDiscount,cartGoodsList); materialCalculation.updateShoppingCartGoodsApportion(calculationDiscount,cartGoodsList);
//买三赠一券
couponDiscountCalculation.updateBuyThreeToOneShoppingCartGoodsDiscount(calculationDiscount, cartGoodsList, shoppingCartGoodsResponseVo);
return calculationDiscount; return calculationDiscount;
} }
...@@ -166,7 +168,8 @@ public class CalculationServiceImpl { ...@@ -166,7 +168,8 @@ public class CalculationServiceImpl {
} }
public void updateShoppingCartGoodsApportion(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult, ShoppingCartGoodsDto shoppingCartGoodsDto, CreateOrderVo.PremiumExchangeActivity premiumExchangeActivity, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo){ public void updateShoppingCartGoodsApportion(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, ActivityCalculationDiscountResponseDto.CalculationDiscountResult calculationDiscountResult,
ShoppingCartGoodsDto shoppingCartGoodsDto, CreateOrderVo.PremiumExchangeActivity premiumExchangeActivity, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo){
List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtoList = CollectionUtils.isEmpty(shoppingCartGoodsDto.getProducts()) ? new ArrayList<>() : shoppingCartGoodsDto.getProducts(); List<ShoppingCartGoodsDto.CartGoodsDetailDto> cartGoodsDetailDtoList = CollectionUtils.isEmpty(shoppingCartGoodsDto.getProducts()) ? new ArrayList<>() : shoppingCartGoodsDto.getProducts();
List<ShareDiscountActivityDto> shareDiscountActivityDtoList = CollectionUtils.isEmpty(shoppingCartGoodsDto.getShareDiscountActivityDtos()) ? new ArrayList<>() : shoppingCartGoodsDto.getShareDiscountActivityDtos(); List<ShareDiscountActivityDto> shareDiscountActivityDtoList = CollectionUtils.isEmpty(shoppingCartGoodsDto.getShareDiscountActivityDtos()) ? new ArrayList<>() : shoppingCartGoodsDto.getShareDiscountActivityDtos();
...@@ -178,7 +181,8 @@ public class CalculationServiceImpl { ...@@ -178,7 +181,8 @@ public class CalculationServiceImpl {
shoppingCartGoodsDto.setTotalDiscountAmount(shoppingCartGoodsResponseVo.getTotalDiscountAmount()); shoppingCartGoodsDto.setTotalDiscountAmount(shoppingCartGoodsResponseVo.getTotalDiscountAmount());
//随单购 月卡价格 //随单购 月卡价格
shoppingCartGoodsDto.setPayCardFee(shoppingCartGoodsResponseVo.getPayCardFee()); shoppingCartGoodsDto.setPayCardFee(shoppingCartGoodsResponseVo.getPayCardFee());
long buyThreeGiveOneCouponFee = calculationDiscountResult.getDiscounts().stream().filter(t -> t.getExtendType() == 7).mapToLong(apportionGoods -> apportionGoods.getCardAmount()).sum();
shoppingCartGoodsDto.setBuyThreeGiveOneCouponFee(buyThreeGiveOneCouponFee);
shoppingCartGoodsDto.setDeliveryAmount(shoppingCartGoodsResponseVo.getDeliveryAmount()); shoppingCartGoodsDto.setDeliveryAmount(shoppingCartGoodsResponseVo.getDeliveryAmount());
shoppingCartGoodsDto.setDiscountDeliveryAmount(shoppingCartGoodsResponseVo.getDiscountDeliveryAmount()); shoppingCartGoodsDto.setDiscountDeliveryAmount(shoppingCartGoodsResponseVo.getDiscountDeliveryAmount());
shoppingCartGoodsDto.setThresholdAmount(shoppingCartGoodsResponseVo.getThresholdAmount()); shoppingCartGoodsDto.setThresholdAmount(shoppingCartGoodsResponseVo.getThresholdAmount());
......
...@@ -133,4 +133,13 @@ public class MCoffeeAddGoodsRequestVo { ...@@ -133,4 +133,13 @@ public class MCoffeeAddGoodsRequestVo {
*/ */
private String groupName; private String groupName;
/**
* 买三赠一券code
*/
private String buyThreeGiveOneCouponCode;
/**
* 买三赠一券活动号
*/
private String buyThreeGiveOneActivityCode;
} }
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