Commit c1202710 by 徐康

Merge branch 'feature/20200915_麦咖啡p2v3活动入机增加TENDERID字段' into develop

# Conflicts:
#	order-application-service/src/main/java/cn/freemud/service/mccafe/impl/CouponClientServiceImpl.java
parents 6a5e576e 3192a8b5
...@@ -2630,7 +2630,7 @@ public class OrderSdkAdapter { ...@@ -2630,7 +2630,7 @@ public class OrderSdkAdapter {
combo.setOpid(comboIndex); combo.setOpid(comboIndex);
updateOrderItemAndSettlement(orderItemList, orderSettlementCreateReqList, combo, partnerId, parentProductId, false); updateOrderItemAndSettlement(orderItemList, orderSettlementCreateReqList, combo, partnerId, parentProductId, false);
if(CollectionUtils.isNotEmpty(combo.getMaterialProduct())) { if(CollectionUtils.isNotEmpty(combo.getMaterialProduct())) {
String addProductId = productRequest.getProductId() + "_" + comboIndex; String addProductId = combo.getProductId() + "_" + comboIndex;
for(CreateOrderProductRequest material : combo.getMaterialProduct()) { for(CreateOrderProductRequest material : combo.getMaterialProduct()) {
material.setSpecification(material.getProductId()); material.setSpecification(material.getProductId());
material.setSpecificationName(material.getProductName()); material.setSpecificationName(material.getProductName());
......
...@@ -14,11 +14,10 @@ package cn.freemud.adapter; ...@@ -14,11 +14,10 @@ package cn.freemud.adapter;
import cn.freemud.base.constant.Version; import cn.freemud.base.constant.Version;
import cn.freemud.base.util.DateUtil; import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.*; import cn.freemud.entities.dto.*;
import cn.freemud.management.entities.dto.request.order.MCCafeCouponRequest; import cn.freemud.interceptor.ServiceException;
import cn.freemud.management.entities.dto.request.order.MCCafeCouponLockRequest; import cn.freemud.management.entities.dto.request.order.*;
import cn.freemud.management.entities.dto.request.order.MCCafeProductRedeemVo;
import cn.freemud.management.entities.dto.request.order.MCCafeTransactionVo;
import cn.freemud.entities.dto.openplatform.AddWeixinCardCodeRequestDto; import cn.freemud.entities.dto.openplatform.AddWeixinCardCodeRequestDto;
import cn.freemud.entities.dto.openplatform.AddWeixinCardCodeResponseDto; import cn.freemud.entities.dto.openplatform.AddWeixinCardCodeResponseDto;
import cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeRequestDto; import cn.freemud.entities.dto.openplatform.AddWeixinCardJudgeRequestDto;
...@@ -27,7 +26,12 @@ import cn.freemud.entities.dto.promotion.CouponPromotionDto; ...@@ -27,7 +26,12 @@ import cn.freemud.entities.dto.promotion.CouponPromotionDto;
import cn.freemud.entities.dto.promotion.OrderBeanRequest; import cn.freemud.entities.dto.promotion.OrderBeanRequest;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.management.entities.dto.response.coupon.McdNetBatchQueryResponse;
import cn.freemud.management.entities.dto.response.coupon.McdNetCouponProductRespDto;
import cn.freemud.management.enums.OrderSource;
import cn.freemud.service.mccafe.CouponClientService;
import cn.freemud.utils.BeanUtil; import cn.freemud.utils.BeanUtil;
import cn.freemud.utils.LogUtil;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType; import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.card.sdk.vo.coupon.request.MemberAddCouponVo; import com.freemud.card.sdk.vo.coupon.request.MemberAddCouponVo;
import com.freemud.sdk.api.assortment.order.enums.OldOrderAccountType; import com.freemud.sdk.api.assortment.order.enums.OldOrderAccountType;
...@@ -52,6 +56,9 @@ public class CouponAdapter { ...@@ -52,6 +56,9 @@ public class CouponAdapter {
@Autowired @Autowired
private OrderAdapter orderAdapter; private OrderAdapter orderAdapter;
@Autowired
private CouponClientService couponClientService;
public CouponListDto convert2CouponListDto(String userId, String partnerId) { public CouponListDto convert2CouponListDto(String userId, String partnerId) {
CouponListDto couponListDto = new CouponListDto(); CouponListDto couponListDto = new CouponListDto();
couponListDto.setPartnerCode(partnerId); couponListDto.setPartnerCode(partnerId);
...@@ -684,6 +691,37 @@ public class CouponAdapter { ...@@ -684,6 +691,37 @@ public class CouponAdapter {
mcCafeProductRedeemVo.setSeq(i + 1); mcCafeProductRedeemVo.setSeq(i + 1);
products.add(mcCafeProductRedeemVo); products.add(mcCafeProductRedeemVo);
} }
} else if (QueryOrderAccountType.FREIGHT_COUPON.equals(orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(accountBean.getType())))) {
MCCafeCouponRequest mcCafeCouponRequest = MCCafeCouponRequest.builder()
.ver(88)
.reqtype(CouponReqTypeEnum.BATCH_QUERY.getCode())
.partnerId(Integer.parseInt(orderBean.getCompanyId()))
.store_id(orderBean.getShopId())
.station_id("1")
.operator_id(orderBean.getUserId())
.channel(OrderSource.ALIPAY.getSource().equals(orderBean.getSource())?MCCafeChannelEnum.MOCOFFEE_ZFB.getName():MCCafeChannelEnum.MOCOFFEE_WX.getName())
.couponlist(Arrays.asList(new MCCafeCouponVo(accountBean.getAccountId())))
.sign("skip")
.build();
McdNetBatchQueryResponse mcdNetBatchQueryResponse = couponClientService.batchQuery(mcCafeCouponRequest);
if (mcdNetBatchQueryResponse == null || !ResponseCodeConstant.RESPONSE_SUCCESS.equals(mcdNetBatchQueryResponse.getStatusCode())
|| CollectionUtils.isEmpty(mcdNetBatchQueryResponse.getCouponlist())) {
LogUtil.error("获取运费券绑定商品异常,无法核销", mcCafeCouponRequest, mcdNetBatchQueryResponse);
return null;
} else {
try {
McdNetCouponProductRespDto mcdNetCouponProductRespDto = mcdNetBatchQueryResponse.getCouponlist().get(0).getCodeInfo().getProducts().get(0);
MCCafeProductRedeemVo mcCafeProductRedeemVo = new MCCafeProductRedeemVo();
mcCafeProductRedeemVo.setKeyProductCode(mcdNetCouponProductRespDto.getPid());
mcCafeProductRedeemVo.setCustomer_code(mcdNetCouponProductRespDto.getPid());
mcCafeProductRedeemVo.setConsume_num(mcdNetCouponProductRespDto.getNumber());
mcCafeProductRedeemVo.setSeq(1);
products.add(mcCafeProductRedeemVo);
} catch (Exception e) {
LogUtil.error("获取运费券绑定商品异常,无法核销", mcCafeCouponRequest, mcdNetBatchQueryResponse);
return null;
}
}
} }
MCCafeCouponRequest mcCafeCouponRequest = new MCCafeCouponRequest(); MCCafeCouponRequest mcCafeCouponRequest = new MCCafeCouponRequest();
mcCafeCouponRequest.setVer(Integer.valueOf(Version.VERSION_1)); mcCafeCouponRequest.setVer(Integer.valueOf(Version.VERSION_1));
......
...@@ -424,7 +424,6 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService { ...@@ -424,7 +424,6 @@ public class MCCafeOrderServiceImpl implements MCCafeOrderService {
if(CollectionUtils.isNotEmpty(productDto.getComboProduct())){ if(CollectionUtils.isNotEmpty(productDto.getComboProduct())){
for (CreateOrderProductRequest comboProduct : productDto.getComboProduct()){ for (CreateOrderProductRequest comboProduct : productDto.getComboProduct()){
String comboSkuId = comboProduct.getSpecification(); String comboSkuId = comboProduct.getSpecification();
System.out.println(comboSkuId);
if (products.get(comboSkuId) != null) { if (products.get(comboSkuId) != null) {
comboProduct.setThirdProductSpecId(products.get(comboSkuId).getThirdProductSpecId()); comboProduct.setThirdProductSpecId(products.get(comboSkuId).getThirdProductSpecId());
comboProduct.setThirdProductPropertyId(getThirdPropertyId(products.get(comboSkuId).getProductAttributeGroupList(),comboProduct.getAddInfo())); comboProduct.setThirdProductPropertyId(getThirdPropertyId(products.get(comboSkuId).getProductAttributeGroupList(),comboProduct.getAddInfo()));
......
...@@ -174,7 +174,7 @@ public class CouponClientServiceImpl implements CouponClientService { ...@@ -174,7 +174,7 @@ public class CouponClientServiceImpl implements CouponClientService {
} }
List<MCCafeCouponRequest> list = List<MCCafeCouponRequest> list =
accountList.stream().map(accountBean -> couponAdapter.convert2MCCafeCouponRequest(orderBean, accountBean)).collect(Collectors.toList()); accountList.stream().map(accountBean -> couponAdapter.convert2MCCafeCouponRequest(orderBean, accountBean)).filter(o -> o!=null).collect(Collectors.toList());
List<CouponRedeemResponse> couponRedeemResponseList = new ArrayList<>(); List<CouponRedeemResponse> couponRedeemResponseList = new ArrayList<>();
List<CouponRedeemResponse> couponRedeemResponseListAll = new ArrayList<>(); List<CouponRedeemResponse> couponRedeemResponseListAll = new ArrayList<>();
...@@ -290,11 +290,10 @@ public class CouponClientServiceImpl implements CouponClientService { ...@@ -290,11 +290,10 @@ public class CouponClientServiceImpl implements CouponClientService {
return null; return null;
} }
List<QueryOrdersResponseDto.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter( List<QueryOrdersResponseDto.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (OldOrderAccountType.PRODUCT_COUPON.equals(OldOrderAccountType.getByCode(account.getType())) account -> (orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON)
|| OldOrderAccountType.COUPON.equals(OldOrderAccountType.getByCode(account.getType())) || orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON)
|| OldOrderAccountType.DISCOUNT_COUPON.equals(OldOrderAccountType.getByCode(account.getType())) || orderAdapter.getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON))
|| OldOrderAccountType.FREIGHT_COUPON.equals(OldOrderAccountType.getByCode(account.getType())) ).collect(Collectors.toList());
)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList)) { if (CollectionUtils.isEmpty(accountList)) {
return null; return null;
} }
......
...@@ -34,8 +34,7 @@ public class McCafeCouponAdapter { ...@@ -34,8 +34,7 @@ public class McCafeCouponAdapter {
List<QueryOrdersResponse.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter( List<QueryOrdersResponse.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON) account -> (getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON) || getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON) || getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON))
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.FREIGHT_COUPON))
).collect(Collectors.toList()); ).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList) ) { if (CollectionUtils.isEmpty(accountList) ) {
return null; return null;
...@@ -126,8 +125,8 @@ public class McCafeCouponAdapter { ...@@ -126,8 +125,8 @@ public class McCafeCouponAdapter {
List<QueryOrdersResponse.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter( List<QueryOrdersResponse.DataBean.OrderBean.AccountBean> accountList = orderBean.getAccountList().stream().filter(
account -> (getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON) account -> (getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON) || getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.PRODUCT_COUPON)
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON) || getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.DISCOUNT_COUPON))
|| getQueryOrderAccountType(OldOrderAccountType.getByCode(account.getType())).equals(QueryOrderAccountType.FREIGHT_COUPON))).collect(Collectors.toList()); ).collect(Collectors.toList());
if (CollectionUtils.isEmpty(accountList) ) { if (CollectionUtils.isEmpty(accountList) ) {
return null; return null;
} }
......
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