Commit 81e4c06a by 徐光兴

Merge branch 'feature/V2.0.52_储值卡支持购买虚拟商品' into qa

parents 626ad2ac 9c27f2c7
......@@ -2687,6 +2687,7 @@ public class OrderAdapter {
productBean1.setProductOtherInfo(extraName);
productBean1.setParentType(productBean.getProductType());
productBean1.setSonProducts(new ArrayList<>());
productBean1.setUnit(productBean.getUnit());
return productBean1;
}
......
......@@ -130,6 +130,8 @@ public class OrderPrintDto {
private List<ProductsBean> sonProducts;
//加料商品的加料
private List<ProductsBean> materialProducts;
// 商品单位
private String unit;
}
}
......@@ -65,4 +65,11 @@ public class SellCouponCreateOrderVo {
*/
private String channel;
/**
* 【华莱士】【订单C端记录不分账的卡面编号】不让走分账,卡面编号--11840,11845,11846,11853,11854,11855,11857,11858,11859,11860,11861,11862,11863,11864,11865,11866,11906
*
* 1 表示不分账 ,其他情况 不传值 给基础服务
*/
private Integer unDistribution;
}
......@@ -36,6 +36,7 @@ import cn.freemud.entities.dto.user.StatisticalScoreRequestVo;
import cn.freemud.entities.vo.CreateOrderResponseVo;
import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.GetMemberCouponRequestVo;
import cn.freemud.entities.vo.SellCouponCreateOrderVo;
import cn.freemud.entities.vo.ShoppingCartInfoRequestVo;
import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException;
......@@ -70,6 +71,7 @@ import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import com.freemud.application.sdk.api.storecenter.service.StoreCenterService;
import com.freemud.sdk.api.assortment.order.enums.StoreDeliveryMethod;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import com.google.gson.Gson;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
......@@ -182,6 +184,21 @@ public class CheckOrder {
return userLoginInfoDto;
}
public void checkMemberSvcCard(String partnerId, String memberId, SellCouponCreateOrderVo requestVo) {
if (StringUtils.isNotBlank(requestVo.getCardCode())) {
//校验会员svc卡信息
List<GetSvcInfoByMemberIdResponseVo> memberCardCode = checkCardCode(partnerId, memberId, Sets.newHashSet(requestVo.getCardCode()));
if (CollectionUtils.isNotEmpty(memberCardCode)) {
// 【华莱士】【订单C端记录不分账的卡面编号】不让走分账,卡面编号--11840,11845,11846,11853,11854,11855,11857,11858,11859,11860,11861,11862,11863,11864,11865,11866,11906
long count = memberCardCode.stream().filter(card -> Sets.newHashSet(requestVo.getCardCode()).contains(card.getCardCode()) && unDistributions.contains(card.getApplyId())).count();
if (count > 0) {
requestVo.setUnDistribution(1);
}
}
}
}
public AssortmentCustomerInfoVo checkOrderByMemberNew(String sessionId) {
// 通过sessionId查询缓存中会员id
......
......@@ -77,6 +77,7 @@ import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.PayAccessResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
......@@ -285,8 +286,10 @@ public class SellCouponOrderServiceImpl implements OrderFactoryService {
* 卖券订单创建
*/
public BaseResponse createOrder(SellCouponCreateOrderVo requestVo){
// 查询用户信息、校验svc卡
// 查询用户信息
AssortmentCustomerInfoVo userLoginInfoDto = checkOrder.checkOrderByMemberNew(requestVo.getSessionId());
// 如果用户适用SVC 卡支付,则校验svc卡,
checkOrder.checkMemberSvcCard(userLoginInfoDto.getPartnerId(), userLoginInfoDto.getMemberId(), requestVo);
String trackingNo = LogThreadLocal.getTrackingNo();
String partnerId = userLoginInfoDto.getPartnerId();
String storeId = requestVo.getShopId();
......@@ -437,7 +440,7 @@ public class SellCouponOrderServiceImpl implements OrderFactoryService {
orderExtInfoDto.setSessionKey(userLoginInfoDto.getSessionKey());
orderExtInfoDto.setFormId(requestVo.getFormId());
orderExtInfoDto.setFromAppId(userLoginInfoDto.getWxAppId());
orderExtInfoDto.setUnDistribution(requestVo.getUnDistribution());
createPrepayRequestDto.setOrderExtInfoDTO(orderExtInfoDto);
//创建卖券预支付
......
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