Commit 2973383b by 徐康

麦咖啡收到汇集回调后,把订单加入入机拉单队列

parent 70045aad
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<dependency> <dependency>
<groupId>cn.freemud</groupId> <groupId>cn.freemud</groupId>
<artifactId>assortment-ordercenter-sdk</artifactId> <artifactId>assortment-ordercenter-sdk</artifactId>
<version>2.0.10-SNAPSHOT</version> <version>2.0.16-SNAPSHOT</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
......
...@@ -28,6 +28,7 @@ public enum DeliveryStatus { ...@@ -28,6 +28,7 @@ public enum DeliveryStatus {
DELIVERYERROR(7,"运单异常"), DELIVERYERROR(7,"运单异常"),
DELIVERYCANCEL(8,"运单取消"), DELIVERYCANCEL(8,"运单取消"),
DELIVERY_CREATE_SUCCESS(9, "创建配送单成功"), DELIVERY_CREATE_SUCCESS(9, "创建配送单成功"),
COLLECTING(99, "开始汇集"),
; ;
private int code; private int code;
......
...@@ -147,6 +147,7 @@ public enum ResponseResult { ...@@ -147,6 +147,7 @@ public enum ResponseResult {
ORDER_TAKEMEALTIME_INVALID("45061", "你的隔日预约时间有误,请重新刷新后选择!"), ORDER_TAKEMEALTIME_INVALID("45061", "你的隔日预约时间有误,请重新刷新后选择!"),
ORDER_CONVERT_ERROR("45062", "查询订单结果转换失败"), ORDER_CONVERT_ERROR("45062", "查询订单结果转换失败"),
ORDER_DELIVERY_CALL_BACK_FAILED("45083", "配送回调失败,为找到对应操作类型"), ORDER_DELIVERY_CALL_BACK_FAILED("45083", "配送回调失败,为找到对应操作类型"),
ORDER_COLLECT_FAILED("45084", "推送入机失败,配送回调失败"),
/** /**
* 支付 * 支付
*/ */
......
...@@ -2,6 +2,7 @@ package cn.freemud.service.delivery; ...@@ -2,6 +2,7 @@ package cn.freemud.service.delivery;
import cn.freemud.amp.service.ProduceMQService; import cn.freemud.amp.service.ProduceMQService;
import cn.freemud.base.entity.BaseResponse; import cn.freemud.base.entity.BaseResponse;
import cn.freemud.base.log.LogTreadLocal;
import cn.freemud.entities.dto.delivery.*; import cn.freemud.entities.dto.delivery.*;
import cn.freemud.entities.dto.pos.PosBaseRequestDto; import cn.freemud.entities.dto.pos.PosBaseRequestDto;
import cn.freemud.entities.vo.delivery.DeliveryAmountVo; import cn.freemud.entities.vo.delivery.DeliveryAmountVo;
...@@ -19,11 +20,14 @@ import cn.freemud.service.thirdparty.PosClient; ...@@ -19,11 +20,14 @@ import cn.freemud.service.thirdparty.PosClient;
import cn.freemud.utils.LogUtil; import cn.freemud.utils.LogUtil;
import cn.freemud.utils.ResponseUtil; import cn.freemud.utils.ResponseUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.constant.ResponseConstant;
import com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto; import com.freemud.application.sdk.api.deliverycenter.dto.CancelDeliveryOrderRequestDto;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryInfoDto; import com.freemud.application.sdk.api.deliverycenter.response.DeliveryInfoDto;
import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto; import com.freemud.application.sdk.api.deliverycenter.response.DeliveryResponseDto;
import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService; import com.freemud.application.sdk.api.deliverycenter.service.DeliveryService;
import com.freemud.application.sdk.api.log.LogThreadLocal; import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.request.OrderCollectReq;
import com.freemud.application.sdk.api.ordercenter.service.OrderSdkService;
import com.freemud.sdk.api.assortment.order.request.order.AssortmentUpdateDeliveryAbnormalRequest; import com.freemud.sdk.api.assortment.order.request.order.AssortmentUpdateDeliveryAbnormalRequest;
import com.freemud.sdk.api.assortment.order.request.order.UpdateDeliveryInfoByIdRequest; import com.freemud.sdk.api.assortment.order.request.order.UpdateDeliveryInfoByIdRequest;
import com.freemud.sdk.api.assortment.order.response.order.OrderBaseResponse; import com.freemud.sdk.api.assortment.order.response.order.OrderBaseResponse;
...@@ -65,6 +69,8 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService { ...@@ -65,6 +69,8 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
private DeliveryFeiginClient deliveryFeiginClient; private DeliveryFeiginClient deliveryFeiginClient;
@Autowired @Autowired
private OrderManagerAdapter orderManagerAdapter; private OrderManagerAdapter orderManagerAdapter;
@Autowired
private OrderSdkService orderSdkService;
@Override @Override
public BaseResponse callbackUrl(CallbackUrlRequestDto request) { public BaseResponse callbackUrl(CallbackUrlRequestDto request) {
...@@ -172,6 +178,22 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService { ...@@ -172,6 +178,22 @@ public class ThirdDeliveryServiceImpl implements ThirdDeliveryService {
} else if(deliveryStatus == DeliveryStatus.WATINGORDER.getCode() || deliveryStatus == DeliveryStatus.SYSTEMGETORDER.getCode() } else if(deliveryStatus == DeliveryStatus.WATINGORDER.getCode() || deliveryStatus == DeliveryStatus.SYSTEMGETORDER.getCode()
|| deliveryStatus == DeliveryStatus.ALLOTRIDER.getCode()|| deliveryStatus == DeliveryStatus.RIDERARRIVESTORE.getCode()) { || deliveryStatus == DeliveryStatus.ALLOTRIDER.getCode()|| deliveryStatus == DeliveryStatus.RIDERARRIVESTORE.getCode()) {
return ResponseUtil.success(); return ResponseUtil.success();
} else if(deliveryStatus == DeliveryStatus.COLLECTING.getCode()) {
//推送订单到拉单队列
OrderCollectReq orderCollectReq = new OrderCollectReq();
orderCollectReq.setOrderCode(request.getOrderId());
orderCollectReq.setPartnerId(request.getPartnerId());
com.freemud.application.sdk.api.ordercenter.response.BaseResponse baseResponse = orderSdkService.collectOrder(orderCollectReq, LogTreadLocal.getTrackingNo());
if(ResponseConstant.SUCCESS_RESPONSE_CODE_STR.equals(baseResponse.getCode())) {
ResponseUtil.error(ResponseResult.ORDER_COLLECT_FAILED);
}
//回调成功,记录汇集状态
UpdateDeliveryInfoByIdRequest updateDeliveryInfoByIdRequest = new UpdateDeliveryInfoByIdRequest();
updateDeliveryInfoByIdRequest.setOrderId(request.getOrderId());
updateDeliveryInfoByIdRequest.setOrderSubState(DeliveryStatus.COLLECTING.getCode());
updateDeliveryInfoByIdRequest.setOperator("sys");
orderCenterSdkService.updateDeliveryInfoById(updateDeliveryInfoByIdRequest);
return ResponseUtil.success();
} }
return ResponseUtil.error(ResponseResult.ORDER_DELIVERY_CALL_BACK_FAILED); return ResponseUtil.error(ResponseResult.ORDER_DELIVERY_CALL_BACK_FAILED);
} }
......
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