Commit a82e5934 by 徐康

代码优化

parent 60b613cc
......@@ -4,6 +4,7 @@ import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.vo.CreateOrderBaseVo;
import com.freemud.api.assortment.datamanager.entity.vo.AssortmentCustomerInfoVo;
import com.freemud.application.sdk.api.membercenter.response.GetSvcInfoByMemberIdResponse;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtInfoDto;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
import lombok.Data;
......@@ -18,7 +19,9 @@ public class CreateOrderBo {
private ShoppingCartGoodsDto shoppingCartGoodsDto;
private StoreResponse storeResponseDto;
private StoreResponse.BizVO storeResponseDto;
private OrderExtInfoDto extInfo;
private List<GetSvcInfoByMemberIdResponse> svcInfoList;
}
......@@ -25,7 +25,7 @@ public class MemberPropertyManager {
public List<GetSvcInfoByMemberIdResponse> getSvcInfoByMemberId(StatisticalPropertyRequest request, String trackingNo) {
com.freemud.application.sdk.api.base.BaseResponse<List<GetSvcInfoByMemberIdResponse>> responseDTO = memberPropertyService.getSvcInfoByMemberId(request, LogThreadLocal.getTrackingNo());
com.freemud.application.sdk.api.base.BaseResponse<List<GetSvcInfoByMemberIdResponse>> responseDTO = memberPropertyService.getSvcInfoByMemberId(request, trackingNo);
if (!ResponseResult.SUCCESS.getCode().equals(responseDTO.getCode()) || responseDTO.getData() == null
|| responseDTO.getData().size() == 0) {
throw new ServiceException(ResponseResult.USER_SVC_CARD_ERROR);
......
......@@ -67,22 +67,13 @@ public abstract class UniversalOrderService {
public final BaseResponse createOrder(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto) {
String trackingNo = LogThreadLocal.getTrackingNo();
validParam(createOrderBaseVo);
CreateOrderBo createOrderBo = getCreateOrderBo(createOrderBaseVo, userLoginInfoDto);
CreateOrderBo createOrderBo = getCreateOrderBo(createOrderBaseVo, userLoginInfoDto, trackingNo);
checkCreateOrderParam(createOrderBo);
checkCreateOrderParam(createOrderBo, trackingNo);
//校验会员svc卡信息
checkCardCode(createOrderBaseVo, userLoginInfoDto);
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
ShoppingCartGoodsDto shoppingCartGoodsDto = checkShoppingCartGoodsDto(createOrderBaseVo);
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
StoreResponse.BizVO storeResponseDto = checkOrderByStore(createOrderBaseVo, trackingNo);
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
checkOrderByOrderType(createOrderBaseVo, userLoginInfoDto, storeResponseDto, shoppingCartGoodsDto, trackingNo);
OrderExtInfoDto extInfo = getExtInfo(userLoginInfoDto, storeResponseDto, 0, createOrderBaseVo, shoppingCartGoodsDto);
OrderExtInfoDto extInfo = getExtInfo(createOrderBo);
//1.9.2套餐需求同步优化创建订单代码
BaseResponse createOrderOperateDtoResponse = this.createSharedOrder(createOrderBaseVo, storeResponseDto, shoppingCartGoodsDto, userLoginInfoDto);
BaseResponse createOrderOperateDtoResponse = this.createSharedOrder(createOrderBo);
if (createOrderOperateDtoResponse == null || !ResponseResult.SUCCESS.getCode().equals(createOrderOperateDtoResponse.getCode()) || createOrderOperateDtoResponse.getResult() == null) {
return createOrderOperateDtoResponse;
}
......@@ -93,20 +84,29 @@ public abstract class UniversalOrderService {
return createPrepayOrder(createPrepayRequestDto);
}
public void checkCreateOrderParam(CreateOrderBo createOrderBo) {
checkUniversalCreateOrderParam(createOrderBo);
public void checkCreateOrderParam(CreateOrderBo createOrderBo, String trackingNo) {
checkUniversalCreateOrderParam(createOrderBo, trackingNo);
checkCustomCreateOrderParam(createOrderBo);
}
public void checkUniversalCreateOrderParam(CreateOrderBo createOrderBo) {
public void checkUniversalCreateOrderParam(CreateOrderBo createOrderBo, String trackingNo) {
//校验会员svc卡信息
checkCardCode(createOrderBo.getCreateOrderBaseVo(), createOrderBo.getUserLoginInfoDto());
// 查询购物车(内部校验券点餐方式,券是否可用) 校验当前订单类型的下单参数
ShoppingCartGoodsDto shoppingCartGoodsDto = checkShoppingCartGoodsDto(createOrderBo.getCreateOrderBaseVo());
createOrderBo.setShoppingCartGoodsDto(shoppingCartGoodsDto);
// 查询门店信息 营业时间、营业状态,服务器当前时间在营业时间内 点餐桌号
StoreResponse.BizVO storeResponseDto = checkOrderByStore(createOrderBo.getCreateOrderBaseVo(), trackingNo);
createOrderBo.setStoreResponseDto(storeResponseDto);
// 查询小程序自提外卖配置信息 校验当前订单类型的下单参数 校验外卖是否满足起送条件
checkOrderByOrderType(createOrderBo, trackingNo);
}
public abstract void checkCustomCreateOrderParam(CreateOrderBo createOrderBo);
public CreateOrderBo getCreateOrderBo(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto) {
public CreateOrderBo getCreateOrderBo(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto, String trackingNo) {
CreateOrderBo createOrderBo = new CreateOrderBo();
createOrderBo.setCreateOrderBaseVo(createOrderBaseVo);
createOrderBo.setUserLoginInfoDto(userLoginInfoDto);
......@@ -117,15 +117,6 @@ public abstract class UniversalOrderService {
}
public void getUniversalCreateOrderBo(CreateOrderBo createOrderBo) {
StatisticalPropertyRequest request = new StatisticalPropertyRequest();
request.setPartnerId(createOrderBo.getCreateOrderBaseVo().getPartnerId());
request.setMemberId(createOrderBo.getUserLoginInfoDto().getMemberId());
List<GetSvcInfoByMemberIdResponse> svcInfoList = memberPropertyManager.getSvcInfoByMemberId(request, LogThreadLocal.getTrackingNo());
createOrderBo.setSvcInfoList(svcInfoList);
// 获取门店信息
StoreResponse storeResponseDto = storeInfoManager.getStoreInfo(createOrderBo.getCreateOrderBaseVo().getPartnerId(), createOrderBo.getCreateOrderBaseVo().getShopId(), LogThreadLocal.getTrackingNo());
createOrderBo.setStoreResponseDto(storeResponseDto);
}
......@@ -133,7 +124,7 @@ public abstract class UniversalOrderService {
public abstract void validParam(CreateOrderBaseVo createOrderBaseVo);
public abstract BaseResponse createSharedOrder(CreateOrderBaseVo createOrderBaseVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, AssortmentCustomerInfoVo userLoginInfoDto);
public abstract BaseResponse createSharedOrder(CreateOrderBo createOrderBo);
public void checkCardCode(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto) {
if (StringUtils.isBlank(createOrderBaseVo.getCardCode())) {
......@@ -199,25 +190,30 @@ public abstract class UniversalOrderService {
/**
* 下单订单类型校验
*/
public Integer checkOrderByOrderType(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto,
StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, String trackingNo) {
Integer pushTime = checkOrderByOrderTypeUniversal(createOrderBaseVo, userLoginInfoDto, storeResponseDto, shoppingCartGoodsDto, trackingNo);
checkOrderByOrderTypeCustom(createOrderBaseVo, userLoginInfoDto, storeResponseDto, shoppingCartGoodsDto, trackingNo);
return pushTime;
public void checkOrderByOrderType(CreateOrderBo createOrderBo, String trackingNo) {
checkOrderByOrderTypeUniversal(createOrderBo, trackingNo);
checkOrderByOrderTypeCustom(createOrderBo, trackingNo);
}
public Integer checkOrderByOrderTypeUniversal(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto,
StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, String trackingNo) {
public void checkOrderByOrderTypeUniversal(CreateOrderBo createOrderBo, String trackingNo) {
return 0;
}
public void checkOrderByOrderTypeCustom(CreateOrderBaseVo createOrderBaseVo, AssortmentCustomerInfoVo userLoginInfoDto,
StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, String trackingNo) {
public abstract void checkOrderByOrderTypeCustom(CreateOrderBo createOrderBo, String trackingNo);
public OrderExtInfoDto getExtInfo(CreateOrderBo createOrderBo) {
OrderExtInfoDto extInfo = getExtInfoUniversal(createOrderBo);
createOrderBo.setExtInfo(extInfo);
getExtInfoCustom(createOrderBo);
return extInfo;
}
public OrderExtInfoDto getExtInfo(AssortmentCustomerInfoVo userLoginInfoDto, StoreResponse.BizVO storeResponseDto, Integer pushOrderTime,
CreateOrderBaseVo createOrderBaseVo, ShoppingCartGoodsDto shoppingCartGoodsDto) {
public OrderExtInfoDto getExtInfoUniversal(CreateOrderBo createOrderBo) {
CreateOrderBaseVo createOrderBaseVo = createOrderBo.getCreateOrderBaseVo();
StoreResponse.BizVO storeResponseDto = createOrderBo.getStoreResponseDto();
AssortmentCustomerInfoVo userLoginInfoDto = createOrderBo.getUserLoginInfoDto();
ShoppingCartGoodsDto shoppingCartGoodsDto = createOrderBo.getShoppingCartGoodsDto();
Integer serviceTime = storeResponseDto.getServiceTime();
String sessionId = createOrderBaseVo.getSessionId();
......@@ -243,7 +239,6 @@ public abstract class UniversalOrderService {
serviceTime = 50;
}
orderExtInfoDto.setServiceTime(serviceTime);
orderExtInfoDto.setPushOrderTime(pushOrderTime);
orderExtInfoDto.setVersion(version);
if (memberCard != null && memberCard.getRuleId() != null) {
orderExtInfoDto.setRuleId(memberCard.getRuleId());
......@@ -268,6 +263,8 @@ public abstract class UniversalOrderService {
return orderExtInfoDto;
}
public abstract void getExtInfoCustom(CreateOrderBo createOrderBo);
/**
* 创建预支付订单
*/
......
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