Commit 0732b50b by ping.wu

Merge branches 'feature/20211220_购物车活动互斥提示_wuping' and 'qa' of…

Merge branches 'feature/20211220_购物车活动互斥提示_wuping' and 'qa' of http://gitlab.freemud.com/order-group-application/order-group into qa

# Conflicts:
#	shopping-cart-application-service/src/main/java/cn/freemud/factory/AbstractShoppingCartImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartMallServiceImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/ShoppingCartNewServiceImpl.java
#	shopping-cart-application-service/src/main/java/cn/freemud/service/impl/calculate/CalculationSharingCartService.java
parents 50b5943d e434b10d
......@@ -104,9 +104,6 @@ public abstract class CheckOrderUniversal {
@Autowired
private ItemServiceImpl itemService;
// 配送费逻辑是否使用旧的
@Value("${store.delivery.use.old}")
private boolean storeDeliveryUseOld;
@Value("${coco.partnerId}")
private String cocoPartnerId;
......@@ -447,11 +444,7 @@ public abstract class CheckOrderUniversal {
}
//获取门店配送信息
StoreDeliveryInfoDto storeDeliveryInfoDto;
if (storeDeliveryUseOld) {
storeDeliveryInfoDto = getStoreDeliveryInfo(storeResponseDto, config, appId);
} else {
storeDeliveryInfoDto = getNewStoreDeliveryInfo(storeResponseDto, config, appId, LogThreadLocal.getTrackingNo());
}
//coco自配送提前45分钟,禁止下单
if (cocoPartnerId.equals(createOrderVo.getPartnerId()) &&
CreateOrderType.TAKE_OUT.getCode().equals(createOrderVo.getOrderType()) &&
......
......@@ -49,9 +49,6 @@ public class DeliveryServiceImpl {
@Autowired
private DeliveryFeiginClient deliveryFeiginClient;
// 配送费逻辑是否使用旧的
@Value("${store.delivery.use.old:true}")
private boolean storeDeliveryUseOld;
public Long calculateDeliveryAmount(String receiveId, String partnerId, String storeId, Integer orderType, ManagerServiceBO managerServiceBO) {
Long deliveryAmount = 0L;
......@@ -60,11 +57,7 @@ public class DeliveryServiceImpl {
if (StringUtils.isBlank(receiveId) && !Objects.equals(orderType, CreateOrderType.TAKE_OUT.getCode())) {
return deliveryAmount;
}
if (storeDeliveryUseOld) {
deliveryAmount = Long.parseLong(getDeliveryAmount(receiveId, partnerId, storeId, managerServiceBO).toString());
} else {
deliveryAmount = getNewDeliveryAmount(receiveId, partnerId, storeId, orderType);
}
deliveryAmount = getNewDeliveryAmount(receiveId, partnerId, storeId, orderType);
return deliveryAmount;
}
......
package cn.freemud.entities.dto.calculate;
import lombok.Data;
import java.util.List;
@Data
public class BlockRow {
private Integer discountAmount;
private List<BlockRowDiscount> discounts;
private String goodsId;
private Integer goodsQuantity;
private Integer originalPrice;
private Integer realAmount;
private Integer type;
}
package cn.freemud.entities.dto.calculate;
import lombok.Data;
@Data
public class BlockRowDiscount {
private String activityCode;
private String activityDesc;
private String activityName;
private Integer actualGoodsNumber;
private Long discount;
private String goodsId;
private Integer type;
}
......@@ -101,7 +101,7 @@ public class CalculationDiscountResult {
*/
private Long payCardFee;
/**
* 月享卡2.0优惠
* 麦咖啡,月享卡2.0优惠
*/
private MonthCardDiscount monthlyEnjoyCardDiscount;
......@@ -113,4 +113,9 @@ public class CalculationDiscountResult {
//是否是v3版本算价
private Boolean v3Promotion = false;
/**
* 被互斥掉的活动集合
*/
private List<ExclusiveActivity> exclusiveActivityList;
}
......@@ -18,4 +18,7 @@ public class CouponResults {
private String activityName;
//是否与促销活动共享 0不同享 1同享
private Integer promotionSharing;
}
......@@ -70,4 +70,7 @@ public class Discount {
*/
private Integer priority;
//是否与促销活动共享 0不同享 1同享
private Integer promotionSharing;
}
package cn.freemud.entities.dto.calculate;
import cn.freemud.entities.dto.UserLoginInfoDto;
import cn.freemud.entities.dto.activity.ActivityQueryDto;
import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.CouponPromotionVO;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import lombok.Data;
import java.util.List;
@Data
public class DistributeBo {
private CalculationDiscountResult discountResult;
private List<CartGoods> cartGoodsList;
private ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo;
private ShoppingCartInfoRequestVo shoppingCartInfoRequestVo;
private UserLoginInfoDto userLoginInfoDto;
private CouponPromotionVO couponPromotionVO;
private ActivityQueryDto activityQueryDto;
private String menuType;
private Long deliveryAmount;
private String opt;
private String partnerId;
private Integer flag;
private String userId;
private String storeId;
private Boolean hasCoupon = false;
public DistributeBo() {
}
public DistributeBo(CalculationDiscountResult discountResult, List<CartGoods> cartGoodsList, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo, UserLoginInfoDto userLoginInfoDto, CouponPromotionVO couponPromotionVO, ActivityQueryDto activityQueryDto, String menuType, Long deliveryAmount, String opt, String partnerId, Integer flag, String userId, String storeId) {
this.discountResult = discountResult;
this.cartGoodsList = cartGoodsList;
this.shoppingCartGoodsResponseVo = shoppingCartGoodsResponseVo;
this.shoppingCartInfoRequestVo = shoppingCartInfoRequestVo;
this.userLoginInfoDto = userLoginInfoDto;
this.couponPromotionVO = couponPromotionVO;
this.activityQueryDto = activityQueryDto;
this.menuType = menuType;
this.deliveryAmount = deliveryAmount;
this.opt = opt;
this.partnerId = partnerId;
this.flag = flag;
this.userId = userId;
this.storeId = storeId;
}
}
package cn.freemud.entities.dto.calculate;
import lombok.Data;
@Data
public class ExclusiveActivity {
private Integer activityType;
private String activityCode;
private String activityName;
private String activityTypeName;
}
package cn.freemud.entities.dto.shoppingCart;
import lombok.Data;
@Data
public class ActivityMutexConfig {
//活动互斥 1=开启 0=关闭
private String activityMutex;
//优惠券与活动互斥 1=开启 0=关闭
// private String couponactivityMutex;
}
......@@ -13,6 +13,7 @@ package cn.freemud.enums;
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
public enum ActivityTypeEnum {
TYPE_0(0, "其他"),
TYPE_1(1, "整单满减"),
TYPE_11(11, "每满减"),
TYPE_12(12, "阶梯满减"),
......@@ -97,4 +98,14 @@ public enum ActivityTypeEnum {
public void setDesc(String desc) {
this.desc = desc;
}
public static ActivityTypeEnum getByCode(Integer code) {
for (ActivityTypeEnum type : values()) {
if (type.getCode().equals(code)) {
return type;
}
}
return ActivityTypeEnum.TYPE_0;
}
}
......@@ -102,9 +102,6 @@ public abstract class AbstractShoppingCartImpl implements ShoppingCartNewService
private AssortmentSdkService assortmentSdkService;
@Autowired
private AssortmentCustomerInfoManager customerInfoManager;
// 配送费逻辑是否使用旧的
@Value("${store.delivery.use.old:true}")
private boolean storeDeliveryUseOld;
/**
* 根据sessionId获取用户信息
......@@ -211,12 +208,7 @@ public abstract class AbstractShoppingCartImpl implements ShoppingCartNewService
if (StringUtils.isBlank(receiveId)) {
return deliveryAmount;
}
if (storeDeliveryUseOld) {
deliveryAmount = Long.parseLong(getDeliveryAmount(receiveId, partnerId, storeId).toString());
shoppingCartGoodsResponseVo.setDeliveryFeeZeroReason(0);
} else {
deliveryAmount = getNewDeliveryAmount(receiveId, partnerId, storeId, shoppingCartGoodsResponseVo);
}
return deliveryAmount;
}
......@@ -338,16 +330,11 @@ public abstract class AbstractShoppingCartImpl implements ShoppingCartNewService
, List<CartGoods> cartGoodsList, List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons
, List<ShoppingCartInfoRequestVo.SendGoods> sendGoodsList, String receiveId, Long deliveryAmount, long nightDistributionFee){
// 获取优惠信息
CalculationDiscountResult calculationDiscountResult=null;
//外卖场景下 查询门店配送信息
if(BusinessTypeEnum.SAAS_DELIVERY.getCode().equals(menuType)){
calculationDiscountResult = this.getActivityCalculationDiscountResponse(partnerId, storeId, userId, appId, orderType,isMember, cartGoodsList, coupons, sendGoodsList,BusinessTypeEnum.getByType(menuType).getCode(),deliveryAmount,null, null, nightDistributionFee);
}else{
calculationDiscountResult = this.getActivityCalculationDiscountResponse(partnerId, storeId, userId, appId, orderType,isMember, cartGoodsList, coupons, sendGoodsList,BusinessTypeEnum.getByType(menuType).getCode(),null,null, null,0L);
if(!BusinessTypeEnum.SAAS_DELIVERY.getCode().equals(menuType)){
deliveryAmount = null;
nightDistributionFee = 0;
}
return calculationDiscountResult;
return this.getActivityCalculationDiscountResponse(partnerId, storeId, userId, appId, orderType,isMember, cartGoodsList, coupons, sendGoodsList,BusinessTypeEnum.getByType(menuType).getCode(),deliveryAmount,null, null, nightDistributionFee);
}
......
......@@ -26,6 +26,7 @@ import cn.freemud.entities.dto.activity.ActivityQueryDto;
import cn.freemud.entities.dto.activity.DiscountSharingDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto;
import cn.freemud.entities.dto.calculate.CalculationDiscountResult;
import cn.freemud.entities.dto.calculate.DistributeBo;
import cn.freemud.entities.dto.delivery.DeliveryFeeInfo;
import cn.freemud.entities.dto.product.CheckCartRequest;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
......@@ -196,7 +197,9 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
CalculationDiscountResult discountResult = null;
discountResult = sharingDiscountService.getCalculationSharingDiscountResult(menuType, partnerId, storeId, userId, appId, orderType, assortmentCustomerInfoVo.isMemberPaid(), allCartGoodsList, new ArrayList<>(), null, deliveryAmount, null,null, accountType,new DiscountSharingDto(),0L);
sharingCartService.distribute(discountResult, allCartGoodsList, shoppingCartGoodsResponseVo, null, null, null, activityQueryDto, menuType, deliveryAmount, ShoppingCartConstant.ADD_AND_UPDATE, partnerId, null, userId, storeId,0L);
DistributeBo distributeBo = new DistributeBo(discountResult, allCartGoodsList, shoppingCartGoodsResponseVo, null, null, null, activityQueryDto, menuType, deliveryAmount, ShoppingCartConstant.ADD_AND_UPDATE, partnerId, null, userId, storeId,0L);
sharingCartService.distribute(distributeBo);
buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,null,partnerId);
......@@ -292,7 +295,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, deliveryAmount
, null,null, accountFlag,new DiscountSharingDto(),0L);
sharingCartService.distribute(discountResult
DistributeBo distributeBo = new DistributeBo(discountResult
, cartGoodsList
, shoppingCartGoodsResponseVo
, null //入参
......@@ -307,6 +310,8 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, userId
, storeId,0L);
sharingCartService.distribute(distributeBo);
buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,null,partnerId);
return ResponseUtil.success(shoppingCartGoodsResponseVo);
......@@ -450,7 +455,8 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
, sendGoods
, deliveryAmount
, null,null, accountFlag,new DiscountSharingDto(),0L);
sharingCartService.distribute(calculationSharingDiscountResult
DistributeBo distributeBo = new DistributeBo(calculationSharingDiscountResult
, cartGoodsList
, shoppingCartGoodsResponseVo
, shoppingCartInfoRequestVo
......@@ -464,6 +470,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
,shoppingCartInfoRequestVo.getFlag()
, userId
, storeId,0L);
sharingCartService.distribute(distributeBo);
buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,calculationSharingDiscountResult,shoppingCartInfoRequestVo.getFlag(),partnerId);
......
......@@ -9,16 +9,18 @@ import cn.freemud.entities.dto.GetPaidRuleResponseDto;
import cn.freemud.entities.dto.activity.ActivityDiscountsDto;
import cn.freemud.entities.dto.calculate.*;
import cn.freemud.entities.dto.order.PackAmountConfig;
import cn.freemud.entities.dto.shoppingCart.ActivityMutexConfig;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.enums.*;
import cn.freemud.handle.CommonFunctionHandle;
import cn.freemud.redis.RedisCache;
import cn.freemud.service.thirdparty.CustomerApplicationClient;
import cn.freemud.utils.BeanUtil;
import lombok.Data;
import lombok.NoArgsConstructor;
import cn.freemud.utils.RedisUtil;
import com.alibaba.fastjson.JSONObject;
import ma.glasnost.orika.MapperFacade;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
......@@ -63,6 +65,9 @@ public class CalculationCommonService {
@Autowired
private CommonFunctionHandle commonFunctionHandle;
@Autowired
private RedisCache redisCache;
/**
* 初始化价格 新算价走了
*/
......@@ -291,6 +296,9 @@ public class CalculationCommonService {
shoppingCartGoodsResponseVo.setToastMsg(CollectionUtils.isEmpty(cartGoodsList) ? toastMsg : "");
}
}
// 更新和添加商品时不需要包装费
if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) {
shoppingCartGoodsResponseVo.setNewPackAmount(null);
......@@ -619,10 +627,10 @@ public class CalculationCommonService {
* @param discounts
* @return
*/
private List<ActivityDiscountsDto> drawSmallDiscount(List<Discounts> discounts) {
private List<ActivityDiscountsDto> drawSmallDiscount(List<BlockRowDiscount> discounts) {
List<ActivityDiscountsDto> activityDiscountsDto = new ArrayList<>();
if (CollectionUtils.isEmpty(discounts)) return activityDiscountsDto;
for (Discounts discount : discounts) {
for (BlockRowDiscount discount : discounts) {
ActivityDiscountsDto dto = new ActivityDiscountsDto();
dto.setActivityName(discount.getActivityName());
dto.setActivityType(discount.getType());
......@@ -658,10 +666,10 @@ public class CalculationCommonService {
blockRow.setGoodsQuantity(gx.getGoodsQuantity());
blockRow.setOriginalPrice(gx.getOriginalPrice());
blockRow.setRealAmount(gx.getRealAmount());
List<Discounts> discounts = new ArrayList<>();
List<BlockRowDiscount> discounts = new ArrayList<>();
if (CollectionUtils.isNotEmpty(gx.getDiscounts())) {
for (GoodsDiscount ds : gx.getDiscounts()) {
Discounts discount = new Discounts();
BlockRowDiscount discount = new BlockRowDiscount();
discount.setActivityCode(ds.getActivityCode());
discount.setActivityDesc(ds.getActivityDesc());
discount.setActivityName(ds.getActivityName());
......@@ -689,10 +697,10 @@ public class CalculationCommonService {
blockRow.setGoodsQuantity(sm.getGoodsQuantity());
blockRow.setOriginalPrice(sm.getOriginalPrice());
blockRow.setRealAmount(sm.getRealAmount());
List<Discounts> discounts = new ArrayList<>();
List<BlockRowDiscount> discounts = new ArrayList<>();
if (CollectionUtils.isNotEmpty(sm.getDiscounts())) {
for (GoodsDiscount ds : sm.getDiscounts()) {
Discounts discount = new Discounts();
BlockRowDiscount discount = new BlockRowDiscount();
discount.setActivityCode(ds.getActivityCode());
discount.setActivityDesc(ds.getActivityDesc());
discount.setActivityName(ds.getActivityName());
......@@ -775,27 +783,62 @@ public class CalculationCommonService {
return code;
}
@Data
@NoArgsConstructor
public static class BlockRow {
private Integer discountAmount;
private List<Discounts> discounts;
private String goodsId;
private Integer goodsQuantity;
private Integer originalPrice;
private Integer realAmount;
private Integer type;
}
@Data
@NoArgsConstructor
public static class Discounts {
private String activityCode;
private String activityDesc;
private String activityName;
private Integer actualGoodsNumber;
private Long discount;
private String goodsId;
private Integer type;
/**
* 活动互斥提示
*/
public void setActivityMutexToastMsg(CalculationDiscountResult calculationDiscountResult,Integer flag,String partnerId,String appid,
boolean hasCoupon,boolean addOrUpdate,ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo){
String toastMsg = "";
if(calculationDiscountResult == null || CollectionUtils.isEmpty(calculationDiscountResult.getExclusiveActivityList())){
return;
}
//优惠互斥提示开关
String redisKey = RedisUtil.activityMutexKey + partnerId + "_" + appid;
//购物车内部缓存
String value = redisCache.hashGet(redisKey, "activityMutexType");
if (StringUtils.isNotBlank(value)) {
return;
}
ActivityMutexConfig config = JSONObject.parseObject(value,ActivityMutexConfig.class);
if("0".equals(config.getActivityMutex())){
return;
}
//点餐页 添加购物车/更新购物车,(活动与活动互斥,活动与优惠券互斥)
if(ObjectUtils.equals(SubmitPageEnum.NO.getCode(), flag) && addOrUpdate && "1".equals(config.getActivityMutex())){
if(CollectionUtils.isNotEmpty(calculationDiscountResult.getCouponDiscounts())
&& calculationDiscountResult.getCouponDiscounts().get(0).getPromotionSharing() == 1){//是否与促销活动共享 0不同享 1同享
if(calculationDiscountResult.getExclusiveActivityList().size() >1 ){
toastMsg = "多个促销活动不同享 活动商品优惠发生变化";
}else {
toastMsg = "优惠券与其他促销活动不同享 活动商品优惠发生变化";
}
}
if(CollectionUtils.isNotEmpty(calculationDiscountResult.getDiscounts())){
if(calculationDiscountResult.getExclusiveActivityList().size() >1 ){
toastMsg = "多个促销活动不同享 活动商品优惠发生变化";
}else {
String activityName = calculationDiscountResult.getExclusiveActivityList().get(0).getActivityTypeName();
Integer type = calculationDiscountResult.getDiscounts().get(0).getType();
String name = ActivityTypeEnum.getByCode(type).getDesc();
toastMsg = name +"与"+ activityName + "活动不同享 活动商品优惠发生变化";
}
}
}
//结算页查询购物车 带优惠券 (优惠券与活动互斥)
// if(ObjectUtils.equals(SubmitPageEnum.YES.getCode(), flag) && hasCoupon && "1".equals(config.getCouponactivityMutex())){
// toastMsg = "优惠券与其他促销活动不同享 活动商品优惠发生变化";
// }
if(StringUtils.isNotEmpty(toastMsg) && StringUtils.isEmpty(shoppingCartGoodsResponseVo.getToastMsg())){
shoppingCartGoodsResponseVo.setToastMsg(toastMsg);
}
}
}
\ No newline at end of file
......@@ -4,6 +4,7 @@ import cn.freemud.constant.ShoppingCartConstant;
import cn.freemud.entities.dto.UserLoginInfoDto;
import cn.freemud.entities.dto.activity.ActivityQueryDto;
import cn.freemud.entities.dto.calculate.CalculationDiscountResult;
import cn.freemud.entities.dto.calculate.DistributeBo;
import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.CouponPromotionVO;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
......@@ -55,20 +56,24 @@ public class CalculationSharingCartService {
/**
* 响应购物车价格计算依赖促销
*/
public void distribute(CalculationDiscountResult discountResult
, List<CartGoods> cartGoodsList
, ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo
, ShoppingCartInfoRequestVo shoppingCartInfoRequestVo
, UserLoginInfoDto userLoginInfoDto
, CouponPromotionVO couponPromotionVO
, ActivityQueryDto activityQueryDto
, String menuType
, Long deliveryAmount
, String opt
, String partnerId
, Integer flag
, String userId
, String storeId, long nightDistributionFee) {
public void distribute(DistributeBo distributeBo) {
CalculationDiscountResult discountResult = distributeBo.getDiscountResult();
List<CartGoods> cartGoodsList = distributeBo.getCartGoodsList();
ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo = distributeBo.getShoppingCartGoodsResponseVo();
ShoppingCartInfoRequestVo shoppingCartInfoRequestVo = distributeBo.getShoppingCartInfoRequestVo();
UserLoginInfoDto userLoginInfoDto = distributeBo.getUserLoginInfoDto();
CouponPromotionVO couponPromotionVO = distributeBo.getCouponPromotionVO();
ActivityQueryDto activityQueryDto = distributeBo.getActivityQueryDto();
String menuType = distributeBo.getMenuType();
Long deliveryAmount = distributeBo.getDeliveryAmount();
String opt = distributeBo.getOpt();
String partnerId = distributeBo.getPartnerId();
Integer flag = distributeBo.getFlag();
String userId = distributeBo.getUserId();
String storeId = distributeBo.getStoreId();
long nightDistributionFee =distributeBo.getNightDistributionFee();
boolean hasCoupon = distributeBo.getHasCoupon();
/**
* 用促销价格初始化购物车行记录成交价
......@@ -109,22 +114,28 @@ public class CalculationSharingCartService {
deliverySharingService.deliveryResponse(discountResult, activityQueryDto, shoppingCartGoodsResponseVo, deliveryAmount, nightDistributionFee);
}
// if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) {
// calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE);
// } else if (ShoppingCartConstant.QUERY_INFO.equals(opt)) {
// calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.QUERY_INFO);
// calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
// }
/**
* 特价类型超出部分提示
* 买一赠一寄杯(coco)
*/
buyOneGiveOneSendService.giftResponse(discountResult, cartGoodsList, shoppingCartInfoRequestVo, activityQueryDto,shoppingCartGoodsResponseVo);
/** ---------------------------------------- 上面为活动处理 ------------------------------------------ **/
//特价类型超出部分提示
calculationCommonService.drawSurpassDiscountInfo(discountResult, shoppingCartGoodsResponseVo);
if (ShoppingCartConstant.ADD_AND_UPDATE.equals(opt)) {
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.ADD_AND_UPDATE);
} else if (ShoppingCartConstant.QUERY_INFO.equals(opt)) {
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.QUERY_INFO);
calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
}
/**
* 买一赠一寄杯
*/
buyOneGiveOneSendService.giftResponse(discountResult, cartGoodsList, shoppingCartInfoRequestVo, activityQueryDto,shoppingCartGoodsResponseVo);
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, opt);
//活动互斥提示
calculationCommonService.setActivityMutexToastMsg(discountResult, flag, partnerId, userLoginInfoDto.getWxAppid(),
hasCoupon, ShoppingCartConstant.ADD_AND_UPDATE.equals(opt), shoppingCartGoodsResponseVo);
}
}
......@@ -152,7 +152,7 @@ public class CalculationSharingEquallyService {
}
calculationCommonService.setAddAndUpdateResponse(cartGoodsList, shoppingCartGoodsResponseVo, shoppingCartInfoRequestVo, ShoppingCartConstant.QUERY_INFO);
calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
// calculationCommonService.addNeedCardAmount(shoppingCartInfoRequestVo, shoppingCartGoodsResponseVo);
if (discountResult!=null && discountResult.getSendPointVo()!=null) {
shoppingCartGoodsDto.setSendPoint(discountResult.getSendPointVo());
}
......
......@@ -163,7 +163,7 @@ public class CalculationServiceImpl {
// fix npe 麦咖啡加车没有orderType,这里判断一下orderType
discountRequest.setProductChannel((null != orderType && orderType == 1) ? "saasdelivery" : "saas");
// try {
ActivityCalculationDiscountResponseDto activityCalculationDiscountResponseDto = activityClient.calculationDiscountSharing(discountRequest);
ActivityCalculationDiscountResponseDto activityCalculationDiscountResponseDto = activityClient.MCoffeeCalculationDiscountSharing(discountRequest);
// } catch (Exception ex) {
// throw new ServiceException(ResponseResult.OPERATE_TOO_OFTEN);
// }
......
......@@ -60,13 +60,14 @@ public interface ActivityClient {
ActivityCalculationDiscountResponseDto calculationDiscount(ActivityCalculationDiscountRequestDto activityCalculationDiscountRequestDto);
/**
* 新版优惠均摊计算
* 麦咖啡 优惠均摊计算接口(商户不合作,废弃)
* @param activityCalculationDiscountRequestDto
* @return
*/
@Deprecated
@PostMapping("/calculation/discount/sharing")
@IgnoreFeignLogAnnotation(logMessage = "calculationDiscountSharing",excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MSG)
ActivityCalculationDiscountResponseDto calculationDiscountSharing(ActivityCalculationDiscountRequestDto activityCalculationDiscountRequestDto);
ActivityCalculationDiscountResponseDto MCoffeeCalculationDiscountSharing(ActivityCalculationDiscountRequestDto activityCalculationDiscountRequestDto);
/**
......
......@@ -7,6 +7,7 @@ public class RedisUtil {
private final static String COUPON_APP_SECRET = "coupon:app_secret_";
public static String limitCart = "kgd:open_store_cart_limit_";
public static String packAmountConfig = "kgd:order_pack_config_";
public static String activityMutexKey = "kgd:order_activity_mutex_";
public static String getEnterShopKey(String userId) {
return ENTER_SHOP_KEY + userId;
......
......@@ -272,7 +272,6 @@ order.download.baseUrl = http://shared-order-es-shared-order-service-env-dev.api
order.download.appName = orderCenter
order.download.connectTimeOut = 10000
saas.order.invoice.report.partnerIds = 2399
store.delivery.use.old = false
#rocketmq.producer.config
......
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