Commit 10b902d5 by zhiheng.zhang

冲突类名修改

parent 8753ca92
...@@ -31,7 +31,7 @@ import java.util.List; ...@@ -31,7 +31,7 @@ import java.util.List;
import java.util.Objects; import java.util.Objects;
@Service @Service
public class DeliveryService { public class DeliveryServiceImpl {
@Autowired @Autowired
private CustomerManager customerManager; private CustomerManager customerManager;
......
...@@ -9,8 +9,6 @@ import cn.freemud.demo.entities.bo.store.GetStoreBO; ...@@ -9,8 +9,6 @@ import cn.freemud.demo.entities.bo.store.GetStoreBO;
import cn.freemud.demo.manager.customer.CustomerManager; import cn.freemud.demo.manager.customer.CustomerManager;
import cn.freemud.demo.manager.product.ProductManager; import cn.freemud.demo.manager.product.ProductManager;
import cn.freemud.demo.manager.store.StoreManager; import cn.freemud.demo.manager.store.StoreManager;
import cn.freemud.demo.service.impl.AbstractAddGoodsService;
import cn.freemud.demo.service.impl.DeliveryService;
import cn.freemud.entities.dto.CheckSpqInfoRequestDto; import cn.freemud.entities.dto.CheckSpqInfoRequestDto;
import cn.freemud.entities.dto.CheckSpqInfoResponseDto; import cn.freemud.entities.dto.CheckSpqInfoResponseDto;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
...@@ -41,7 +39,7 @@ public class PlatformAddGoodsService extends AbstractAddGoodsService { ...@@ -41,7 +39,7 @@ public class PlatformAddGoodsService extends AbstractAddGoodsService {
private ProductManager productManager; private ProductManager productManager;
@Autowired @Autowired
private DeliveryService deliveryService; private DeliveryServiceImpl deliveryService;
@Autowired @Autowired
private CouponService couponService; private CouponService couponService;
......
...@@ -7,15 +7,12 @@ import cn.freemud.demo.entities.bo.goods.*; ...@@ -7,15 +7,12 @@ import cn.freemud.demo.entities.bo.goods.*;
import cn.freemud.demo.entities.bo.promotion.GetCalculationDiscountBO; import cn.freemud.demo.entities.bo.promotion.GetCalculationDiscountBO;
import cn.freemud.demo.entities.bo.store.GetStoreBO; import cn.freemud.demo.entities.bo.store.GetStoreBO;
import cn.freemud.demo.manager.product.ProductManager; import cn.freemud.demo.manager.product.ProductManager;
import cn.freemud.demo.service.impl.AbstractApportionService;
import cn.freemud.demo.service.impl.DeliveryService;
import cn.freemud.entities.dto.CheckSpqInfoRequestDto; import cn.freemud.entities.dto.CheckSpqInfoRequestDto;
import cn.freemud.entities.dto.CheckSpqInfoResponseDto; import cn.freemud.entities.dto.CheckSpqInfoResponseDto;
import cn.freemud.entities.vo.ActivityClassifyCouponBean; import cn.freemud.entities.vo.ActivityClassifyCouponBean;
import cn.freemud.entities.vo.CartGoods; import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo; import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.CouponService; import cn.freemud.service.CouponService;
import cn.freemud.utils.PropertyConvertUtil; import cn.freemud.utils.PropertyConvertUtil;
import com.freemud.application.sdk.api.log.ApiLog; import com.freemud.application.sdk.api.log.ApiLog;
...@@ -44,7 +41,7 @@ public class PlatformApportionService extends AbstractApportionService { ...@@ -44,7 +41,7 @@ public class PlatformApportionService extends AbstractApportionService {
@Autowired @Autowired
private DeliveryService deliveryService; private DeliveryServiceImpl deliveryService;
@Autowired @Autowired
private CouponAdapter couponAdapter; private CouponAdapter couponAdapter;
......
...@@ -11,9 +11,6 @@ import cn.freemud.demo.entities.bo.store.GetStoreBO; ...@@ -11,9 +11,6 @@ import cn.freemud.demo.entities.bo.store.GetStoreBO;
import cn.freemud.demo.manager.customer.CustomerManager; import cn.freemud.demo.manager.customer.CustomerManager;
import cn.freemud.demo.manager.product.ProductManager; import cn.freemud.demo.manager.product.ProductManager;
import cn.freemud.demo.manager.store.StoreManager; import cn.freemud.demo.manager.store.StoreManager;
import cn.freemud.demo.service.impl.AbstractListCartGoodsService;
import cn.freemud.demo.service.impl.DeliveryService;
import cn.freemud.entities.dto.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.dto.CheckSpqInfoRequestDto; import cn.freemud.entities.dto.CheckSpqInfoRequestDto;
import cn.freemud.entities.dto.CheckSpqInfoResponseDto; import cn.freemud.entities.dto.CheckSpqInfoResponseDto;
import cn.freemud.entities.vo.ActivityClassifyCouponBean; import cn.freemud.entities.vo.ActivityClassifyCouponBean;
...@@ -21,7 +18,6 @@ import cn.freemud.entities.vo.CartGoods; ...@@ -21,7 +18,6 @@ import cn.freemud.entities.vo.CartGoods;
import cn.freemud.entities.vo.CouponPromotionVO; import cn.freemud.entities.vo.CouponPromotionVO;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo; import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.CouponService; import cn.freemud.service.CouponService;
import cn.freemud.utils.PropertyConvertUtil; import cn.freemud.utils.PropertyConvertUtil;
import com.freemud.application.sdk.api.log.ApiLog; import com.freemud.application.sdk.api.log.ApiLog;
...@@ -57,7 +53,7 @@ public class PlatformListCartGoodsService extends AbstractListCartGoodsService { ...@@ -57,7 +53,7 @@ public class PlatformListCartGoodsService extends AbstractListCartGoodsService {
@Autowired @Autowired
private DeliveryService deliveryService; private DeliveryServiceImpl deliveryService;
@Autowired @Autowired
private CouponAdapter couponAdapter; private CouponAdapter couponAdapter;
......
...@@ -30,6 +30,7 @@ import cn.freemud.entities.vo.*; ...@@ -30,6 +30,7 @@ import cn.freemud.entities.vo.*;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.*; import cn.freemud.service.*;
import cn.freemud.service.impl.calculate.CalculateCenter;
import cn.freemud.service.impl.calculate.CalculationSharingCartService; import cn.freemud.service.impl.calculate.CalculationSharingCartService;
import cn.freemud.service.impl.calculate.CalculationSharingDiscountService; import cn.freemud.service.impl.calculate.CalculationSharingDiscountService;
import cn.freemud.service.shoppingCart.ShoppingCartRelationFactory; import cn.freemud.service.shoppingCart.ShoppingCartRelationFactory;
...@@ -37,6 +38,7 @@ import cn.freemud.service.shoppingCart.ShoppingCartRelationService; ...@@ -37,6 +38,7 @@ import cn.freemud.service.shoppingCart.ShoppingCartRelationService;
import cn.freemud.service.thirdparty.*; import cn.freemud.service.thirdparty.*;
import cn.freemud.utils.PromotionFactory; import cn.freemud.utils.PromotionFactory;
import cn.freemud.utils.ResponseUtil; import cn.freemud.utils.ResponseUtil;
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.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerStoreDeliveryConfig; import com.freemud.api.assortment.datamanager.entity.db.AssortmentOpenPlatformPartnerStoreDeliveryConfig;
...@@ -62,6 +64,7 @@ import org.apache.commons.lang.ObjectUtils; ...@@ -62,6 +64,7 @@ import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.omg.PortableInterceptor.INACTIVE; import org.omg.PortableInterceptor.INACTIVE;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.*;
...@@ -104,6 +107,9 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -104,6 +107,9 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
private CouponAdapter couponAdapter; private CouponAdapter couponAdapter;
@Autowired @Autowired
private DeliveryFeiginClient deliveryFeiginClient; private DeliveryFeiginClient deliveryFeiginClient;
@Value("${saas.cart.sharing}")
private String sharing;
/** /**
* 从微信卡券向购物车中添加商品 * 从微信卡券向购物车中添加商品
*/ */
...@@ -239,6 +245,10 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -239,6 +245,10 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
updateShoppingCartGoodsQtyRequestVo.setShopId(storeId); updateShoppingCartGoodsQtyRequestVo.setShopId(storeId);
String cartGoodsUid = updateShoppingCartGoodsQtyRequestVo.getCartGoodsUid(); String cartGoodsUid = updateShoppingCartGoodsQtyRequestVo.getCartGoodsUid();
Integer qty = updateShoppingCartGoodsQtyRequestVo.getQty(); Integer qty = updateShoppingCartGoodsQtyRequestVo.getQty();
String receiveId = updateShoppingCartGoodsQtyRequestVo.getReceiveId();
String menuType = updateShoppingCartGoodsQtyRequestVo.getMenuType();
Integer orderType=updateShoppingCartGoodsQtyRequestVo.getOrderType();
// 先验证商品是否存在 // 先验证商品是否存在
CartGoods cartGoods = assortmentSdkService.getCartGoodsBySdk(partnerId, userId, storeId, cartGoodsUid, "", shoppingCartBaseService); CartGoods cartGoods = assortmentSdkService.getCartGoodsBySdk(partnerId, userId, storeId, cartGoodsUid, "", shoppingCartBaseService);
if (cartGoods == null) { if (cartGoods == null) {
...@@ -246,24 +256,55 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -246,24 +256,55 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
} }
// 检查购物车商品库存数量 // 检查购物车商品库存数量
checkUpdateStock(updateShoppingCartGoodsQtyRequestVo, cartGoods); checkUpdateStock(updateShoppingCartGoodsQtyRequestVo, cartGoods);
Integer oldQty = cartGoods.getQty();
// 更新购物车中数量 // 更新购物车中数量
List<CartGoods> cartGoodsList = assortmentSdkService.updateGoodsQtyBySdk(partnerId, userId, storeId, cartGoodsUid, qty, "", shoppingCartBaseService); List<CartGoods> cartGoodsList = assortmentSdkService.updateGoodsQtyBySdk(partnerId, userId, storeId, cartGoodsUid, qty<0?0:qty, "", shoppingCartBaseService);
// check购物车中所有商品 // check购物车中所有商品
CheckCartRequest checkCartRequest = assortmentSdkService.checkShoppingCartSdk(cartGoodsList, partnerId, storeId, shoppingCartGoodsResponseVo, updateShoppingCartGoodsQtyRequestVo.getOrderType(), "", BusinessTypeEnum.SAAS_MALL.getName() ,shoppingCartBaseService); CheckCartRequest checkCartRequest = assortmentSdkService.checkShoppingCartSdk(cartGoodsList, partnerId, storeId, shoppingCartGoodsResponseVo, updateShoppingCartGoodsQtyRequestVo.getOrderType(), "", updateShoppingCartGoodsQtyRequestVo.getMenuType(), shoppingCartBaseService);
if (checkCartRequest.getShoppingCartGoodsResponseVo() != null) { if (checkCartRequest.getShoppingCartGoodsResponseVo() != null) {
shoppingCartGoodsResponseVo.setChanged(checkCartRequest.getShoppingCartGoodsResponseVo().getChanged());
shoppingCartGoodsResponseVo.setToastMsg(checkCartRequest.getShoppingCartGoodsResponseVo().getToastMsg()); shoppingCartGoodsResponseVo.setToastMsg(checkCartRequest.getShoppingCartGoodsResponseVo().getToastMsg());
} }
cartGoodsList = JSONArray.parseArray(JSONObject.toJSONString(checkCartRequest.getCartGoodsList()), CartGoods.class); cartGoodsList = JSONArray.parseArray(JSONObject.toJSONString(checkCartRequest.getCartGoodsList()), CartGoods.class);
// 重新存储最新购物车 // 重新存储最新购物车
assortmentSdkService.setShoppingCart(partnerId, storeId, userId, cartGoodsList, updateShoppingCartGoodsQtyRequestVo.getSessionId(), "", shoppingCartBaseService); assortmentSdkService.setShoppingCart(partnerId, storeId, userId, cartGoodsList, updateShoppingCartGoodsQtyRequestVo.getSessionId(), "", shoppingCartBaseService);
Long deliveryAmount = 0L;
ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, updateShoppingCartGoodsQtyRequestVo.getOrderType());
if (grayPush(partnerId,storeId,"2")) {
CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult = null;
discountResult = sharingDiscountService.getCalculationSharingDiscountResult(menuType
, partnerId
, storeId
, userId
, appId
, orderType
, assortmentCustomerInfoVo.isMemberPaid()
, cartGoodsList
, new ArrayList() //券
, null //加价购商品
, deliveryAmount
, null);
// 促销活动的优惠金额计算 sharingCartService.distribute(discountResult
updateShoppingCartGoodsDiscount(null, null, null, cartGoodsList, shoppingCartGoodsResponseVo, null, userLoginInfoDto); , cartGoodsList
//设置更新响应信息 , shoppingCartGoodsResponseVo
setAddAndUpdateResponse(shoppingCartGoodsResponseVo, cartGoodsList, shoppingCartGoodsResponseVo.getToastMsg()); , null //入参
, userLoginInfoDto
, null //券信息
, activityQueryDto
, menuType
, deliveryAmount
, ShoppingCartConstant.ADD_AND_UPDATE
, partnerId
, null
, userId
, storeId);
buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,null,partnerId);
}
return ResponseUtil.success(shoppingCartGoodsResponseVo); return ResponseUtil.success(shoppingCartGoodsResponseVo);
} }
...@@ -361,7 +402,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -361,7 +402,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
buildCoupons(coupons,shoppingCartInfoRequestVo.getCouponCodes()); buildCoupons(coupons,shoppingCartInfoRequestVo.getCouponCodes());
Long deliveryAmount = calculateDeliveryAmount(partnerId, shoppingCartInfoRequestVo,cartGoodsList); Long deliveryAmount = calculateDeliveryAmount(partnerId, shoppingCartInfoRequestVo.getProvince(),cartGoodsList);
ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, shoppingCartInfoRequestVo.getOrderType()); ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, shoppingCartInfoRequestVo.getOrderType());
...@@ -516,7 +557,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -516,7 +557,7 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
buildCoupons(coupons,shoppingCartInfoRequestVo.getCouponCodes()); buildCoupons(coupons,shoppingCartInfoRequestVo.getCouponCodes());
Long deliveryAmount = calculateDeliveryAmount(partnerId, shoppingCartInfoRequestVo,cartGoodsList); Long deliveryAmount = calculateDeliveryAmount(partnerId, shoppingCartInfoRequestVo.getProvince(),cartGoodsList);
ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, shoppingCartInfoRequestVo.getOrderType()); ActivityQueryDto activityQueryDto = activityAdapter.getActivityQueryDto(partnerId, storeId, userId, appId, shoppingCartInfoRequestVo.getOrderType());
...@@ -890,20 +931,20 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -890,20 +931,20 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
return oldCoupons; return oldCoupons;
} }
public Long calculateDeliveryAmount(String partnerId,ShoppingCartInfoRequestVo shoppingCartInfoRequestVo,List<CartGoods> cartGoodsList) { public Long calculateDeliveryAmount(String partnerId,String province,List<CartGoods> cartGoodsList) {
Long deliveryAmount = 0L; Long deliveryAmount = 0L;
//区code 为空则运费为0 //区code 为空则运费为0
if (StringUtils.isBlank(shoppingCartInfoRequestVo.getProvince())) { if (StringUtils.isBlank(province)) {
return deliveryAmount; return deliveryAmount;
} }
log.info("获取配送配逻辑 tackingNo:{},partnerId:{},province", LogThreadLocal.getTrackingNo(), shoppingCartInfoRequestVo.getPartnerId(),shoppingCartInfoRequestVo.getProvince()); log.info("获取配送配逻辑 tackingNo:{},partnerId:{},province", LogThreadLocal.getTrackingNo(), partnerId,province);
Long orderAmount = 0L ; Long orderAmount = 0L ;
Integer orderCount = 0; Integer orderCount = 0;
if(null != cartGoodsList && cartGoodsList.size()>0){ if(null != cartGoodsList && cartGoodsList.size()>0){
orderAmount = cartGoodsList.stream().mapToLong(CartGoods::getAmount).sum(); orderAmount = cartGoodsList.stream().mapToLong(CartGoods::getAmount).sum();
orderCount = cartGoodsList.stream().mapToInt(CartGoods::getQty).sum(); orderCount = cartGoodsList.stream().mapToInt(CartGoods::getQty).sum();
} }
QueryDeliveryTemplateRequestVo requestVo = new QueryDeliveryTemplateRequestVo(partnerId, shoppingCartInfoRequestVo.getProvince(),Integer.valueOf(orderAmount.toString()),orderCount); QueryDeliveryTemplateRequestVo requestVo = new QueryDeliveryTemplateRequestVo(partnerId, province,Integer.valueOf(orderAmount.toString()),orderCount);
QueryDeliveryTemplateResponseVo queryDeliveryTemplateResponseVo = deliveryFeiginClient.queryDeliveryTemplate(requestVo); QueryDeliveryTemplateResponseVo queryDeliveryTemplateResponseVo = deliveryFeiginClient.queryDeliveryTemplate(requestVo);
if (!ResponseResult.SUCCESS.getCode().equals(queryDeliveryTemplateResponseVo.getCode().toString()) || queryDeliveryTemplateResponseVo.getData() == null) { if (!ResponseResult.SUCCESS.getCode().equals(queryDeliveryTemplateResponseVo.getCode().toString()) || queryDeliveryTemplateResponseVo.getData() == null) {
throw new ServiceException(ResponseResult.SHOPPING_CART_QUERY_DELIVERY_TEMPLATE_ERR); throw new ServiceException(ResponseResult.SHOPPING_CART_QUERY_DELIVERY_TEMPLATE_ERR);
...@@ -915,4 +956,37 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService { ...@@ -915,4 +956,37 @@ public class ShoppingCartMallServiceImpl implements ShoppingCartNewService {
return deliveryAmount; return deliveryAmount;
} }
/**
* @param partnerId
* @param storeId
* @return
*/
public boolean grayPush(String partnerId, String storeId, String version) {
if (StringUtils.isBlank(sharing)) return false;
CalculateCenter center = JSON.parseObject(sharing, CalculateCenter.class);
Boolean enable = false;
if (!center.getEnable()) return false;
switch (center.getType()) {
case 2:
enable = true;
break;
case 1: {
//商户+门店级别
String real = partnerId.concat(storeId);
if (Arrays.asList(center.getGrayList().split(",")).contains(real)) {
enable = true;
}
//商户级别
else if (Arrays.asList(center.getGrayList().split(",")).contains(partnerId)) {
enable = true;
}
}
}
if (center.getEnable() && enable) {
enable = true;
}
return enable;
}
} }
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