Commit b9637ca9 by 刘继明

fix 删除查询合阔排队查询

parent fbbc7837
......@@ -62,9 +62,7 @@ import cn.freemud.service.Orderservice;
import cn.freemud.service.business.OrderBusinessService;
import cn.freemud.service.order.OrderRelationFactory;
import cn.freemud.service.order.OrderRelationService;
import cn.freemud.service.process.order.OrderQueueIndexProcessorFactory;
import cn.freemud.service.thirdparty.*;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import cn.freemud.utils.*;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
......@@ -326,8 +324,6 @@ public class OrderServiceImpl implements Orderservice {
@Autowired
private BuyProductOnceManager buyProductOnceManager;
@Autowired
private OrderQueueIndexProcessorFactory orderQueueIndexProcessorFactory;
@Autowired
private OrderCallbackClient orderCallbackClient;
@Autowired
private OrderCenterProperties orderCenterProperties;
......@@ -996,7 +992,11 @@ public class OrderServiceImpl implements Orderservice {
orderBean.setQueueIndex("");
// 查询待取餐订单才需要查询排队人数和订单状态扭转记录
if (QueryOrderStatus.TAKE_MEAL.getCode().equals(queryOrderDto.getQueryOrderStatus())) {
String returnWords = "";
Integer productSum = 0; //件数
Long pickUpTime = 0L; //预计
Integer totalSumTime = 0;
String progress = "0"; //进度
Integer orderProgressBarStatus = 2;
try {
if (null != storeResponseDto) {
......@@ -1009,7 +1009,39 @@ public class OrderServiceImpl implements Orderservice {
//订单状态为已接单并且无售后单展示进度条
if (OrderStatus.RECEIPT.getCode() == orderBean.getStatus() && null == orderBean.getAfterSalesOrderResp() && null != orderProgressBarStatus && null != configuration.getTurnOnTimeOfMaking()) {
// 查询订单的排队人数
queryLineUpOrder(orderBean,configuration);
QueryLineUpOrderReq queryLineUpOrderReq = new QueryLineUpOrderReq();
queryLineUpOrderReq.setPartnerId(orderBean.getCompanyId());
queryLineUpOrderReq.setStoreId(orderBean.getShopId());
queryLineUpOrderReq.setStartTime(DateUtil.addHours(new Date(orderBean.getGmtCreate()), -24).getTime());
queryLineUpOrderReq.setEndTime(orderBean.getGmtCreate());
// 取餐排队人数查询代码去除
QueryLineUpResponse response = orderCenterSdkService.queryLineUpOrder(queryLineUpOrderReq);
if (RESPONSE_SUCCESS_CODE.equals(response.getErrcode())) {
if (null == response.getOrderCodes()) {
progress = "100";
returnWords = "";
} else {
List<String> orderCodeList = response.getOrderCodes();
if (null != orderCodeList && orderCodeList.size() > 0) {
returnWords += "前方还有 " + orderCodeList.size() + " 单";
//开启制作时间 1 :是 , 2 :否"
if (1 != configuration.getTurnOnTimeOfMaking()) {
totalSumTime = orderCodeList.size() * AutoOrderConfigTime.getTime(configuration.getAutoSelfmentionTakeOrderWorkflowFinishTime()); //分钟
} else {
Integer goodsAvgTimeOfMaking = (null == configuration.getGoodsAvgTimeOfMaking() || 0 == configuration.getGoodsAvgTimeOfMaking()) ? 5 : configuration.getGoodsAvgTimeOfMaking();
productSum = orderCodeList.stream().mapToInt(product -> Integer.parseInt(product.split("-")[1])).sum();
totalSumTime = productSum * goodsAvgTimeOfMaking;
returnWords += " / " + productSum + " 件";
}
pickUpTime = DateUtil.addMinutes(new Date(orderBean.getGmtAccept()), totalSumTime).getTime();
Date date = new Date(pickUpTime);
returnWords += ",预计 " + (String.valueOf(date.getHours()).length() == 1 ? "0" + (String.valueOf(date.getHours())) : date.getHours()) + ":" + (String.valueOf(date.getMinutes()).length() == 1 ? "0" + (String.valueOf(date.getMinutes())) : date.getMinutes()) + " 可取餐";
//制餐进度(当前时间-接单时间)/总时长(制餐时长)x100%
BigDecimal progressB = new BigDecimal(DateUtil.diffMinute(new Date(orderBean.getGmtAccept()), new Date())).divide(new BigDecimal(totalSumTime), 2, BigDecimal.ROUND_HALF_UP);
progress = progressB.compareTo(new BigDecimal(1)) == 1 ? "100" : progressB.multiply(new BigDecimal(100)).toString();
}
}
}
}
}
}
......@@ -1114,60 +1146,6 @@ public class OrderServiceImpl implements Orderservice {
return ResponseUtil.success(responseMap);
}
/**
* 获取排队号
* @param orderBean
* @param configuration
*/
private void queryLineUpOrder(QueryOrdersResponse.DataBean.OrderBean orderBean,StoreResponse.Configuration configuration) {
String returnWords = "";
Integer productSum = 0; //件数
Long pickUpTime = 0L; //预计
Integer totalSumTime = 0;
String progress = "0"; //进度
QueryLineUpOrderDto queryLineUpOrderDto = new QueryLineUpOrderDto();
queryLineUpOrderDto.setPartnerId(orderBean.getCompanyId());
queryLineUpOrderDto.setStoreId(orderBean.getShopId());
queryLineUpOrderDto.setStartTime(DateUtil.addHours(new Date(orderBean.getGmtCreate()), -24).getTime());
queryLineUpOrderDto.setEndTime(orderBean.getGmtCreate());
queryLineUpOrderDto.setOrderCode(orderBean.getOid());
queryLineUpOrderDto.setThirdOrderCode(orderBean.getThirdOrderCode());
queryLineUpOrderDto.setThirdStoreId(orderBean.getThirdShopId());
// 取餐排队人数查询代码去除
HexCloudTakeAwayOrderStatusDto statusDto = orderQueueIndexProcessorFactory.processor(orderBean.getCompanyId()).process(queryLineUpOrderDto);
if (null == statusDto) {
progress = "100";
returnWords = "";
} else {
if (statusDto.getWaiting_order_count() > 0) {
returnWords += "前方还有 " + statusDto.getWaiting_order_count() + " 单";
//开启制作时间 1 :是 , 2 :否"
if (1 != configuration.getTurnOnTimeOfMaking()) {
totalSumTime = statusDto.getWaiting_order_count() * AutoOrderConfigTime.getTime(configuration.getAutoSelfmentionTakeOrderWorkflowFinishTime()); //分钟
} else {
Integer goodsAvgTimeOfMaking = (null == configuration.getGoodsAvgTimeOfMaking() || 0 == configuration.getGoodsAvgTimeOfMaking()) ? 5 : configuration.getGoodsAvgTimeOfMaking();
productSum = statusDto.getWaiting_product_count();
totalSumTime = productSum * goodsAvgTimeOfMaking;
returnWords += " / " + productSum + " 件";
}
if (statusDto.isHexCloudResponse()){
//query from hekuo
pickUpTime = DateUtil.addSeconds(new Date(orderBean.getGmtAccept()), statusDto.getWaiting_time()).getTime();
}else {
pickUpTime = DateUtil.addMinutes(new Date(orderBean.getGmtAccept()), totalSumTime).getTime();
}
Date date = new Date(pickUpTime);
returnWords += ",预计 " + (String.valueOf(date.getHours()).length() == 1 ? "0" + (String.valueOf(date.getHours())) : date.getHours()) + ":" + (String.valueOf(date.getMinutes()).length() == 1 ? "0" + (String.valueOf(date.getMinutes())) : date.getMinutes()) + " 可取餐";
//制餐进度(当前时间-接单时间)/总时长(制餐时长)x100%
BigDecimal progressB = new BigDecimal(DateUtil.diffMinute(new Date(orderBean.getGmtAccept()), new Date())).divide(new BigDecimal(totalSumTime), 2, BigDecimal.ROUND_HALF_UP);
progress = progressB.compareTo(new BigDecimal(1)) == 1 ? "100" : progressB.multiply(new BigDecimal(100)).toString();
}
}
orderBean.setProgress(String.valueOf(progress));
orderBean.setReturnWords(returnWords);
}
......
package cn.freemud.service.process.order;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import com.google.common.collect.Maps;
import java.util.Map;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description:
* @author: jiming.liu
* @date: 2021/7/23 下午1:43
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
public abstract class AbstractQueueIndexProcessor implements OrderQueueIndexProcessor {
protected Map<String, String> transferResult(String oid, String queueIndex) {
Map<String, String> queueIndexMap = Maps.newHashMap();
queueIndexMap.put("oid", oid);
queueIndexMap.put("queueIndex", queueIndex == null ? "" : queueIndex);
return queueIndexMap;
}
protected Map<String, String> transferResult(String oid, HexCloudTakeAwayOrderStatusDto statusDto) {
Map<String, String> queueIndexMap = Maps.newHashMap();
queueIndexMap.put("oid", oid);
queueIndexMap.put("queueIndex", statusDto == null ? "" : statusDto.getWaiting_order_count() + "");
return queueIndexMap;
}
}
package cn.freemud.service.process.order;
import cn.freemud.constant.CommonsConstant;
import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.entities.dto.order.QueryLineUpOrderDto;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import cn.freemud.utils.AppLogUtil;
import com.freemud.application.sdk.api.ordercenter.request.QueryLineUpOrderReq;
import com.freemud.sdk.api.assortment.order.response.order.QueryLineUpResponse;
import com.freemud.sdk.api.assortment.order.service.OrderCenterSdkService;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.util.List;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description:
* @author: jiming.liu
* @date: 2021/7/21 下午3:53
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Component
public class FreemudOrderQueueIndexProcessorImpl extends AbstractQueueIndexProcessor {
private final OrderCenterSdkService orderCenterSdkService;
public FreemudOrderQueueIndexProcessorImpl(OrderCenterSdkService orderCenterSdkService) {
this.orderCenterSdkService = orderCenterSdkService;
}
@Override
public String name() {
return CommonsConstant.QUEUE_INDEX_PROCESSOR_NAME_FREEMUD;
}
@Override
public HexCloudTakeAwayOrderStatusDto process(QueryLineUpOrderDto vo) {
AppLogUtil.infoLog("queryLineUpOrder from freemud ", vo, "");
QueryLineUpOrderReq queryLineUpOrderReq = new QueryLineUpOrderReq();
queryLineUpOrderReq.setPartnerId(vo.getPartnerId());
queryLineUpOrderReq.setStoreId(vo.getStoreId());
queryLineUpOrderReq.setStartTime(vo.getStartTime());
queryLineUpOrderReq.setEndTime(vo.getEndTime());
// 查询订单的排队人数
QueryLineUpResponse response = orderCenterSdkService.queryLineUpOrder(queryLineUpOrderReq);
if (!ResponseCodeConstant.RESPONSE_SUCCESS.equals(response.getErrcode())) {
AppLogUtil.infoLog("queryLineUpOrder from freemud", vo, response);
return null;
}
List<String> orderCodeList = response.getOrderCodes();
int size = 0, productSum = 0;
if (!CollectionUtils.isEmpty(orderCodeList)) {
size = orderCodeList.size();
productSum = orderCodeList.stream().mapToInt(product -> Integer.parseInt(product.split("-")[1])).sum();
}
return HexCloudTakeAwayOrderStatusDto.builder().waiting_order_count(size).waiting_product_count(productSum).hexCloudResponse(false).build();
}
}
package cn.freemud.service.process.order;
import cn.freemud.constant.CommonsConstant;
import cn.freemud.entities.dto.order.QueryLineUpOrderDto;
import cn.freemud.service.thirdparty.hexcloud.HexCloudClient;
import cn.freemud.service.thirdparty.hexcloud.request.HexCloudBaseRequest;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudBaseResponse;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import cn.freemud.utils.AppLogUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.HashMap;
import java.util.Map;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description:
* @author: jiming.liu
* @date: 2021/7/21 下午3:52
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Component
public class HexCloudOrderQueueIndexProcessorImpl extends AbstractQueueIndexProcessor {
@Autowired
private HexCloudClient hexCloudClient;
@Override
public String name() {
return CommonsConstant.QUEUE_INDEX_PROCESSOR_NAME_HEXCLOUD;
}
@Override
public HexCloudTakeAwayOrderStatusDto process(QueryLineUpOrderDto vo) {
AppLogUtil.infoLog("queryLineUpOrder from HexCloud", vo, "");
if (StringUtils.isEmpty(vo.getThirdOrderCode())) {
AppLogUtil.infoLog("合阔查询失败,ThirdOrderCode is empty", vo, "");
return null;
}
//
Map<String, String> orderThirdCode = new HashMap<>();
orderThirdCode.put("tp_order_id", vo.getThirdOrderCode());
HexCloudBaseRequest request = HexCloudBaseRequest.builder().shopId(vo.getStoreId()).partnerId(vo.getPartnerId()).startTime(vo.getStartTime())
.endTime(vo.getEndTime()).oid(vo.getOrderCode()).data(orderThirdCode).thirdStoreId(vo.getThirdStoreId()).build();
HexCloudBaseResponse<HexCloudTakeAwayOrderStatusDto> hexCloudBaseResponse = hexCloudClient.takeAwayOrderStatus(request);
if (null != hexCloudBaseResponse && hexCloudBaseResponse.success()) {
HexCloudTakeAwayOrderStatusDto statusDto = hexCloudBaseResponse.getResponseBody();
if (null != statusDto) {
statusDto.setHexCloudResponse(true);
}
return statusDto;
} else {
AppLogUtil.infoLog("合阔查询失败", request, hexCloudBaseResponse);
return null;
}
}
}
package cn.freemud.service.process.order;
import cn.freemud.entities.dto.order.QueryLineUpOrderDto;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description:
* @author: jiming.liu
* @date: 2021/7/21 下午3:36
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
public interface OrderQueueIndexProcessor {
/**
* 名称
*
* @return
*/
String name();
/**
* 执行体
*
* @param vo
* @return
*/
HexCloudTakeAwayOrderStatusDto process(QueryLineUpOrderDto vo);
}
package cn.freemud.service.process.order;
import cn.freemud.constant.CommonsConstant;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import java.util.List;
import java.util.Optional;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description:
* @author: jiming.liu
* @date: 2021/7/21 下午3:54
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Slf4j
@Component
public class OrderQueueIndexProcessorFactory {
/**
* 查询合阔订单排队接口,商户白名单
*/
@Value("#{'${order.queueIndex.hexCloud.pos.partnerId}'.split(',')}")
private List<String> notAutomaticTwistPartnerId;
/**
* 执行器
*/
private List<OrderQueueIndexProcessor> processors;
public OrderQueueIndexProcessorFactory(List<OrderQueueIndexProcessor> processors) {
this.processors = processors;
}
/**
* 根据白名单配置是否查询合阔
*
* @param partnerId
* @return
*/
public OrderQueueIndexProcessor processor(String partnerId) {
//根据白名单商户判断是否查询合阔
if (StringUtils.isEmpty(partnerId)) {
return commonProcessor();
}
if (notAutomaticTwistPartnerId.contains(partnerId)) {
return getProcessor(CommonsConstant.QUEUE_INDEX_PROCESSOR_NAME_HEXCLOUD);
}
return commonProcessor();
}
/**
* 通用执行器
*
* @return
*/
public OrderQueueIndexProcessor commonProcessor() {
return getProcessor(CommonsConstant.QUEUE_INDEX_PROCESSOR_NAME_FREEMUD);
}
/**
* 根据名称获取processor
*
* @param name
* @return
*/
private OrderQueueIndexProcessor getProcessor(String name) {
Optional<OrderQueueIndexProcessor> optional = processors.stream().filter(p -> name.equals(p.name())).findFirst();
if (optional.isPresent()) {
return optional.get();
}
throw new UnsupportedOperationException("freemud OrderQueueIndexProcessor not fount");
}
}
package cn.freemud.service.thirdparty.hexcloud;
import cn.freemud.service.thirdparty.hexcloud.request.HexCloudBaseRequest;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudBaseResponse;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.Map;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description: 对接合阔的接口
* @author: jiming.liu
* @date: 2021/7/21 下午2:36
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@FeignClient(name = "adapter-open-store-sync-pos-status-service", url = "${saas.adapter.syncPosStatus.feignUrl}", fallbackFactory = HexCloudClientFallbackFactory.class)
@RequestMapping(produces = {"application/json;charset=UTF-8"})
public interface HexCloudClient {
/**
* 查询合阔订单排队序号
*
* @param baseRequest
* @return
*/
@PostMapping(value = "/hexcloud/order/status")
HexCloudBaseResponse<HexCloudTakeAwayOrderStatusDto> takeAwayOrderStatus(HexCloudBaseRequest<Map<String, String>> baseRequest);
}
package cn.freemud.service.thirdparty.hexcloud;
import cn.freemud.entities.dto.order.QueryLineUpOrderDto;
import cn.freemud.service.process.order.OrderQueueIndexProcessorFactory;
import cn.freemud.service.thirdparty.hexcloud.request.HexCloudBaseRequest;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudBaseResponse;
import cn.freemud.service.thirdparty.hexcloud.response.HexCloudTakeAwayOrderStatusDto;
import cn.freemud.utils.AppLogUtil;
import cn.freemud.utils.SpringBeanUtil;
import feign.hystrix.FallbackFactory;
import org.springframework.stereotype.Component;
import java.util.Map;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description: 合阔接口降级处理
* @author: jiming.liu
* @date: 2021/7/22 下午2:45
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Component
public class HexCloudClientFallbackFactory implements FallbackFactory<HexCloudClient> {
@Override
public HexCloudClient create(Throwable throwable) {
AppLogUtil.errorLog("请求合阔获取订单排队号失败,降级处理:", "", "", (Exception) throwable);
return new HexCloudClient() {
@Override
public HexCloudBaseResponse<HexCloudTakeAwayOrderStatusDto> takeAwayOrderStatus(HexCloudBaseRequest<Map<String, String>> baseRequest) {
QueryLineUpOrderDto vo = new QueryLineUpOrderDto();
vo.setStoreId(baseRequest.getShopId());
vo.setPartnerId(baseRequest.getPartnerId());
vo.setOrderCode(baseRequest.getOid());
vo.setStartTime(baseRequest.getStartTime());
vo.setEndTime(baseRequest.getEndTime());
//请求非码自己的排队号
OrderQueueIndexProcessorFactory factory = SpringBeanUtil.getBean(OrderQueueIndexProcessorFactory.class);
HexCloudTakeAwayOrderStatusDto statusDto = factory.commonProcessor().process(vo);
if (null != statusDto) {
statusDto.setHexCloudResponse(false);
}
return HexCloudBaseResponse.buildSuccess(statusDto);
}
};
}
}
package cn.freemud.service.thirdparty.hexcloud.request;
import lombok.Builder;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description: 查询合阔接口基础参数
* @author: jiming.liu
* @date: 2021/7/21 下午2:36
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
@Builder
public class HexCloudBaseRequest<T> {
/**
* 商户id
*/
private String partnerId;
/**
* 店铺id
*/
private String shopId;
/**
* 订单编号
*/
private String oid;
/**
* 时间开始
*/
private Long startTime;
/**
* 时间开始
*/
private Long endTime;
/**
* 三方门店号
*/
private String thirdStoreId;
/**
* 参数数据
*/
private T data;
}
package cn.freemud.service.thirdparty.hexcloud.response;
import cn.freemud.constant.ResponseCodeConstant;
import lombok.Builder;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description: 合阔接口响base值
* @author: jiming.liu
* @date: 2021/7/21 下午2:36
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
@Builder
public class HexCloudBaseResponse<T> {
/**
* 调用是否成功,0成功
*/
private String statusCode;
/**
* 错误信息
*/
private String ver;
private String message;
/**
* 返回数据
*/
private T responseBody;
/**
* 判断是否成功
*
* @return
*/
public boolean success() {
return ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(this.statusCode);
}
/**
* 成功
*
* @param
* @return
*/
public static HexCloudBaseResponse buildSuccess() {
return HexCloudBaseResponse.builder().statusCode(ResponseCodeConstant.RESPONSE_SUCCESS_STR).build();
}
/**
* 成功
*
* @param
* @return
*/
public static HexCloudBaseResponse buildSuccess(Object payload) {
return HexCloudBaseResponse.builder().statusCode(ResponseCodeConstant.RESPONSE_SUCCESS_STR).responseBody(payload).build();
}
}
package cn.freemud.service.thirdparty.hexcloud.response;
import lombok.Builder;
import lombok.Data;
/**
* All rights Reserved, Designed By www.freemud.cn
*
* @version V1.0
* @Description: 订单排队状态响应值
* @author: jiming.liu
* @date: 2021/7/21 下午2:55
* @Copyright: 2018 www.freemud.cn Inc. All rights reserved.
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/
@Data
@Builder
public class HexCloudTakeAwayOrderStatusDto {
/**
* 合阔订单ID (全市场唯一)
*/
private String ticket_id;
/**
* 第三方订单ID(必须唯一)
*/
private String tp_order_id;
/**
* 订单状态: 等待制作(1),制作中(2),制作完成(3),已取餐(4),无效或废弃(5)
*/
private Integer flow_status;
/**
* 取餐号
*/
private String takemealNumber;
/**
* 预计等待时间:单位秒
*/
private Integer waiting_time;
/**
* 前面等待订单数
*/
private Integer waiting_order_count;
/**
* 前面等待商品数
*/
private Integer waiting_product_count;
/**
* 是否是合阔
*/
private boolean hexCloudResponse;
}
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