Commit 5b1f2b6f by 刘鹏飞

Merge remote-tracking branch 'remotes/origin/feature/coco-payGift-刘鹏飞' into qa

# Conflicts:
#	order-application-service/src/main/java/cn/freemud/adapter/OrderAdapter.java
#	order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
parents a11c56e8 372399fe
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.2.12-SNAPSHOT</version> <version>2.2.16-SNAPSHOT</version>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
......
...@@ -2852,6 +2852,9 @@ public class OrderSdkAdapter { ...@@ -2852,6 +2852,9 @@ public class OrderSdkAdapter {
//if (product.getStapleFood()!=null && product.getStapleFood()>0) { //if (product.getStapleFood()!=null && product.getStapleFood()>0) {
// extInfo.setStapleFood(1); // extInfo.setStapleFood(1);
//} //}
extInfo.setOriginalGoodsUid(product.getOriginalGoodsUid());
extInfo.setCartGoodsUid(product.getCartGoodsUid());
// todo 订单行扩展字段商品组 // todo 订单行扩展字段商品组
extInfo.setProductGroupList(product.getProductGroupList()); extInfo.setProductGroupList(product.getProductGroupList());
......
...@@ -204,4 +204,14 @@ public class CreateOrderProductRequest extends BaseConfig { ...@@ -204,4 +204,14 @@ public class CreateOrderProductRequest extends BaseConfig {
private List<String> specialCodes; private List<String> specialCodes;
private List<OrderSpecialExtraAttrRequest> specialAttrs; private List<OrderSpecialExtraAttrRequest> specialAttrs;
/**
* 购物车行uid
*/
private String cartGoodsUid;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String originalGoodsUid;
} }
...@@ -74,4 +74,14 @@ public class OrderProductAddInfoDto extends BaseConfig { ...@@ -74,4 +74,14 @@ public class OrderProductAddInfoDto extends BaseConfig {
private List<String> specialCodes; private List<String> specialCodes;
private List<OrderSpecialExtraAttrRequest> specialAttrs; private List<OrderSpecialExtraAttrRequest> specialAttrs;
/**
* 购物车行uid
*/
private String cartGoodsUid;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String originalGoodsUid;
} }
...@@ -606,6 +606,16 @@ public class QueryOrdersResponse { ...@@ -606,6 +606,16 @@ public class QueryOrdersResponse {
*/ */
public List<ProductBean> materialProduct; public List<ProductBean> materialProduct;
/**
* 购物车行uid
*/
private String cartGoodsUid;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String originalGoodsUid;
@NoArgsConstructor @NoArgsConstructor
@Data @Data
public static class ProductDiscount { public static class ProductDiscount {
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.2.15-SNAPSHOT</version> <version>2.2.16-SNAPSHOT</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -2086,6 +2086,11 @@ public class OrderAdapter { ...@@ -2086,6 +2086,11 @@ public class OrderAdapter {
} }
productVo.setInventedParentActivitiesVo(inventedParentActivityVos); productVo.setInventedParentActivitiesVo(inventedParentActivityVos);
} }
// 购物车行id
productVo.setCid(orderProductAddInfoDto.getCartGoodsUid());
// 购物车行父id
productVo.setOcid(orderProductAddInfoDto.getOriginalGoodsUid());
} }
productVo.setOriginalPrice(productBean.getPrice()); productVo.setOriginalPrice(productBean.getPrice());
productVo.setFinalPrice(productBean.getSalePrice()); productVo.setFinalPrice(productBean.getSalePrice());
...@@ -2454,6 +2459,9 @@ public class OrderAdapter { ...@@ -2454,6 +2459,9 @@ public class OrderAdapter {
createOrderProductDemoDto.setNickName(cartGoodsDetailDto.getUserName()); createOrderProductDemoDto.setNickName(cartGoodsDetailDto.getUserName());
createOrderProductDemoDto.setPhotoUrl(cartGoodsDetailDto.getPhotoUrl()); createOrderProductDemoDto.setPhotoUrl(cartGoodsDetailDto.getPhotoUrl());
createOrderProductDemoDto.setPackPrice(cartGoodsDetailDto.getPackPrice()); createOrderProductDemoDto.setPackPrice(cartGoodsDetailDto.getPackPrice());
createOrderProductDemoDto.setCartGoodsUid(cartGoodsDetailDto.getCartGoodsUid());
createOrderProductDemoDto.setOriginalGoodsUid(cartGoodsDetailDto.getOriginalGoodsUid());
return createOrderProductDemoDto; return createOrderProductDemoDto;
} }
......
...@@ -268,6 +268,12 @@ public class ShoppingCartGoodsDto { ...@@ -268,6 +268,12 @@ public class ShoppingCartGoodsDto {
private List<CartGoodsDetailDto> materialList; private List<CartGoodsDetailDto> materialList;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String originalGoodsUid;
@Data @Data
public final static class CartGoodsExtra { public final static class CartGoodsExtra {
/** /**
......
...@@ -185,4 +185,14 @@ public class ProductVo { ...@@ -185,4 +185,14 @@ public class ProductVo {
private List<ProductVo> setMaterialProducts; private List<ProductVo> setMaterialProducts;
/**
* 购物车行uid
*/
private String cid;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String ocid;
} }
...@@ -49,6 +49,8 @@ import cn.freemud.interceptor.ServiceException; ...@@ -49,6 +49,8 @@ import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.thirdparty.MulitiPaymentClient; import cn.freemud.management.thirdparty.MulitiPaymentClient;
import cn.freemud.redis.RedisCache; import cn.freemud.redis.RedisCache;
import cn.freemud.service.*; import cn.freemud.service.*;
import cn.freemud.service.order.OrderRelationFactory;
import cn.freemud.service.order.OrderRelationService;
import cn.freemud.service.thirdparty.*; import cn.freemud.service.thirdparty.*;
import cn.freemud.utils.*; import cn.freemud.utils.*;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
...@@ -290,6 +292,9 @@ public class OrderServiceImpl implements Orderservice { ...@@ -290,6 +292,9 @@ public class OrderServiceImpl implements Orderservice {
@Value("${coco.partnerId}") @Value("${coco.partnerId}")
private String partnerId; private String partnerId;
@Autowired
private OrderRelationFactory orderRelationFactory;
@Override @Override
public BaseResponse checkBeforeCreateOrder(CheckBeforeCreateOrderRequestVo requestVo) { public BaseResponse checkBeforeCreateOrder(CheckBeforeCreateOrderRequestVo requestVo) {
String trackingNo = LogTreadLocal.getTrackingNo(); String trackingNo = LogTreadLocal.getTrackingNo();
...@@ -1433,7 +1438,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1433,7 +1438,7 @@ public class OrderServiceImpl implements Orderservice {
} }
buildQueryOrderResponseVo(queryOrderResponseVo,response); buildQueryOrderResponseVo(queryOrderResponseVo,response,partnerId);
return ResponseUtil.success(queryOrderResponseVo); return ResponseUtil.success(queryOrderResponseVo);
} }
...@@ -3399,23 +3404,15 @@ public class OrderServiceImpl implements Orderservice { ...@@ -3399,23 +3404,15 @@ public class OrderServiceImpl implements Orderservice {
return ResponseUtil.success(responses.getData()); return ResponseUtil.success(responses.getData());
} }
public void buildQueryOrderResponseVo(QueryOrderResponseVo queryOrderResponseVo,QueryOrderByIdResponse response) { public void buildQueryOrderResponseVo(QueryOrderResponseVo queryOrderResponseVo,QueryOrderByIdResponse response,String partnerId) {
List<QueryOrderResponseVo.chooseGood> chooseGoods = new ArrayList<>();
List<OrderSendCouponResp> orderSendCouponRespList = response.getData().getOrderSendCouponRespList(); if(null == response || response.getData() == null || !ObjectUtils.equals(response.getErrcode(),RESPONSE_SUCCESS_CODE) ){
ApiLog.info("订单详情查询,返回值错误,QueryOrderByIdResponse",response);
if(orderSendCouponRespList == null || orderSendCouponRespList.isEmpty()){
return; return;
} }
orderSendCouponRespList.forEach(orderSendCouponResp -> { OrderRelationService orderRelationService = orderRelationFactory.getQueryOrdrBuildService(partnerId);
QueryOrderResponseVo.chooseGood chooseGood = new QueryOrderResponseVo.chooseGood(); orderRelationService.queryOrdrBuild(queryOrderResponseVo,response);
chooseGood.setGoodsName(orderSendCouponResp.getGoodsName());
chooseGoods.add(chooseGood);
});
queryOrderResponseVo.setChooseGoods(chooseGoods);
} }
......
...@@ -20,4 +20,11 @@ public interface OrderRelationFactory { ...@@ -20,4 +20,11 @@ public interface OrderRelationFactory {
*/ */
OrderRelationService getCreateOrderTimeCheckService(String partnerId); OrderRelationService getCreateOrderTimeCheckService(String partnerId);
/**
* 获取订单查询出参构建实现类
* @param partnerId
* @return
*/
OrderRelationService getQueryOrdrBuildService(String partnerId);
} }
...@@ -13,7 +13,9 @@ ...@@ -13,7 +13,9 @@
package cn.freemud.service.order; package cn.freemud.service.order;
import cn.freemud.entities.vo.CreateOrderVo; import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.QueryOrderResponseVo;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse; import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse;
public interface OrderRelationService { public interface OrderRelationService {
...@@ -23,4 +25,10 @@ public interface OrderRelationService { ...@@ -23,4 +25,10 @@ public interface OrderRelationService {
*/ */
void createOrderTimeCheck(StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo); void createOrderTimeCheck(StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo);
/**
* 创建订单的时间检查
* @param
*/
void queryOrdrBuild(QueryOrderResponseVo queryOrderResponseVo,QueryOrderByIdResponse response);
} }
...@@ -15,21 +15,27 @@ package cn.freemud.service.order.impl; ...@@ -15,21 +15,27 @@ package cn.freemud.service.order.impl;
import cn.freemud.base.util.DateUtil; import cn.freemud.base.util.DateUtil;
import cn.freemud.entities.dto.order.BusinessDate; import cn.freemud.entities.dto.order.BusinessDate;
import cn.freemud.entities.vo.CreateOrderVo; import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.ProductVo;
import cn.freemud.entities.vo.QueryOrderResponseVo;
import cn.freemud.enums.CreateOrderType; import cn.freemud.enums.CreateOrderType;
import cn.freemud.enums.ResponseResult; import cn.freemud.enums.ResponseResult;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.impl.CheckOrder; import cn.freemud.service.impl.CheckOrder;
import cn.freemud.service.order.OrderRelationService; import cn.freemud.service.order.OrderRelationService;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSendCouponResp;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse; import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService; import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse;
import io.swagger.models.auth.In;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.*;
import java.util.List; import java.util.stream.Collectors;
@Service("cocoOrderRelationService") @Service("cocoOrderRelationService")
public class CocoOrderRelationServiceImpl implements OrderRelationService { public class CocoOrderRelationServiceImpl implements OrderRelationService {
...@@ -78,4 +84,51 @@ public class CocoOrderRelationServiceImpl implements OrderRelationService { ...@@ -78,4 +84,51 @@ public class CocoOrderRelationServiceImpl implements OrderRelationService {
} }
} }
@Override
public void queryOrdrBuild(QueryOrderResponseVo queryOrderResponseVo,QueryOrderByIdResponse response) {
List<QueryOrderResponseVo.chooseGood> chooseGoods = new ArrayList<>();
List<OrderSendCouponResp> orderSendCouponRespList = response.getData().getOrderSendCouponRespList();
if(orderSendCouponRespList != null && !orderSendCouponRespList.isEmpty()){
orderSendCouponRespList.forEach(orderSendCouponResp -> {
QueryOrderResponseVo.chooseGood chooseGood = new QueryOrderResponseVo.chooseGood();
chooseGood.setGoodsName(orderSendCouponResp.getGoodsName());
chooseGoods.add(chooseGood);
});
queryOrderResponseVo.setChooseGoods(chooseGoods);
}
// 赠品合并到主商品
List<ProductVo> products = queryOrderResponseVo.getProducts();
// 有购物车行id的是主
List<ProductVo> masterProducts = products.stream().filter(product ->
!StringUtils.isEmpty(product.getCid())).collect(Collectors.toList());
// 没有购物车行id的是赠品
Map<String, Integer> giftMap = new HashMap<>();
List<ProductVo> giftProducts = products.stream().filter(product ->
StringUtils.isEmpty(product.getCid())).collect(Collectors.toList());
if(giftProducts != null && !giftProducts.isEmpty()){
giftProducts.forEach(giftProduct ->{
giftMap.put(giftProduct.getOcid(),giftProduct.getQty());
});
}
if(null != masterProducts && !masterProducts.isEmpty()){
masterProducts.forEach(product -> {
Integer giftQty = product.getQty();
if(giftQty == 0){
return;
}
product.setQty(product.getQty() + giftQty);
});
}
queryOrderResponseVo.setProducts(masterProducts);
}
} }
...@@ -54,4 +54,13 @@ public class OrderRelationFactoryImpl implements OrderRelationFactory { ...@@ -54,4 +54,13 @@ public class OrderRelationFactoryImpl implements OrderRelationFactory {
} }
} }
@Override
public OrderRelationService getQueryOrdrBuildService(String partnerId) {
if(cocoPartnerId.contains(partnerId)){
return cocoOrderRelationService;
}else{
return PlatformOrderRelationServiceImpl;
}
}
} }
...@@ -13,8 +13,10 @@ ...@@ -13,8 +13,10 @@
package cn.freemud.service.order.impl; package cn.freemud.service.order.impl;
import cn.freemud.entities.vo.CreateOrderVo; import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.QueryOrderResponseVo;
import cn.freemud.service.order.OrderRelationService; import cn.freemud.service.order.OrderRelationService;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse; import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrderByIdResponse;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@Service("platformOrderRelationServiceImpl") @Service("platformOrderRelationServiceImpl")
...@@ -24,4 +26,9 @@ public class PlatformOrderRelationServiceImpl implements OrderRelationService { ...@@ -24,4 +26,9 @@ public class PlatformOrderRelationServiceImpl implements OrderRelationService {
@Override @Override
public void createOrderTimeCheck(StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo) { public void createOrderTimeCheck(StoreResponse.BizVO storeResponseDto, CreateOrderVo createOrderVo) {
} }
@Override
public void queryOrdrBuild(QueryOrderResponseVo queryOrderResponseVo, QueryOrderByIdResponse response) {
}
} }
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<version>1.0.0</version> <version>1.0.0</version>
</parent> </parent>
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<version>1.6.8-SNAPSHOT</version> <version>1.7.2-SNAPSHOT</version>
<artifactId>ordercenter-sdk</artifactId> <artifactId>ordercenter-sdk</artifactId>
<dependencies> <dependencies>
......
...@@ -144,6 +144,12 @@ public class ShoppingCartGoodsDto { ...@@ -144,6 +144,12 @@ public class ShoppingCartGoodsDto {
* 购物车行uid * 购物车行uid
*/ */
private String cartGoodsUid; private String cartGoodsUid;
/**
* 拼单买一赠一标记赠品是那个商品送的 originalGoodsUid
*/
private String originalGoodsUid;
/** /**
* spuId * spuId
*/ */
......
...@@ -38,6 +38,8 @@ import cn.freemud.service.*; ...@@ -38,6 +38,8 @@ import cn.freemud.service.*;
import cn.freemud.service.delivery.DeliveryFactory; import cn.freemud.service.delivery.DeliveryFactory;
import cn.freemud.service.delivery.DeliveryService; import cn.freemud.service.delivery.DeliveryService;
import cn.freemud.service.impl.calculate.*; import cn.freemud.service.impl.calculate.*;
import cn.freemud.service.shoppingCart.ShoppingCartRelationFactory;
import cn.freemud.service.shoppingCart.ShoppingCartRelationService;
import cn.freemud.service.thirdparty.*; import cn.freemud.service.thirdparty.*;
import cn.freemud.utils.BeanUtil; import cn.freemud.utils.BeanUtil;
import cn.freemud.utils.PromotionFactory; import cn.freemud.utils.PromotionFactory;
...@@ -175,6 +177,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -175,6 +177,9 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
@Value("${saas.cart.sharing}") @Value("${saas.cart.sharing}")
private String sharing; private String sharing;
@Autowired
private ShoppingCartRelationFactory shoppingCartRelationFactory;
/** /**
* 从微信卡券向购物车中添加商品 * 从微信卡券向购物车中添加商品
*/ */
...@@ -350,7 +355,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -350,7 +355,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, partnerId , partnerId
, null); , null);
buildDiscounts(shoppingCartGoodsResponseVo,discountResult); buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,partnerId);
} }
else { else {
// 获取优惠信息 // 获取优惠信息
...@@ -473,7 +478,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -473,7 +478,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, partnerId , partnerId
, null); , null);
buildDiscounts(shoppingCartGoodsResponseVo,discountResult); buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult,partnerId);
} }
else { else {
// 获取优惠信息 // 获取优惠信息
...@@ -644,7 +649,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -644,7 +649,7 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
, partnerId , partnerId
,shoppingCartInfoRequestVo.getFlag()); ,shoppingCartInfoRequestVo.getFlag());
buildDiscounts(shoppingCartGoodsResponseVo,calculationSharingDiscountResult); buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,calculationSharingDiscountResult,partnerId);
} }
else { else {
List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = new ArrayList<>(); List<ActivityCalculationDiscountRequestDto.CalculationDiscountCoupon> coupons = new ArrayList<>();
...@@ -2150,11 +2155,12 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService { ...@@ -2150,11 +2155,12 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
* @param shoppingCartGoodsResponseVo * @param shoppingCartGoodsResponseVo
* @param discountResult * @param discountResult
*/ */
private void buildDiscounts(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult) { private void buildShoppingCartGoodsResponse(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,
if(discountResult != null){ CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult,
shoppingCartGoodsResponseVo.setDiscounts(discountResult.getDiscounts()); String partnerId) {
shoppingCartGoodsResponseVo.setGoods(discountResult.getGoods());
} ShoppingCartRelationService shoppingCartRelationService = shoppingCartRelationFactory.getBuildShoppingCartGoodsResponseService(partnerId);
shoppingCartRelationService.buildShoppingCartGoodsResponse(shoppingCartGoodsResponseVo,discountResult);
} }
......
...@@ -175,6 +175,7 @@ public class GiftSharingService { ...@@ -175,6 +175,7 @@ public class GiftSharingService {
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods goods = discountForGift.get(k); CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods goods = discountForGift.get(k);
CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount discount = this.discountInfo(goods); CalculationSharingDiscountResponseDto.CalculationDiscountResult.Goods.GoodsDiscount discount = this.discountInfo(goods);
ShoppingCartGoodsDto.CartGoodsDetailDto cartGoodsDetailDto = new ShoppingCartGoodsDto.CartGoodsDetailDto(); ShoppingCartGoodsDto.CartGoodsDetailDto cartGoodsDetailDto = new ShoppingCartGoodsDto.CartGoodsDetailDto();
cartGoodsDetailDto.setOriginalGoodsUid(goods.getOriginalGoodsUid());
cartGoodsDetailDto.setCartGoodsUid(goods.getCartGoodsUid()); cartGoodsDetailDto.setCartGoodsUid(goods.getCartGoodsUid());
cartGoodsDetailDto.setTaxId(product.getTaxId()); cartGoodsDetailDto.setTaxId(product.getTaxId());
cartGoodsDetailDto.setTax(product.getTax()); cartGoodsDetailDto.setTax(product.getTax());
......
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ShoppingCartRelationFactory
* @Description:
* @author: pengfei.liu
* @date: 2020/11/23
* @version V1.0
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.service.shoppingCart;
public interface ShoppingCartRelationFactory {
/**
* 获取购物车查询出参构建实现
* @param partnerId
* @return
*/
ShoppingCartRelationService getBuildShoppingCartGoodsResponseService(String partnerId);
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ShoppingCartRelationService
* @Description:
* @author: pengfei.liu
* @date: 2020/11/23
* @version V1.0
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.service.shoppingCart;
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
public interface ShoppingCartRelationService {
/**
* 获取购物车查询出参构建实现
*/
void buildShoppingCartGoodsResponse(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,
CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult);
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: CouponService
* @Package cn.freemud.service
* @Description:
* @author: pengfei.liu
* @date: 2020/11/23
* @version V1.0
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.service.shoppingCart.impl;
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.service.shoppingCart.ShoppingCartRelationService;
import org.springframework.stereotype.Service;
@Service("cocoShoppingCartRelationService")
public class CocoShoppingCartRelationServiceImpl implements ShoppingCartRelationService {
@Override
public void buildShoppingCartGoodsResponse(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,
CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult) {
if(discountResult != null){
shoppingCartGoodsResponseVo.setDiscounts(discountResult.getDiscounts());
shoppingCartGoodsResponseVo.setGoods(discountResult.getGoods());
}
}
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: PlatformShoppingCartRelationServiceImpl
* @Description:
* @author: pengfei.liu
* @date: 2020/11/23
* @version V1.0
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.service.shoppingCart.impl;
import cn.freemud.entities.dto.calculate.CalculationSharingDiscountResponseDto;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.service.shoppingCart.ShoppingCartRelationService;
import org.springframework.stereotype.Service;
@Service("platformShoppingCartRelationService")
public class PlatformShoppingCartRelationServiceImpl implements ShoppingCartRelationService {
@Override
public void buildShoppingCartGoodsResponse(ShoppingCartGoodsResponseVo shoppingCartGoodsResponseVo,
CalculationSharingDiscountResponseDto.CalculationDiscountResult discountResult) {
}
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: ShoppingCartRelationFactoryImpl
* @Description:
* @author: pengfei.liu
* @date: 2020/11/23
* @version V1.0
* @Copyright: 2020 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package cn.freemud.service.shoppingCart.impl;
import cn.freemud.service.shoppingCart.ShoppingCartRelationFactory;
import cn.freemud.service.shoppingCart.ShoppingCartRelationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class ShoppingCartRelationFactoryImpl implements ShoppingCartRelationFactory {
/**
* coco商户
*/
@Value("#{'${coco.partnerId}'.split(',')}")
private List<String> cocoPartnerId;
/**
* coco
*/
@Autowired
@Qualifier("cocoShoppingCartRelationService")
ShoppingCartRelationService cocoShoppingCartRelationService;
/**
* 平台
*/
@Autowired
@Qualifier("platformShoppingCartRelationService")
ShoppingCartRelationService platformShoppingCartRelationService;
@Override
public ShoppingCartRelationService getBuildShoppingCartGoodsResponseService(String partnerId) {
if(cocoPartnerId.contains(partnerId)){
return cocoShoppingCartRelationService;
}else{
return platformShoppingCartRelationService;
}
}
}
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