Commit 66e68813 by hanghang.wang

蜜雪新增虚拟业务买券

parent 0163d40a
...@@ -76,4 +76,18 @@ public class AppCreateOrderVo { ...@@ -76,4 +76,18 @@ public class AppCreateOrderVo {
* 下单渠道 版本号 * 下单渠道 版本号
*/ */
private String version; private String version;
//20210107蜜雪新增APP购买虚拟商品(券)业务--》》新增以下字段 bizType skuId --wanghanghang
/**
* 代表蜜雪APP买虚拟商品(买券)业务标识
*/
private Integer bizType;
/**
* 此字段只针对蜜雪冰城APP下单购买虚拟券时使用,其他商品请入参orderProducts字段
*/
private String skuId;
} }
package cn.freemud.enums;
public enum BizTypeEnum {
APP_COUPON(6, "APP买券"),
APP_PRO(1, "未知(目前暂不支持),后续可能预留给正常商品");
private Integer bizType;
private String desc;
BizTypeEnum(Integer bizType, String desc) {
this.bizType = bizType;
this.desc = desc;
}
public static cn.freemud.enums.BizTypeEnum getByCode(Integer code) {
for (cn.freemud.enums.BizTypeEnum payType : values()) {
if (payType.getBizType().equals(code)) {
return payType;
}
}
return null;
}
public Integer getBizType() {
return bizType;
}
public void setBizType(Integer bizType) {
this.bizType = bizType;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
}
\ No newline at end of file
...@@ -22,10 +22,14 @@ import com.alibaba.fastjson.JSONObject; ...@@ -22,10 +22,14 @@ import com.alibaba.fastjson.JSONObject;
import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo; import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo;
import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare; import com.freemud.application.sdk.api.base.SDKCommonBaseContextWare;
import com.freemud.application.sdk.api.constant.ResponseResultEnum; import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.couponcenter.online.domain.ActiveDetailVO;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType; import com.freemud.application.sdk.api.ordercenter.enums.AfterSalesType;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType; import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto; import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.ordercenter.request.create.CreateOrderRequest;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest; import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentCloseUnifiedOrderRequest;
import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest; import com.freemud.application.sdk.api.paymentcenter.client.request.PaymentQueryRequest;
import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentCloseUnifiedOrderResponse; import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentCloseUnifiedOrderResponse;
...@@ -33,28 +37,32 @@ import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentQuer ...@@ -33,28 +37,32 @@ import com.freemud.application.sdk.api.paymentcenter.client.response.PaymentQuer
import com.freemud.application.sdk.api.paymentcenter.client.service.PaymentNewService; import com.freemud.application.sdk.api.paymentcenter.client.service.PaymentNewService;
import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO; import com.freemud.application.sdk.api.productcenter.domain.ProductBeanDTO;
import com.freemud.application.sdk.api.productcenter.domain.ProductInfosDTO; import com.freemud.application.sdk.api.productcenter.domain.ProductInfosDTO;
import com.freemud.application.sdk.api.productcenter.request.product.GetProductInfoRequest;
import com.freemud.application.sdk.api.productcenter.request.product.GetProductRequest; import com.freemud.application.sdk.api.productcenter.request.product.GetProductRequest;
import com.freemud.application.sdk.api.productcenter.response.menu.GetMenuCategoryInfoResponse;
import com.freemud.application.sdk.api.productcenter.response.product.GetProductInfosResponse;
import com.freemud.application.sdk.api.productcenter.service.MenuService;
import com.freemud.application.sdk.api.productcenter.service.ProductService; import com.freemud.application.sdk.api.productcenter.service.ProductService;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest; import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
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.adapter.OrderSdkAdapter;
import com.freemud.sdk.api.assortment.order.request.order.CancelOrderRequest; import com.freemud.sdk.api.assortment.order.request.order.CancelOrderRequest;
import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest; import com.freemud.sdk.api.assortment.order.request.order.OrderEditRequest;
import com.freemud.sdk.api.assortment.order.request.order.QueryRelatedOrderByCodeRequest; import com.freemud.sdk.api.assortment.order.request.order.QueryRelatedOrderByCodeRequest;
import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse; import com.freemud.sdk.api.assortment.order.response.order.BaseOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.CreateOrderResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse; import com.freemud.sdk.api.assortment.order.response.order.QueryOrdersResponse;
import com.freemud.sdk.api.assortment.order.response.order.QueryRelatedOrderByCodeResp; import com.freemud.sdk.api.assortment.order.response.order.QueryRelatedOrderByCodeResp;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService; import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import com.google.common.collect.Lists;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils; 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.util.ArrayList; import java.util.*;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -99,12 +107,12 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -99,12 +107,12 @@ public class AppOrderServiceImpl implements AppOrderService {
OrderExtInfoDto extInfo = orderservice.getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo, shoppingCartGoodsDto); OrderExtInfoDto extInfo = orderservice.getExtInfo(userLoginInfoDto, storeResponseDto, pushOrderTime, createOrderVo, shoppingCartGoodsDto);
//创建订单 //创建订单
BaseResponse createOrderOperateDtoResponse = orderservice.sdkCreateOrder(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto); BaseResponse createOrderOperateDtoResponse = orderservice.sdkCreateOrder(createOrderVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto);
if(createOrderOperateDtoResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderOperateDtoResponse.getCode()) || createOrderOperateDtoResponse.getResult() == null ) { if (createOrderOperateDtoResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderOperateDtoResponse.getCode()) || createOrderOperateDtoResponse.getResult() == null) {
return createOrderOperateDtoResponse; return createOrderOperateDtoResponse;
} }
CreateOrderOperateDto createOrderOperateDto = (CreateOrderOperateDto)createOrderOperateDtoResponse.getResult(); CreateOrderOperateDto createOrderOperateDto = (CreateOrderOperateDto) createOrderOperateDtoResponse.getResult();
BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo); BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo);
if(baseResponse != null) { if (baseResponse != null) {
return baseResponse; return baseResponse;
} }
//返回没创建预支付的结果 //返回没创建预支付的结果
...@@ -135,45 +143,74 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -135,45 +143,74 @@ public class AppOrderServiceImpl implements AppOrderService {
return orderservice.createPrepayOrder(createPrepayRequestDto); return orderservice.createPrepayOrder(createPrepayRequestDto);
} }
@Autowired
private OrderSdkService orderSdkService;
@Autowired
private OrderSdkAdapter orderSdkAdapter;
/** /**
* APP下单,下单带商品信息,不经过购物车服务,不唤起支付 * APP下单,下单带商品信息,不经过购物车服务,不唤起支付
*/ */
@Override @Override
public BaseResponse createOrder(AppCreateOrderVo createOrderReq,AssortmentCustomerInfoVo customerInfo) { public BaseResponse createOrder(AppCreateOrderVo createOrderReq, AssortmentCustomerInfoVo customerInfo) {
String trackingNo = LogThreadLocal.getTrackingNo(); String trackingNo = LogThreadLocal.getTrackingNo();
String partnerId = createOrderReq.getPartnerId(); String partnerId = createOrderReq.getPartnerId();
String shopId = createOrderReq.getShopId(); String shopId = createOrderReq.getShopId();
// 获取门店信息 // 获取门店信息
StoreInfoRequest storeInfoRequest = new StoreInfoRequest(partnerId, shopId,null); StoreInfoRequest storeInfoRequest = new StoreInfoRequest(partnerId, shopId, null);
StoreResponse storeResponse = storeCenterService.getStoreInfo(storeInfoRequest, trackingNo); StoreResponse storeResponse = storeCenterService.getStoreInfo(storeInfoRequest, trackingNo);
if (storeResponse == null || storeResponse.getBizVO() == null) { if (storeResponse == null || storeResponse.getBizVO() == null) {
throw new ServiceException(ResponseResult.STORE_NOT_FOUND); throw new ServiceException(ResponseResult.STORE_NOT_FOUND);
} }
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号 // 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
checkOrder.checkOrderByStore(storeResponse.getBizVO()); checkOrder.checkOrderByStore(storeResponse.getBizVO());
/**蜜雪新增需求-->APP可以购买虚拟商品券业务逻辑**/
QueryOrdersResponse.DataBean.OrderBean orderBean = new QueryOrdersResponse.DataBean.OrderBean();
if (createOrderReq.getBizType() != null && BizTypeEnum.APP_COUPON.getBizType().equals(createOrderReq.getBizType())) {
//20200107提取虚拟商品券效验方法---》校验虚拟商品,如果正常则返回创建订单对象
BaseResponse createOrderRequestResponse =
new SellCouponOrderServiceImpl().checkOrderCoupon(customerInfo,storeResponse,trackingNo,createOrderReq.getMenuType(), Integer.valueOf(createOrderReq.getBizType()), partnerId, shopId, createOrderReq.getSkuId(), null);
if (createOrderRequestResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderRequestResponse.getCode()) || createOrderRequestResponse.getResult() == null) {
return createOrderRequestResponse;
}
CreateOrderRequest createOrderRequest = (CreateOrderRequest) createOrderRequestResponse.getResult();
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> orderInfoReqsBaseResponse = orderSdkService.createOrder(createOrderRequest, trackingNo);
CreateOrderResponse createOrderResponse = orderSdkAdapter.convent2NEWOrderInfoReqs(orderInfoReqsBaseResponse);
if (createOrderResponse == null || createOrderResponse.getErrcode() != 100) {
return ResponseUtil.error(ResponseResult.ORDER_CREATE_ERROR);
}
orderBean = createOrderResponse.getData();
}else{
/**APP创建实体商品业务逻辑**/
// 查商品服务确定金额 // 查商品服务确定金额
ShoppingCartGoodsDto shoppingCartGoodsDto = checkOrderProduct(partnerId,shopId,createOrderReq.getOrderProducts(), ShoppingCartGoodsDto shoppingCartGoodsDto = checkOrderProduct(partnerId, shopId, createOrderReq.getOrderProducts(),
createOrderReq.getMenuType(),createOrderReq.getReachStoreType()); createOrderReq.getMenuType(), createOrderReq.getReachStoreType());
CreateOrderVo createOrderVo = new CreateOrderVo(); CreateOrderVo createOrderVo = new CreateOrderVo();
BeanUtil.convertBean(createOrderReq,createOrderVo); BeanUtil.convertBean(createOrderReq, createOrderVo);
createOrderVo.setStoreName(storeResponse.getBizVO().getStoreName()); createOrderVo.setStoreName(storeResponse.getBizVO().getStoreName());
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件 // 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满 足起送条件
Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, customerInfo, storeResponse.getBizVO(), shoppingCartGoodsDto, trackingNo); Integer pushOrderTime = checkOrder.checkOrderByOrderType(createOrderVo, customerInfo, storeResponse.getBizVO(), shoppingCartGoodsDto, trackingNo);
//1.5.4版本,商品库存校验与扣库存 //1.5.4版本,商品库存校验与扣库存
//List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto); //List<String> stockProductIds = checkOrder.getStockProductIdList(createOrderVo, shoppingCartGoodsDto);
OrderExtInfoDto extInfo = orderservice.getExtInfo(customerInfo, storeResponse.getBizVO(), pushOrderTime, createOrderVo, shoppingCartGoodsDto); OrderExtInfoDto extInfo = orderservice.getExtInfo(customerInfo, storeResponse.getBizVO(), pushOrderTime, createOrderVo, shoppingCartGoodsDto);
//创建订单 //创建订单
BaseResponse createOrderOperateDtoResponse = orderservice.sdkCreateOrder(createOrderVo, storeResponse.getBizVO(), shoppingCartGoodsDto, customerInfo); BaseResponse createOrderOperateDtoResponse = orderservice.sdkCreateOrder(createOrderVo, storeResponse.getBizVO(), shoppingCartGoodsDto, customerInfo);
if(createOrderOperateDtoResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderOperateDtoResponse.getCode()) || createOrderOperateDtoResponse.getResult() == null ) { if (createOrderOperateDtoResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderOperateDtoResponse.getCode()) || createOrderOperateDtoResponse.getResult() == null) {
return createOrderOperateDtoResponse; return createOrderOperateDtoResponse;
} }
CreateOrderOperateDto createOrderOperateDto = (CreateOrderOperateDto)createOrderOperateDtoResponse.getResult(); CreateOrderOperateDto createOrderOperateDto = (CreateOrderOperateDto) createOrderOperateDtoResponse.getResult();
BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo); BaseResponse baseResponse = this.updateOrderExtInfo(createOrderOperateDto.getProductOrderBean(), extInfo, trackingNo);
if(baseResponse != null) { if (baseResponse != null) {
return baseResponse; return baseResponse;
} }
orderBean = createOrderOperateDto.getProductOrderBean();
}
//返回没创建预支付的结果 //返回没创建预支付的结果
CreateOrderResponseVo responseVo = orderAdapter.convent2CreateFatherSonOrderNoPayResponseVo(createOrderOperateDto.getProductOrderBean()); CreateOrderResponseVo responseVo = orderAdapter.convent2CreateFatherSonOrderNoPayResponseVo(orderBean);
return ResponseUtil.success(responseVo); return ResponseUtil.success(responseVo);
} }
...@@ -196,7 +233,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -196,7 +233,7 @@ public class AppOrderServiceImpl implements AppOrderService {
} }
OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class); OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class);
if(extInfo == null || StringUtils.isBlank(extInfo.getSessionId()) || !extInfo.getSessionId().equals(createPrepayVo.getSessionId())) { if (extInfo == null || StringUtils.isBlank(extInfo.getSessionId()) || !extInfo.getSessionId().equals(createPrepayVo.getSessionId())) {
throw new ServiceException(ResponseResult.ORDER_OWNER_ERROR); throw new ServiceException(ResponseResult.ORDER_OWNER_ERROR);
} }
} }
...@@ -217,19 +254,19 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -217,19 +254,19 @@ public class AppOrderServiceImpl implements AppOrderService {
return null; return null;
} }
private CreateOrderOperateDto getCreateOrderOperateDto(String orderId){ private CreateOrderOperateDto getCreateOrderOperateDto(String orderId) {
QueryRelatedOrderByCodeRequest baseQueryOrderRequest = new QueryRelatedOrderByCodeRequest(); QueryRelatedOrderByCodeRequest baseQueryOrderRequest = new QueryRelatedOrderByCodeRequest();
baseQueryOrderRequest.setOrderCode(orderId); baseQueryOrderRequest.setOrderCode(orderId);
baseQueryOrderRequest.setTrackingNo(LogTreadLocal.getTrackingNo()); baseQueryOrderRequest.setTrackingNo(LogTreadLocal.getTrackingNo());
QueryRelatedOrderByCodeResp queryOrderByIdResponse = orderCenterSdkService.queryRelatedOrderByCode(baseQueryOrderRequest); QueryRelatedOrderByCodeResp queryOrderByIdResponse = orderCenterSdkService.queryRelatedOrderByCode(baseQueryOrderRequest);
if(queryOrderByIdResponse == null || CollectionUtils.isEmpty(queryOrderByIdResponse.getOrderBeanList())) { if (queryOrderByIdResponse == null || CollectionUtils.isEmpty(queryOrderByIdResponse.getOrderBeanList())) {
throw new ServiceException(ResponseResult.ORDER_QUERYORDER_ERROR); throw new ServiceException(ResponseResult.ORDER_QUERYORDER_ERROR);
} }
List<QueryOrdersResponse.DataBean.OrderBean> orderBeanList = queryOrderByIdResponse.getOrderBeanList(); List<QueryOrdersResponse.DataBean.OrderBean> orderBeanList = queryOrderByIdResponse.getOrderBeanList();
long totalAmount = 0; long totalAmount = 0;
QueryOrdersResponse.DataBean.OrderBean fatherBeanListOne = new QueryOrdersResponse.DataBean.OrderBean(); QueryOrdersResponse.DataBean.OrderBean fatherBeanListOne = new QueryOrdersResponse.DataBean.OrderBean();
QueryOrdersResponse.DataBean.OrderBean productBeanListOne = new QueryOrdersResponse.DataBean.OrderBean(); QueryOrdersResponse.DataBean.OrderBean productBeanListOne = new QueryOrdersResponse.DataBean.OrderBean();
if(1 == orderBeanList.size()) { if (1 == orderBeanList.size()) {
fatherBeanListOne = orderBeanList.get(0); fatherBeanListOne = orderBeanList.get(0);
productBeanListOne = orderBeanList.get(0); productBeanListOne = orderBeanList.get(0);
totalAmount = orderBeanList.get(0).getAmount(); totalAmount = orderBeanList.get(0).getAmount();
...@@ -250,7 +287,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -250,7 +287,7 @@ public class AppOrderServiceImpl implements AppOrderService {
private void closeHistoryPrePay(QueryOrdersResponse.DataBean.OrderBean orderBean) { private void closeHistoryPrePay(QueryOrdersResponse.DataBean.OrderBean orderBean) {
OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class); OrderExtInfoDto extInfo = JSONObject.parseObject(orderBean.getExtInfo(), OrderExtInfoDto.class);
//判断当前订单是否存在预支付订单 //判断当前订单是否存在预支付订单
if(extInfo != null && StringUtils.isNotEmpty(extInfo.getFmId())){ if (extInfo != null && StringUtils.isNotEmpty(extInfo.getFmId())) {
//订单状态未支付且存在预支付订单: //订单状态未支付且存在预支付订单:
// 1.查询预支付订单支付状态 // 1.查询预支付订单支付状态
PaymentQueryRequest paymentQueryRequest = new PaymentQueryRequest(); PaymentQueryRequest paymentQueryRequest = new PaymentQueryRequest();
...@@ -258,24 +295,24 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -258,24 +295,24 @@ public class AppOrderServiceImpl implements AppOrderService {
paymentQueryRequest.setStoreId(orderBean.getShopId()); paymentQueryRequest.setStoreId(orderBean.getShopId());
paymentQueryRequest.setFmId(extInfo.getFmId()); paymentQueryRequest.setFmId(extInfo.getFmId());
paymentQueryRequest.setVer("2"); paymentQueryRequest.setVer("2");
com.freemud.application.sdk.api.base.BaseResponse<PaymentQueryResponse> queryResponseBaseResponse = paymentNewService.query(paymentQueryRequest,LogThreadLocal.getTrackingNo()); com.freemud.application.sdk.api.base.BaseResponse<PaymentQueryResponse> queryResponseBaseResponse = paymentNewService.query(paymentQueryRequest, LogThreadLocal.getTrackingNo());
//判断预支付订单状态 //判断预支付订单状态
if(ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), queryResponseBaseResponse.getCode())){ if (ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), queryResponseBaseResponse.getCode())) {
throw new ServiceException(ResponseResult.ORDER_PAY_GETPRE_MESSAGE_ERROR); throw new ServiceException(ResponseResult.ORDER_PAY_GETPRE_MESSAGE_ERROR);
} }
//判断当前预支付订单是否已经支付成功 //判断当前预支付订单是否已经支付成功
if(ObjectUtils.equals(TradeState.SUCCESS.getCode(), queryResponseBaseResponse.getData().getTradeState())){ if (ObjectUtils.equals(TradeState.SUCCESS.getCode(), queryResponseBaseResponse.getData().getTradeState())) {
throw new ServiceException(ResponseResult.ORDER_HAS_PAID); throw new ServiceException(ResponseResult.ORDER_HAS_PAID);
} }
// 3.取消前一个预支付订单 调用支付取消预支付订单,如果预支付订单已经取消了再调用取消预支付订单接口会报错的 // 3.取消前一个预支付订单 调用支付取消预支付订单,如果预支付订单已经取消了再调用取消预支付订单接口会报错的
if(ObjectUtils.equals(TradeState.NOTPAY.getCode(), queryResponseBaseResponse.getData().getTradeState())) { if (ObjectUtils.equals(TradeState.NOTPAY.getCode(), queryResponseBaseResponse.getData().getTradeState())) {
PaymentCloseUnifiedOrderRequest closeUnifiedOrderRequest = new PaymentCloseUnifiedOrderRequest(); PaymentCloseUnifiedOrderRequest closeUnifiedOrderRequest = new PaymentCloseUnifiedOrderRequest();
closeUnifiedOrderRequest.setFmId(extInfo.getFmId()); closeUnifiedOrderRequest.setFmId(extInfo.getFmId());
closeUnifiedOrderRequest.setVer("2"); closeUnifiedOrderRequest.setVer("2");
closeUnifiedOrderRequest.setPartnerId(orderBean.getCompanyId()); closeUnifiedOrderRequest.setPartnerId(orderBean.getCompanyId());
closeUnifiedOrderRequest.setStoreId(orderBean.getShopId()); closeUnifiedOrderRequest.setStoreId(orderBean.getShopId());
com.freemud.application.sdk.api.base.BaseResponse<PaymentCloseUnifiedOrderResponse> cancelNewUnifiedOrder = paymentNewService.cancelNewUnifiedOrder(closeUnifiedOrderRequest,LogThreadLocal.getTrackingNo()); com.freemud.application.sdk.api.base.BaseResponse<PaymentCloseUnifiedOrderResponse> cancelNewUnifiedOrder = paymentNewService.cancelNewUnifiedOrder(closeUnifiedOrderRequest, LogThreadLocal.getTrackingNo());
if(ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(),cancelNewUnifiedOrder.getCode())){ if (ObjectUtils.notEqual(ResponseResult.SUCCESS.getCode(), cancelNewUnifiedOrder.getCode())) {
throw new ServiceException(ResponseResult.ORDER_PRE_PAYMENT_CLOSE_FAILED); throw new ServiceException(ResponseResult.ORDER_PRE_PAYMENT_CLOSE_FAILED);
} }
} }
...@@ -287,7 +324,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -287,7 +324,7 @@ public class AppOrderServiceImpl implements AppOrderService {
* 查询商品信息 * 查询商品信息
*/ */
public ShoppingCartGoodsDto checkOrderProduct(String partnerId, String shopId, List<OrderProductVo> orderProducts, public ShoppingCartGoodsDto checkOrderProduct(String partnerId, String shopId, List<OrderProductVo> orderProducts,
String menuType,Integer reachStoreType) { String menuType, Integer reachStoreType) {
ShoppingCartGoodsDto shoppingCartGoodsDto = new ShoppingCartGoodsDto(); ShoppingCartGoodsDto shoppingCartGoodsDto = new ShoppingCartGoodsDto();
...@@ -353,7 +390,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -353,7 +390,7 @@ public class AppOrderServiceImpl implements AppOrderService {
cartGoodsDetailDto.setUnit(productBeanDTO.getUnit()); cartGoodsDetailDto.setUnit(productBeanDTO.getUnit());
List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> extraList = new ArrayList<>(); List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> extraList = new ArrayList<>();
if(CollectionUtils.isNotEmpty(op.getExtra())){ if (CollectionUtils.isNotEmpty(op.getExtra())) {
for (OrderProductExtraVo orderProductExtraVo : op.getExtra()) { for (OrderProductExtraVo orderProductExtraVo : op.getExtra()) {
ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra cartGoodsExtra = new ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra(); ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra cartGoodsExtra = new ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra();
cartGoodsExtra.setAttributeId(orderProductExtraVo.getAttributeId()); cartGoodsExtra.setAttributeId(orderProductExtraVo.getAttributeId());
...@@ -401,7 +438,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -401,7 +438,7 @@ public class AppOrderServiceImpl implements AppOrderService {
cartGoodsDetailDto.setUnit(productBeanDTO.getUnit()); cartGoodsDetailDto.setUnit(productBeanDTO.getUnit());
List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> extraList = new ArrayList<>(); List<ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra> extraList = new ArrayList<>();
if(CollectionUtils.isNotEmpty(op.getExtra())){ if (CollectionUtils.isNotEmpty(op.getExtra())) {
for (OrderProductExtraVo orderProductExtraVo : op.getExtra()) { for (OrderProductExtraVo orderProductExtraVo : op.getExtra()) {
ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra cartGoodsExtra = new ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra(); ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra cartGoodsExtra = new ShoppingCartGoodsDto.CartGoodsDetailDto.CartGoodsExtra();
cartGoodsExtra.setAttributeId(orderProductExtraVo.getAttributeId()); cartGoodsExtra.setAttributeId(orderProductExtraVo.getAttributeId());
...@@ -418,9 +455,10 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -418,9 +455,10 @@ public class AppOrderServiceImpl implements AppOrderService {
} }
if(StringUtils.isNotBlank(cartGoodsDetailDto.getSpuId())) if (StringUtils.isNotBlank(cartGoodsDetailDto.getSpuId())) {
products.add(cartGoodsDetailDto); products.add(cartGoodsDetailDto);
} }
}
shoppingCartGoodsDto.setProducts(products); shoppingCartGoodsDto.setProducts(products);
...@@ -429,7 +467,7 @@ public class AppOrderServiceImpl implements AppOrderService { ...@@ -429,7 +467,7 @@ public class AppOrderServiceImpl implements AppOrderService {
shoppingCartGoodsDto.setTotalAmount(totalAmount); shoppingCartGoodsDto.setTotalAmount(totalAmount);
// shoppingCartGoodsDto.setTotalDiscountAmount(0L); // shoppingCartGoodsDto.setTotalDiscountAmount(0L);
//堂食无包装费 //堂食无包装费
if(reachStoreType != null && reachStoreType != 5){ if (reachStoreType != null && reachStoreType != 5) {
shoppingCartGoodsDto.setPackageAmount(packageAmount); shoppingCartGoodsDto.setPackageAmount(packageAmount);
} }
//积分抵扣 //积分抵扣
......
...@@ -6,10 +6,7 @@ import cn.freemud.base.log.LogTreadLocal; ...@@ -6,10 +6,7 @@ import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.constant.ResponseCodeConstant; import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.ConfirmOrderDto; import cn.freemud.entities.dto.ConfirmOrderDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto; import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.vo.AppCreateOrderVo; import cn.freemud.entities.vo.*;
import cn.freemud.entities.vo.CreateOrderVo;
import cn.freemud.entities.vo.CreatePrepayVo;
import cn.freemud.entities.vo.PaysuccessNoticeMessage;
import cn.freemud.entities.vo.encircle.CreateReserveOrderVo; import cn.freemud.entities.vo.encircle.CreateReserveOrderVo;
import cn.freemud.enums.*; import cn.freemud.enums.*;
import cn.freemud.interceptor.ServiceException; import cn.freemud.interceptor.ServiceException;
...@@ -31,6 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -31,6 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Arrays; import java.util.Arrays;
import java.util.Map; import java.util.Map;
...@@ -89,6 +87,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -89,6 +87,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
private SellCouponOrderServiceImpl sellCouponOrderService; private SellCouponOrderServiceImpl sellCouponOrderService;
@Value("${saas.autoRefund.client}") @Value("${saas.autoRefund.client}")
private String autoRefundClient; private String autoRefundClient;
@Override @Override
public BaseResponse createOrderNew(CreateOrderVo createOrderVo) { public BaseResponse createOrderNew(CreateOrderVo createOrderVo) {
AssortmentCustomerInfoVo assortmentCustomerInfoVo = assortmentCustomerInfoManager.getCustomerInfoByObject(createOrderVo.getSessionId()); AssortmentCustomerInfoVo assortmentCustomerInfoVo = assortmentCustomerInfoManager.getCustomerInfoByObject(createOrderVo.getSessionId());
...@@ -97,7 +96,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -97,7 +96,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
} }
// 扩展字段中存储 sessionKey // 扩展字段中存储 sessionKey
createOrderVo.setSessionKey(assortmentCustomerInfoVo.getSessionKey()); createOrderVo.setSessionKey(assortmentCustomerInfoVo.getSessionKey());
if(IappIdType.WC_XCX.getCode().equals(assortmentCustomerInfoVo.getIappId())){ //i围餐 if (IappIdType.WC_XCX.getCode().equals(assortmentCustomerInfoVo.getIappId())) { //i围餐
BaseResponse baseResponse = null; BaseResponse baseResponse = null;
CreateReserveOrderVo createReserveOrderVo = new CreateReserveOrderVo(); CreateReserveOrderVo createReserveOrderVo = new CreateReserveOrderVo();
createReserveOrderVo.setCarVer(createOrderVo.getCarVer()); createReserveOrderVo.setCarVer(createOrderVo.getCarVer());
...@@ -107,8 +106,10 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -107,8 +106,10 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
createReserveOrderVo.setCouponCode(createOrderVo.getCouponCode()); createReserveOrderVo.setCouponCode(createOrderVo.getCouponCode());
createReserveOrderVo.setUseCustomerScore(createOrderVo.getUseCustomerScore()); createReserveOrderVo.setUseCustomerScore(createOrderVo.getUseCustomerScore());
createReserveOrderVo.setCardCode(createOrderVo.getCardCode()); createReserveOrderVo.setCardCode(createOrderVo.getCardCode());
if(createOrderVo.getOperation() == null) throw new ServiceException(ResponseResult.ORDER_CREATE_OPERATION_ERROR); if (createOrderVo.getOperation() == null) {
switch (createOrderVo.getOperation()){ throw new ServiceException(ResponseResult.ORDER_CREATE_OPERATION_ERROR);
}
switch (createOrderVo.getOperation()) {
case 2:// 开台 case 2:// 开台
baseResponse = encircleOrderService.createReserveOrder(createOrderVo); baseResponse = encircleOrderService.createReserveOrder(createOrderVo);
break; break;
...@@ -127,7 +128,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -127,7 +128,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
/** /**
* 商城订单 * 商城订单
*/ */
if(OrderChannelType.SAASMALL.getCode().equals(createOrderVo.getChannelType())) { if (OrderChannelType.SAASMALL.getCode().equals(createOrderVo.getChannelType())) {
return mallOrderService.createOrder(createOrderVo); return mallOrderService.createOrder(createOrderVo);
} }
...@@ -140,7 +141,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -140,7 +141,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
//原标准点餐程序逻辑处理 //原标准点餐程序逻辑处理
BaseResponse baseResponse = this.checkStandardParamInfo(createOrderVo); BaseResponse baseResponse = this.checkStandardParamInfo(createOrderVo);
if(ObjectUtils.notEqual(baseResponse.getCode(),ResponseResult.SUCCESS.getCode())){ if (ObjectUtils.notEqual(baseResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return baseResponse; return baseResponse;
} }
...@@ -149,7 +150,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -149,7 +150,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
String createOrderKey = CREATE_ORDER_KEY + assortmentCustomerInfoVo.getMemberId(); String createOrderKey = CREATE_ORDER_KEY + assortmentCustomerInfoVo.getMemberId();
try { try {
Long expire = Long.valueOf(createOrderKeyExpire); Long expire = Long.valueOf(createOrderKeyExpire);
if(!LockUtils.lock(redisCache.getRedisTemplate(),createOrderKey,expire)){ if (!LockUtils.lock(redisCache.getRedisTemplate(), createOrderKey, expire)) {
return ResponseUtil.error(ResponseResult.ORDER_NOT_CREATE_ERROR); return ResponseUtil.error(ResponseResult.ORDER_NOT_CREATE_ERROR);
} }
return orderService.createOrderNew(createOrderVo); return orderService.createOrderNew(createOrderVo);
...@@ -167,7 +168,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -167,7 +168,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
if (assortmentCustomerInfoVo == null || StringUtils.isEmpty(assortmentCustomerInfoVo.getMemberId())) { if (assortmentCustomerInfoVo == null || StringUtils.isEmpty(assortmentCustomerInfoVo.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN); return ResponseUtil.error(ResponseResult.NOT_LOGIN);
} }
if(!mcCafePartnerId.equals(assortmentCustomerInfoVo.getPartnerId())) { if (!mcCafePartnerId.equals(assortmentCustomerInfoVo.getPartnerId())) {
return ResponseUtil.error(ResponseResult.LOGIN_STORE_ERROR); return ResponseUtil.error(ResponseResult.LOGIN_STORE_ERROR);
} }
// 扩展字段中存储 sessionKey // 扩展字段中存储 sessionKey
...@@ -175,7 +176,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -175,7 +176,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
//原标准点餐程序逻辑处理 //原标准点餐程序逻辑处理
BaseResponse baseResponse = this.checkStandardParamInfo(createOrderVo); BaseResponse baseResponse = this.checkStandardParamInfo(createOrderVo);
if(ObjectUtils.notEqual(baseResponse.getCode(),ResponseResult.SUCCESS.getCode())){ if (ObjectUtils.notEqual(baseResponse.getCode(), ResponseResult.SUCCESS.getCode())) {
return baseResponse; return baseResponse;
} }
...@@ -184,7 +185,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -184,7 +185,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
String createOrderKey = CREATE_ORDER_KEY + assortmentCustomerInfoVo.getMemberId(); String createOrderKey = CREATE_ORDER_KEY + assortmentCustomerInfoVo.getMemberId();
try { try {
Long expire = Long.valueOf(createOrderKeyExpire); Long expire = Long.valueOf(createOrderKeyExpire);
if(!LockUtils.lock(redisCache.getRedisTemplate(),createOrderKey,expire)){ if (!LockUtils.lock(redisCache.getRedisTemplate(), createOrderKey, expire)) {
return ResponseUtil.error(ResponseResult.ORDER_NOT_CREATE_ERROR); return ResponseUtil.error(ResponseResult.ORDER_NOT_CREATE_ERROR);
} }
return mcCafeOrderService.createMCCafeOrder(createOrderVo); return mcCafeOrderService.createMCCafeOrder(createOrderVo);
...@@ -204,17 +205,17 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -204,17 +205,17 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
if (UserLoginChannelEnum.APP.getCode().equals(assortmentCustomerInfoVo.getChannel())) { if (UserLoginChannelEnum.APP.getCode().equals(assortmentCustomerInfoVo.getChannel())) {
return appOrderService.createPrepay(createPrepayVo); return appOrderService.createPrepay(createPrepayVo);
} }
throw new UnsupportedOperationException("暂不支持渠道:"+assortmentCustomerInfoVo.getChannel()); throw new UnsupportedOperationException("暂不支持渠道:" + assortmentCustomerInfoVo.getChannel());
} }
@Override @Override
public String paySuccessCallback(PaysuccessNoticeMessage message) { public String paySuccessCallback(PaysuccessNoticeMessage message) {
if (StringUtils.isEmpty(message.getTrans_id())){ if (StringUtils.isEmpty(message.getTrans_id())) {
return orderAdapter.newSendPayFaileMessage(); return orderAdapter.newSendPayFaileMessage();
} }
//添加分布式锁,如果没有取得锁直接返回失败;整个方法执行完毕后会删掉该锁 //添加分布式锁,如果没有取得锁直接返回失败;整个方法执行完毕后会删掉该锁
String paySuccessKey = PAY_SUCCESS_KEY + message.getTrans_id(); String paySuccessKey = PAY_SUCCESS_KEY + message.getTrans_id();
if(!LockUtils.lockAfter(redisCache.getRedisTemplate(), paySuccessKey)){ if (!LockUtils.lockAfter(redisCache.getRedisTemplate(), paySuccessKey)) {
return orderAdapter.newSendPayFaileMessage(); return orderAdapter.newSendPayFaileMessage();
} }
try { try {
...@@ -230,12 +231,12 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -230,12 +231,12 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
log.error("paySuccessCallback_queryOrderById_faild, trackingNo:{},PaysuccessNoticeMessage:{}", LogTreadLocal.getTrackingNo(), gson.toJson(message)); log.error("paySuccessCallback_queryOrderById_faild, trackingNo:{},PaysuccessNoticeMessage:{}", LogTreadLocal.getTrackingNo(), gson.toJson(message));
return gson.toJson(message); return gson.toJson(message);
} }
QueryOrdersResponseDto.DataBean.OrderBean orderBean = orderBeans.get(OrderBeanType.SAASORDER.getCode()); QueryOrdersResponseDto.DataBean.OrderBean orderBean = orderBeans.get(OrderBeanType.SAASORDER.getCode());//todo
// 混合支付失败,取消订单 // 混合支付失败,取消订单
if (!message.getResult_code().equals(ResponseCodeConstant.RESPONSE_SUCCESS)) { if (!message.getResult_code().equals(ResponseCodeConstant.RESPONSE_SUCCESS)) {
return orderService.cannelComPayOrder(confirmOrderDto, orderBean); return orderService.cannelComPayOrder(confirmOrderDto, orderBean);
} }
if (!PayStatus.NOT_PAY.getCode().equals(orderBean.getPayStatus())){ if (!PayStatus.NOT_PAY.getCode().equals(orderBean.getPayStatus())) {
return orderAdapter.sendPaySuccessNoticeMessage(); return orderAdapter.sendPaySuccessNoticeMessage();
} }
Integer client = OrderSourceType.getClientByCode(orderBean.getSource()); Integer client = OrderSourceType.getClientByCode(orderBean.getSource());
...@@ -253,21 +254,24 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -253,21 +254,24 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
/** /**
* 微商城处理 * 微商城处理
*/ */
if(OrderSourceType.SAASMALL.getCode().equals(orderBean.getSource())) { if (OrderSourceType.SAASMALL.getCode().equals(orderBean.getSource())) {
return mallOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans); return mallOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans);
} }
/** /**
* app订单处理 * app订单处理
*/ */
if(OrderSourceType.APP.getCode().equals(orderBean.getSource())) { if (OrderSourceType.APP.getCode().equals(orderBean.getSource())) {
if(orderBean.getBizType() == 6){
return sellCouponOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans);
}
return appOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans); return appOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans);
} }
//买券虚拟订单 //买券虚拟订单
if(orderBean.getBizType() == 6) { if (orderBean.getBizType() == 6) {
return sellCouponOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans); return sellCouponOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans);
} }
//麦咖啡订单处理 //麦咖啡订单处理
if(mcCafePartnerId.equals(orderBean.getCompanyId())) { if (mcCafePartnerId.equals(orderBean.getCompanyId())) {
return mcCafeOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans); return mcCafeOrderService.paySuccessCallback(message, confirmOrderDto, orderBeans);
} }
/** /**
...@@ -286,7 +290,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -286,7 +290,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
public String mcCafePaySuccessCallback(PaysuccessNoticeMessage message) { public String mcCafePaySuccessCallback(PaysuccessNoticeMessage message) {
//添加分布式锁,如果没有取得锁直接返回失败;整个方法执行完毕后会删掉该锁 //添加分布式锁,如果没有取得锁直接返回失败;整个方法执行完毕后会删掉该锁
String paySuccessKey = PAY_SUCCESS_KEY + message.getTrans_id(); String paySuccessKey = PAY_SUCCESS_KEY + message.getTrans_id();
if(!LockUtils.lockAfter(redisCache.getRedisTemplate(), paySuccessKey)){ if (!LockUtils.lockAfter(redisCache.getRedisTemplate(), paySuccessKey)) {
return orderAdapter.newSendPayFaileMessage(); return orderAdapter.newSendPayFaileMessage();
} }
try { try {
...@@ -303,7 +307,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -303,7 +307,7 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
return gson.toJson(message); return gson.toJson(message);
} }
QueryOrdersResponseDto.DataBean.OrderBean orderBean = orderBeans.get(OrderBeanType.SAASORDER.getCode()); QueryOrdersResponseDto.DataBean.OrderBean orderBean = orderBeans.get(OrderBeanType.SAASORDER.getCode());
if (!PayStatus.NOT_PAY.getCode().equals(orderBean.getPayStatus())){ if (!PayStatus.NOT_PAY.getCode().equals(orderBean.getPayStatus())) {
return orderAdapter.sendPaySuccessNoticeMessage(); return orderAdapter.sendPaySuccessNoticeMessage();
} }
/** /**
...@@ -318,34 +322,64 @@ public class OrderAdapterServiceImpl implements OrderAdapterService { ...@@ -318,34 +322,64 @@ public class OrderAdapterServiceImpl implements OrderAdapterService {
} }
} }
/** /**
* APP下单,下单带商品信息,不经过购物车服务,不唤起支付 * APP下单,下单带商品信息,不经过购物车服务,不唤起支付
*/ */
@Override @Override
public BaseResponse appCreateOrder(AppCreateOrderVo createOrderVo) { public BaseResponse appCreateOrder(AppCreateOrderVo createOrderVo) {
//蜜雪业务新增APP购买虚拟券,此处判断分支->蜜雪买券逻辑走平台买券逻辑20210108 向下还存在发起支付分之判断 wanghanghang
// if("6".equals(createOrderVo.getBizType())){
// SellCouponCreateOrderVo sellCouponCreateOrderVo = conversionObjByAppCreateOrderVo(createOrderVo);
// return sellCouponOrderService.createOrder(sellCouponCreateOrderVo);
// }
AssortmentCustomerInfoVo assortmentCustomerInfoVo = assortmentCustomerInfoManager.getCustomerInfoByObject(createOrderVo.getSessionId()); AssortmentCustomerInfoVo assortmentCustomerInfoVo = assortmentCustomerInfoManager.getCustomerInfoByObject(createOrderVo.getSessionId());
if (assortmentCustomerInfoVo == null || StringUtils.isEmpty(assortmentCustomerInfoVo.getMemberId())) { if (assortmentCustomerInfoVo == null || StringUtils.isEmpty(assortmentCustomerInfoVo.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN); return ResponseUtil.error(ResponseResult.NOT_LOGIN);
} }
if (UserLoginChannelEnum.APP.getCode().equals(assortmentCustomerInfoVo.getChannel())) { if (UserLoginChannelEnum.APP.getCode().equals(assortmentCustomerInfoVo.getChannel())) {
return appOrderService.createOrder(createOrderVo,assortmentCustomerInfoVo); return appOrderService.createOrder(createOrderVo, assortmentCustomerInfoVo);
} }
return ResponseUtil.error(ResponseResult.PARAMETER_MISSING); return ResponseUtil.error(ResponseResult.PARAMETER_MISSING);
} }
/**
* 20210107 wanghanghang
* 蜜雪业务新增APP购买虚拟券,此处在APP下单时,调用平台买券业务进行对象转换
*
* @param createOrderVo
* @return
*/
// private SellCouponCreateOrderVo conversionObjByAppCreateOrderVo(AppCreateOrderVo createOrderVo) {
// SellCouponCreateOrderVo sellCouponCreateOrderVo = new SellCouponCreateOrderVo();
// sellCouponCreateOrderVo.setBizType(createOrderVo.getBizType() + "");
// sellCouponCreateOrderVo.setSessionId(createOrderVo.getSessionId());
// sellCouponCreateOrderVo.setShopId(createOrderVo.getShopId());
// //获取商品集合里的虚拟商品skuid
// //sellCouponCreateOrderVo.setSkuId(createOrderVo.getOrderProducts().get(0).getSkuId());
// sellCouponCreateOrderVo.setSkuId(createOrderVo.getSkuId());
// sellCouponCreateOrderVo.setCardCode(null);
// sellCouponCreateOrderVo.setMenuType(createOrderVo.getMenuType());
// sellCouponCreateOrderVo.setChannel("");
// sellCouponCreateOrderVo.setVersion(createOrderVo.getVersion());
// return sellCouponCreateOrderVo;
// }
/** /**
* 标准点餐参数校验 * 标准点餐参数校验
*
* @param createOrderVo * @param createOrderVo
* @return * @return
*/ */
private BaseResponse checkStandardParamInfo(CreateOrderVo createOrderVo){ private BaseResponse checkStandardParamInfo(CreateOrderVo createOrderVo) {
if(StringUtils.isEmpty(createOrderVo.getSessionId())){ if (StringUtils.isEmpty(createOrderVo.getSessionId())) {
return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_SESSION_ERROR); return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_SESSION_ERROR);
} }
if(StringUtils.isEmpty(createOrderVo.getShopId())){ if (StringUtils.isEmpty(createOrderVo.getShopId())) {
return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_STORE_ERROR); return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_STORE_ERROR);
} }
if(createOrderVo.getOrderType() == null){ if (createOrderVo.getOrderType() == null) {
return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_ORDERTYPE_ERROR); return ResponseUtil.error(ResponseResult.CREATE_ORDER_CHECK_ORDERTYPE_ERROR);
} }
return ResponseUtil.success(); return ResponseUtil.success();
......
...@@ -5,6 +5,7 @@ import cn.freemud.adapter.OrderAdapter; ...@@ -5,6 +5,7 @@ import cn.freemud.adapter.OrderAdapter;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.base.util.DateUtil; import cn.freemud.base.util.DateUtil;
import cn.freemud.constant.CommonRedisKeyConstant; import cn.freemud.constant.CommonRedisKeyConstant;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.Active; import cn.freemud.entities.Active;
import cn.freemud.entities.dto.*; import cn.freemud.entities.dto.*;
import cn.freemud.entities.dto.order.CreatePrepayRequestDto; import cn.freemud.entities.dto.order.CreatePrepayRequestDto;
...@@ -149,44 +150,50 @@ public class SellCouponOrderServiceImpl { ...@@ -149,44 +150,50 @@ public class SellCouponOrderServiceImpl {
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号 // 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
checkOrder.checkOrderByStore(storeResponseDto); checkOrder.checkOrderByStore(storeResponseDto);
GetProductInfoRequest request = new GetProductInfoRequest(); // GetProductInfoRequest request = new GetProductInfoRequest();
request.setChannel(requestVo.getMenuType()); // request.setChannel(requestVo.getMenuType());
request.setPartnerId(partnerId); // request.setPartnerId(partnerId);
request.setProductInfoType(2); // request.setProductInfoType(2);
request.setShopId(storeId); // request.setShopId(storeId);
request.setProductIds(Lists.newArrayList(requestVo.getSkuId())); // request.setProductIds(Lists.newArrayList(requestVo.getSkuId()));
//获取商品(里面的活动) // //获取商品(里面的活动)
com.freemud.application.sdk.api.base.BaseResponse<GetProductInfosResponse> productInfosByIds = menuService.getProductInfosByIds(request, trackingNo); // com.freemud.application.sdk.api.base.BaseResponse<GetProductInfosResponse> productInfosByIds = menuService.getProductInfosByIds(request, trackingNo);
if(!SUCCESS.equals(productInfosByIds.getCode()) || productInfosByIds.getData() == null || CollectionUtils.isEmpty(productInfosByIds.getData().getProducts())){ // if(!SUCCESS.equals(productInfosByIds.getCode()) || productInfosByIds.getData() == null || CollectionUtils.isEmpty(productInfosByIds.getData().getProducts())){
return ResponseUtil.error(ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getCode(),ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getMessage()); // return ResponseUtil.error(ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getCode(),ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getMessage());
} // }
List<GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType> productBindingCoupons = productInfosByIds.getData().getProducts().get(0).getProductBindingCouponTypes(); // List<GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType> productBindingCoupons = productInfosByIds.getData().getProducts().get(0).getProductBindingCouponTypes();
if(CollectionUtils.isEmpty(productBindingCoupons)){ // if(CollectionUtils.isEmpty(productBindingCoupons)){
return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD); // return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
} // }
//
List<String> activityCodes = new ArrayList<>(); // List<String> activityCodes = new ArrayList<>();
for (GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType productBindingCouponType : productBindingCoupons){ // for (GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType productBindingCouponType : productBindingCoupons){
activityCodes.add(productBindingCouponType.getActivityCode()); // activityCodes.add(productBindingCouponType.getActivityCode());
} // }
//
// List<ActiveDetailVO> activeDetailVOS = batchQueryActivityInfo(partnerId, activityCodes, trackingNo);
// if(CollectionUtils.isEmpty(activeDetailVOS) || activityCodes.size() != activeDetailVOS.size()){
// return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
// }
// Date now = new Date();
// for (ActiveDetailVO activeDetailVO : activeDetailVOS){
// if(activeDetailVO.getEffectiveEndTime() != null && activeDetailVO.getEffectiveEndTime().before(now)){
// return ResponseUtil.error(ResponseResult.COUPON_INVAILD);
// }
// }
BaseResponse createOrderRequestResponse = checkOrderCoupon(userLoginInfoDto, storeResponse, trackingNo, requestVo.getMenuType(), Integer.valueOf(requestVo.getBizType()), partnerId, storeId, requestVo.getSkuId(),requestVo.getCardCode());
if (createOrderRequestResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderRequestResponse.getCode()) || createOrderRequestResponse.getResult() == null) {
return createOrderRequestResponse;
}
CreateOrderRequest createOrderRequest = (CreateOrderRequest) createOrderRequestResponse.getResult();
List<ActiveDetailVO> activeDetailVOS = batchQueryActivityInfo(partnerId, activityCodes, trackingNo);
if(CollectionUtils.isEmpty(activeDetailVOS) || activityCodes.size() != activeDetailVOS.size()){
return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
}
Date now = new Date();
for (ActiveDetailVO activeDetailVO : activeDetailVOS){
if(activeDetailVO.getEffectiveEndTime() != null && activeDetailVO.getEffectiveEndTime().before(now)){
return ResponseUtil.error(ResponseResult.COUPON_INVAILD);
}
}
CreateOrderRequest createOrderRequest = convent2NEWCreateOrderRequest(requestVo,userLoginInfoDto,productInfosByIds.getData(),activeDetailVOS,storeResponse.getBizVO());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> orderInfoReqsBaseResponse = orderSdkService.createOrder(createOrderRequest, trackingNo); com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> orderInfoReqsBaseResponse = orderSdkService.createOrder(createOrderRequest, trackingNo);
CreateOrderResponse createOrderResponse = orderSdkAdapter.convent2NEWOrderInfoReqs(orderInfoReqsBaseResponse); CreateOrderResponse createOrderResponse = orderSdkAdapter.convent2NEWOrderInfoReqs(orderInfoReqsBaseResponse);
if(createOrderResponse == null || createOrderResponse.getErrcode() != 100){ if (createOrderResponse == null || createOrderResponse.getErrcode() != 100) {
return ResponseUtil.error(ResponseResult.ORDER_CREATE_ERROR); return ResponseUtil.error(ResponseResult.ORDER_CREATE_ERROR);
} }
//创建支付 //创建支付
CreatePrepayRequestDto createPrepayRequestDto = new CreatePrepayRequestDto(); CreatePrepayRequestDto createPrepayRequestDto = new CreatePrepayRequestDto();
createPrepayRequestDto.setPartnerId(partnerId); createPrepayRequestDto.setPartnerId(partnerId);
...@@ -232,15 +239,75 @@ public class SellCouponOrderServiceImpl { ...@@ -232,15 +239,75 @@ public class SellCouponOrderServiceImpl {
} }
public BaseResponse ngsCouponOrderCreate(NgsSellCouponCreateOrderVo requestVo){ /**
* 效验虚拟商品活动信息
* @param userLoginInfoDto
* @param storeResponse
* @param trackingNo
* @param menuType
* @param bizType
* @param partnerId
* @param storeId
* @param skuId
* @param cardCode
* @return
*/
public BaseResponse checkOrderCoupon(AssortmentCustomerInfoVo userLoginInfoDto,
StoreResponse storeResponse,
String trackingNo,
String menuType,
Integer bizType,
String partnerId,
String storeId,
String skuId,String cardCode) {
GetProductInfoRequest request = new GetProductInfoRequest();
request.setChannel(menuType);
request.setPartnerId(partnerId);
request.setProductInfoType(2);
request.setShopId(storeId);
request.setProductIds(Lists.newArrayList(skuId));
//获取商品(里面的活动)
com.freemud.application.sdk.api.base.BaseResponse<GetProductInfosResponse> productInfosByIds = menuService.getProductInfosByIds(request, trackingNo);
if (!ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(productInfosByIds.getCode()) || productInfosByIds.getData() == null || CollectionUtils.isEmpty(productInfosByIds.getData().getProducts())) {
return ResponseUtil.error(ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getCode(), ResponseResultEnum.GET_PRODUCT_INFOS_ERROR.getMessage());
}
//效验商品券是否有效
List<GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType> productBindingCoupons = productInfosByIds.getData().getProducts().get(0).getProductBindingCouponTypes();
if (CollectionUtils.isEmpty(productBindingCoupons)) {
return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
}
List<String> activityCodes = new ArrayList<>();
for (GetMenuCategoryInfoResponse.RootNodeBean.ChildrenBeanFirst.ChildrenBeanSecond.ProductBean.ProductBindingCouponType productBindingCouponType : productBindingCoupons) {
activityCodes.add(productBindingCouponType.getActivityCode());
}
//批量查询活动详情
List<ActiveDetailVO> activeDetailVOS = batchQueryActivityInfo(partnerId, activityCodes, trackingNo);
if (CollectionUtils.isEmpty(activeDetailVOS) || activityCodes.size() != activeDetailVOS.size()) {
return ResponseUtil.error(ResponseResult.STORE_ITEM_CHECK_INVAILD);
}
//优惠券是否失效
Date now = new Date();
for (ActiveDetailVO activeDetailVO : activeDetailVOS) {
if (activeDetailVO.getEffectiveEndTime() != null && activeDetailVO.getEffectiveEndTime().before(now)) {
return ResponseUtil.error(ResponseResult.COUPON_INVAILD);
}
}
//转换CreateOrderRequest对象
CreateOrderRequest createOrderRequest = convent2NEWCreateOrderRequest(userLoginInfoDto,
productInfosByIds.getData(),
activeDetailVOS,
storeResponse.getBizVO(),storeId,cardCode,skuId,menuType,bizType);
return ResponseUtil.success(createOrderRequest);
}
public BaseResponse ngsCouponOrderCreate(NgsSellCouponCreateOrderVo requestVo){
// 查询用户信息、校验svc卡 // 查询用户信息、校验svc卡
AssortmentCustomerInfoVo userLoginInfoDto = checkOrder.getMemberNew(requestVo.getSessionId()); AssortmentCustomerInfoVo userLoginInfoDto = checkOrder.getMemberNew(requestVo.getSessionId());
String trackingNo = LogThreadLocal.getTrackingNo(); String trackingNo = LogThreadLocal.getTrackingNo();
String partnerId = userLoginInfoDto.getPartnerId(); String partnerId = userLoginInfoDto.getPartnerId();
// 构建创建订单入参 // 构建创建订单入参
CreateOrderRequest createOrderRequest = ngsConvent2NEWCreateOrderRequest(requestVo,userLoginInfoDto); CreateOrderRequest createOrderRequest = ngsConvent2NEWCreateOrderRequest(requestVo,userLoginInfoDto);
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> orderInfoReqsBaseResponse = orderSdkService.createOrder(createOrderRequest, trackingNo); com.freemud.application.sdk.api.ordercenter.response.BaseResponse<OrderInfoReqs> orderInfoReqsBaseResponse = orderSdkService.createOrder(createOrderRequest, trackingNo);
...@@ -248,8 +315,6 @@ public class SellCouponOrderServiceImpl { ...@@ -248,8 +315,6 @@ public class SellCouponOrderServiceImpl {
if(createOrderResponse == null || createOrderResponse.getErrcode() != 100){ if(createOrderResponse == null || createOrderResponse.getErrcode() != 100){
return ResponseUtil.error(ResponseResult.ORDER_CREATE_ERROR); return ResponseUtil.error(ResponseResult.ORDER_CREATE_ERROR);
} }
//创建支付 //创建支付
CreatePrepayRequestDto createPrepayRequestDto = new CreatePrepayRequestDto(); CreatePrepayRequestDto createPrepayRequestDto = new CreatePrepayRequestDto();
createPrepayRequestDto.setPartnerId(partnerId); createPrepayRequestDto.setPartnerId(partnerId);
...@@ -262,11 +327,9 @@ public class SellCouponOrderServiceImpl { ...@@ -262,11 +327,9 @@ public class SellCouponOrderServiceImpl {
createPrepayRequestDto.setProductOrderBean(createOrderResponse.getData()); createPrepayRequestDto.setProductOrderBean(createOrderResponse.getData());
createPrepayRequestDto.setTotalAmount(createOrderRequest.getSettlementAmount()); createPrepayRequestDto.setTotalAmount(createOrderRequest.getSettlementAmount());
createPrepayRequestDto.setCardAmount(0); createPrepayRequestDto.setCardAmount(0);
OrderExtInfoDto orderExtInfoDto = new OrderExtInfoDto(); OrderExtInfoDto orderExtInfoDto = new OrderExtInfoDto();
String deliveryHoursDayStart = ""; String deliveryHoursDayStart = "";
String deliveryHoursDayEnd = ""; String deliveryHoursDayEnd = "";
orderExtInfoDto.setDeliveryHoursDayStart(deliveryHoursDayStart); orderExtInfoDto.setDeliveryHoursDayStart(deliveryHoursDayStart);
orderExtInfoDto.setDeliveryHoursDayEnd(deliveryHoursDayEnd); orderExtInfoDto.setDeliveryHoursDayEnd(deliveryHoursDayEnd);
orderExtInfoDto.setOpenid(userLoginInfoDto.getOpenId()); orderExtInfoDto.setOpenid(userLoginInfoDto.getOpenId());
...@@ -399,9 +462,27 @@ public class SellCouponOrderServiceImpl { ...@@ -399,9 +462,27 @@ public class SellCouponOrderServiceImpl {
return appKey; return appKey;
} }
private CreateOrderRequest convent2NEWCreateOrderRequest(SellCouponCreateOrderVo requestVo,AssortmentCustomerInfoVo userLoginInfoDto, /**
* 转换对象,从购买优惠券业务提出重写
* @param userLoginInfoDto
* @param productInfosResponse
* @param activeDetailVOS
* @param storeInfo
* @param shopId
* @param cardCode
* @param skuId
* @param channel
* @param bizType
* @return
*/
private CreateOrderRequest convent2NEWCreateOrderRequest(AssortmentCustomerInfoVo userLoginInfoDto,
GetProductInfosResponse productInfosResponse,List<ActiveDetailVO> activeDetailVOS, GetProductInfosResponse productInfosResponse,List<ActiveDetailVO> activeDetailVOS,
StoreResponse.BizVO storeInfo){ StoreResponse.BizVO storeInfo,
String shopId,
String cardCode,
String skuId,
String channel,
Integer bizType){
CreateOrderRequest request = new CreateOrderRequest(); CreateOrderRequest request = new CreateOrderRequest();
Integer orderClient = OrderClientType.SAAS.getIndex(); Integer orderClient = OrderClientType.SAAS.getIndex();
if(UserLoginChannelEnum.ALIPAY.getCode().equals(userLoginInfoDto.getChannel())){ if(UserLoginChannelEnum.ALIPAY.getCode().equals(userLoginInfoDto.getChannel())){
...@@ -411,16 +492,16 @@ public class SellCouponOrderServiceImpl { ...@@ -411,16 +492,16 @@ public class SellCouponOrderServiceImpl {
orderClient = OrderClientType.APP.getIndex(); orderClient = OrderClientType.APP.getIndex();
} }
//抖音小程序 //抖音小程序
if("5".equalsIgnoreCase(requestVo.getChannel())) { if("5".equalsIgnoreCase(channel)) {
request.setPayChannel(PayChannelType.TIKTOKPAY.getIndex().toString()); request.setPayChannel(PayChannelType.TIKTOKPAY.getIndex().toString());
orderClient = OrderClientType.TIKTOKPAY.getIndex(); orderClient = OrderClientType.TIKTOKPAY.getIndex();
} }
String partnerId = userLoginInfoDto.getPartnerId(); String partnerId = userLoginInfoDto.getPartnerId();
request.setOrderClient(orderClient); request.setOrderClient(orderClient);
request.setPartnerId(partnerId); request.setPartnerId(partnerId);
request.setStoreId(requestVo.getShopId()); request.setStoreId(shopId);
//买券虚拟订单 //买券虚拟订单
request.setBizType(6); request.setBizType(bizType == null ? 6 : bizType);
//1:线上支付 2:线下支付 //1:线上支付 2:线下支付
request.setPayType(1); request.setPayType(1);
request.setUserId(userLoginInfoDto.getMemberId()); request.setUserId(userLoginInfoDto.getMemberId());
...@@ -429,7 +510,7 @@ public class SellCouponOrderServiceImpl { ...@@ -429,7 +510,7 @@ public class SellCouponOrderServiceImpl {
request.setThirdStoreId(storeInfo.getThirdPartCode()); request.setThirdStoreId(storeInfo.getThirdPartCode());
request.setOrderState(1); request.setOrderState(1);
request.setPayState(1); request.setPayState(1);
if(StringUtils.isNotBlank(requestVo.getCardCode())){ if(StringUtils.isNotBlank(cardCode)){
request.setPayChannel("10102"); request.setPayChannel("10102");
request.setPayChannelName("储值卡支付"); request.setPayChannelName("储值卡支付");
} }
...@@ -448,8 +529,8 @@ public class SellCouponOrderServiceImpl { ...@@ -448,8 +529,8 @@ public class SellCouponOrderServiceImpl {
orderItemCreateReq.setProductPrice(productBean.getOriginalPrice()); orderItemCreateReq.setProductPrice(productBean.getOriginalPrice());
orderItemCreateReq.setSettlementPrice(productBean.getFinalPrice()); orderItemCreateReq.setSettlementPrice(productBean.getFinalPrice());
orderItemCreateReq.setPartnerId(partnerId); orderItemCreateReq.setPartnerId(partnerId);
orderItemCreateReq.setProductId(requestVo.getSkuId()); orderItemCreateReq.setProductId(skuId);
orderItemCreateReq.setProductSpec(requestVo.getSkuId()); orderItemCreateReq.setProductSpec(skuId);
orderItemCreateReq.setProductName(productBean.getName()); orderItemCreateReq.setProductName(productBean.getName());
orderItemCreateReq.setProductSpecName(productBean.getName()); orderItemCreateReq.setProductSpecName(productBean.getName());
orderItemCreateReq.setProductPicUrl(productBean.getPicture()); orderItemCreateReq.setProductPicUrl(productBean.getPicture());
...@@ -499,10 +580,10 @@ public class SellCouponOrderServiceImpl { ...@@ -499,10 +580,10 @@ public class SellCouponOrderServiceImpl {
request.setOrderExtended(orderAdapter.saveStoreInfo(storeInfo)); request.setOrderExtended(orderAdapter.saveStoreInfo(storeInfo));
request.setOperator(userLoginInfoDto.getNickName()); request.setOperator(userLoginInfoDto.getNickName());
request.setAppId(userLoginInfoDto.getWxAppId()); request.setAppId(userLoginInfoDto.getWxAppId());
if("5".equalsIgnoreCase(requestVo.getChannel().toString())){ if("5".equalsIgnoreCase(channel)){
request.setPayChannelType(PayChannelType.TIKTOKPAY.getIndex()); request.setPayChannelType(PayChannelType.TIKTOKPAY.getIndex());
} }
request.setPayChannel(requestVo.getChannel()); request.setPayChannel(channel);
return request; return request;
} }
......
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