Commit 5894a3c4 by 刘继明

Merge branch 'feature/jimmy/20240914-新增诺心client' into qa

parents e65b4205 81a584d3
......@@ -9,12 +9,15 @@ import cn.freemud.management.enums.ResponseResult;
import cn.freemud.management.service.OrderBaseService;
import cn.freemud.management.service.handle.OrderVerifyHandle;
import cn.freemud.management.util.ResponseUtil;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.entities.v1.OrderBeanV1;
import com.freemud.application.sdk.api.ordercenter.enums.BizTypeEnum;
import com.freemud.application.sdk.api.ordercenter.enums.NewOrderStatus;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderStatusV1;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.OrderTypeV1;
import com.freemud.application.sdk.api.ordercenter.enums.orderv1.RefundStatusV1;
import com.freemud.application.sdk.api.ordercenter.request.TakeOutOrderPickUpTimeReq;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang.ObjectUtils;
import org.apache.commons.lang.StringUtils;
......@@ -22,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Objects;
@Component
......@@ -32,9 +36,13 @@ public class OrderManagerAdapter {
@Autowired
private OrderBaseService orderBaseService;
@Autowired
private OrderSdkService orderSdkService;
@Autowired
private OrderBeanFactory orderBeanFactory;
@Value("${mccafe.partner.id}")
private String macCafePartnerId;
@Value("#{'${o2o.orderClient}'.split(',')}")
private List<String> o2oOrderClients;
/**
......@@ -80,6 +88,14 @@ public class OrderManagerAdapter {
return handleResponse(request, orderBean, verifyResponse);
}
BaseResponse<OrderManagerResponse> orderManagerResponse = orderBeanFactory.getOrderManagerService(orderBean).orderDone(request, orderBean);
//更新外卖订单的pickUpTime
if (ObjectUtils.equals(ResponseResult.SUCCESS.getCode(), orderManagerResponse.getCode()) && o2oOrderClients.contains(orderBean.getOrderClient())) {
String trackingNo = LogThreadLocal.getTrackingNo();
TakeOutOrderPickUpTimeReq takeOutOrderPickUpTimeReq = new TakeOutOrderPickUpTimeReq();
takeOutOrderPickUpTimeReq.setOrderCode(request.getOrderId());
orderSdkService.updateTakeOutOrderPickUpTime(takeOutOrderPickUpTimeReq,trackingNo);
}
return handleResponse(request, orderBean, orderManagerResponse);
}
......
......@@ -370,7 +370,7 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
return ResponseUtil.success();
}
List<Integer> newOrderStatusList = Arrays.asList(OrderStatusV1.RECEIPT.getV2Code(), OrderStatusV1.COMPLETE.getV2Code(), OrderStatusV1.COMPLETE_MAKE.getV2Code());
List<String> sourceList = Arrays.asList(OrderSourceV1.SAAS.getCode(), OrderSourceV1.ALIPAY.getCode(), OrderSourceV1.ALAPOS.getCode());
List<String> sourceList = Arrays.asList(OrderSourceV1.SAAS.getCode(), OrderSourceV1.ALIPAY.getCode(), OrderSourceV1.ALAPOS.getCode(),OrderSourceV1.LE_CAKE.getCode());
if (sourceList.contains(orderBean.getSource()) && newOrderStatusList.contains(orderBean.getStatusV2())) {
return cancelDeliveryAndOrder(request, orderBean);
} else if (OrderSourceV1.MEAL.getCode().equals(orderBean.getSource())) {
......
......@@ -106,6 +106,12 @@ public class InterfaceAddressConstant {
* 通用订单状态修改
*/
public static final String UPDATE_ORDER_STATE = "order/v2/updateOrderState";
/**
* 外卖订单pickUpTime更新
*/
public static final String UPDATE_TAKEOUT_ORDER_PICK_UP_TIME = "order/v2/updateTakeOutOrderPickUpTime";
/**
* 批量 查询订单明细
*/
......
......@@ -55,6 +55,7 @@ public enum OrderClientType {
PARKING(99, "农工商停车"),
// CASHIER(36, "收银买单"),//废弃
// WE_CHAT_LIVE_SELL(37, "微信视频卖券"),//废弃
LE_CAKE( 40, "诺心蛋糕"),
;
......
......@@ -38,6 +38,9 @@ public enum OrderSourceV1 {
ALAPOS("alapos","订单宝", 38),
parkingmanual("parkingmanual", "农工商停车手工录单", 98),
PARKING("parking", "农工商停车", 99),
LE_CAKE("le_cake","诺心蛋糕", 40),
;
private String code;
private String desc;
......
package com.freemud.application.sdk.api.ordercenter.request;
import lombok.Data;
@Data
public class TakeOutOrderPickUpTimeReq {
/**
* 订单号
*/
private String orderCode;
}
......@@ -379,6 +379,18 @@ public class OrderSdkService {
}
/**
* 修改外卖订单的pickUpTime
* @param request
* @return
*/
public OrderBaseResp updateTakeOutOrderPickUpTime(TakeOutOrderPickUpTimeReq request, String trackingNo){
OrderBaseResp responseDTO = RequestThirdPartyUtils.httpJsonReqComplexNew(restTemplate, InterfaceAddressConstant.UPDATE_TAKEOUT_ORDER_PICK_UP_TIME,
createBaseRequest(request, trackingNo), new ParameterizedTypeReference<OrderBaseResp>() {
});
return responseHandle(responseDTO);
}
/**
* 已配送完成
*/
public OrderBaseResp prepareCompleteDelivery(POSOrderOperationBaseReq request, String trackingNo) {
......
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