Commit 27301b91 by ping.wu

Merge branches 'develop' and 'feature/20191127_预订单_wuping' of…

Merge branches 'develop' and 'feature/20191127_预订单_wuping' of http://gitlab.freemud.com/order-group-application/order-group into develop
parents 4258f12f 27fd87a0
......@@ -135,6 +135,7 @@ public class OrderSdkAdapter {
request.setDeliveryContactInfoList(deliveryContactInfoList);
//保存门店渠道信息
request.setOrderExtended(requestVO.getOrderExtended());
request.setOrderTask(requestVO.getOrderTask());
return request;
}
......
package com.freemud.sdk.api.assortment.order.request.order;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderTaskReq;
import com.freemud.application.sdk.api.promotioncenter.request.promotion.ActivityUpdateStockRequest;
import com.freemud.sdk.api.assortment.order.config.BaseConfig;
import com.freemud.sdk.api.assortment.order.enums.*;
......@@ -120,6 +121,9 @@ public class BaseCreateOrderRequest extends BaseConfig {
private OrderExtendedReq orderExtended;
//预订单任务
private OrderTaskReq orderTask;
/**
* 促销活动扣减库存
*/
......
......@@ -47,6 +47,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.OrderSettlementType;
import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
import com.freemud.application.sdk.api.ordercenter.request.OrderExtendedReq;
import com.freemud.application.sdk.api.ordercenter.request.create.OrderTaskReq;
import com.freemud.application.sdk.api.promotioncenter.dto.promotion.GoodsStockDTO;
import com.freemud.application.sdk.api.promotioncenter.request.promotion.ActivityUpdateStockRequest;
import com.freemud.application.sdk.api.storecenter.response.StoreResponse;
......@@ -117,7 +118,7 @@ public class OrderAdapter {
* @param shoppingCartGoodsDto
* @return
*/
public BaseCreateOrderRequest convent2CreateOrderDto(CreateOrderVo createOrderVo, ShoppingCartGoodsDto shoppingCartGoodsDto) {
public BaseCreateOrderRequest convent2CreateOrderDto(CreateOrderVo createOrderVo, ShoppingCartGoodsDto shoppingCartGoodsDto,String orderWarnTime) {
UserDeliveryInfoDto deliveryInfoDto = createOrderVo.getUserDeliveryInfoDto();
BaseCreateOrderRequest createOrderDto = getCreateOrderDto(createOrderVo);
......@@ -125,6 +126,10 @@ public class OrderAdapter {
if (deliveryInfoDto != null) {
deliveryAmount = getUserRealDeliveryAmount(deliveryInfoDto.getStoreDeliveryInfoDto(), deliveryInfoDto.getUserLongitude(), deliveryInfoDto.getUserLatitude());
}
if(createOrderDto.getGmtExpect() != null && createOrderDto.getGmtExpect() != 0){
//预订单任务
createOrderDto.setOrderTask(saveOrderTaskReq(orderWarnTime,createOrderDto.getGmtExpect()));
}
Long packageAmount = shoppingCartGoodsDto.getPackageAmount() == null ? 0L : shoppingCartGoodsDto.getPackageAmount();
createOrderDto.setAmount(shoppingCartGoodsDto.getTotalAmount() + deliveryAmount + packageAmount);
// 解析购物车信息
......@@ -2521,4 +2526,45 @@ public class OrderAdapter {
return orderExtended;
}
public OrderTaskReq saveOrderTaskReq(String orderWarnTime, Long gmtExpect) {
OrderTaskReq orderTaskReq = new OrderTaskReq();
Date date = new Date(gmtExpect);
long timeStamp = getMinTime(orderWarnTime) * 60 * 1000;
Date warnDate = new Date(gmtExpect-timeStamp);
orderTaskReq.setTaskTime(DateUtil.convert2String(date,DateUtil.FORMAT_YYYY_MM_DD_HHMMSS));
orderTaskReq.setProcessingTime(DateUtil.convert2String(warnDate,DateUtil.FORMAT_YYYY_MM_DD_HHMMSS));
return orderTaskReq;
}
public Integer getMinTime(String code) {
Integer minTime = 0;
if(StringUtils.isBlank(code)){
return minTime;
}
switch (code) {
case "1":
minTime = 15;
break;
case "2":
minTime = 30;
break;
case "3":
minTime = 45;
break;
case "4":
minTime = 60;
break;
case "5":
minTime = 5;
break;
case "6":
minTime = 10;
break;
default:
minTime = 0;
}
return minTime;
}
}
......@@ -1675,9 +1675,10 @@ public class OrderServiceImpl implements Orderservice {
*/
private BaseResponse sdkCreateOrder(CreateOrderVo createOrderVo, StoreResponse.BizVO storeResponseDto, ShoppingCartGoodsDto shoppingCartGoodsDto, UserLoginInfoDto userLoginInfoDto, OrderExtInfoDTO orderExtInfoDTO) {
OrderExtendedReq orderExtendedReq = orderAdapter.saveStoreInfo(storeResponseDto);
String orderWarnTime = storeResponseDto.getOrderWarnTime();
//创建普通订单
Function<Object, CreateOrderResponse> createOrder = (var -> {
BaseCreateOrderRequest baseCreateOrderRequest = orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto);
BaseCreateOrderRequest baseCreateOrderRequest = orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto,orderWarnTime);
//查询第三方商品编号
baseCreateOrderRequest = getProductCustomerCode(baseCreateOrderRequest);
//保存门店渠道信息
......
......@@ -403,7 +403,7 @@ public class OrderServiceTest {
CreateOrderVo createOrderVo = gson.fromJson(createOrderStr, CreateOrderVo.class);
ShoppingCartGoodsDto shoppingCartGoodsDto = gson.fromJson(shoppingCartGoodsDtoStr, ShoppingCartGoodsDto.class);
System.out.println("json===" + gson.toJson(orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto)));
// System.out.println("json===" + gson.toJson(orderAdapter.convent2CreateOrderDto(createOrderVo, shoppingCartGoodsDto)));
}
......
......@@ -205,4 +205,7 @@ public class CreateOrderRequest extends BaseRequest {
//订单扩展信息 (门店渠道信息)
private OrderExtendedReq orderExtended;
//预订单任务
private OrderTaskReq orderTask;
}
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @Title: OrderTaskReq
* @Package com.freemud.application.sdk.api.ordercenter.request.create
* @Description:
* @author: ping.wu
* @date: 2019/11/26 10:40
* @version V1.0
* @Copyright: 2019 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
package com.freemud.application.sdk.api.ordercenter.request.create;
import lombok.Data;
@Data
public class OrderTaskReq {
//处理时间
private String processingTime;
//任务时间(显示用)
private String taskTime;
//任务类型:1预约单 (OrderType设置为2预约堂食,4预约外送,6预约自取 默认为预约单)
private Integer taskType;
}
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