123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- package com.ydd.app.service.impl;
- import com.ydd.app.service.ApiCallBack;
- import com.ydd.common.enums.DeliveryTypeEnums;
- import com.ydd.common.utils.StringUtils;
- import com.ydd.module.dto.CallBackOrderDto;
- import com.ydd.module.enums.OrderStatusEnum;
- import com.ydd.third.common.dto.AptCallbackOrderVo;
- import lombok.extern.slf4j.Slf4j;
- import java.math.BigDecimal;
- /**
- * Project:lb-server
- * Class:ApiCallBackApt
- * Description:TODO
- * Time:2021/3/11 14:50
- *
- * @author zoe
- */
- @Slf4j
- public class ApiCallBackApt extends ApiCallBack {
- private final AptCallbackOrderVo aptCallbackOrderVo;
- public ApiCallBackApt(AptCallbackOrderVo aptCallbackOrderVo) {
- this.aptCallbackOrderVo = aptCallbackOrderVo;
- }
- /**
- * 状态
- * state=1 订单退回发布中等待骑手接单 (只有此状态,可以取消)-待接单1
- * state=8 订单已接单 -待配送3
- * state=31 订单已接单(转派订单)-待配送3
- * state=21 已经到店-待配送3
- * state=22 已经取货 (可以判断送货中)-配送中
- * state=9 订单请求完成 -已完成4
- * state=10 订单待评价-已完成4
- * state=11 订单已完成-已完成4
- * state=3 订单取消无退款 -已取消 -1
- * state=7 订单取消退款 -已取消 -1
- *
- * *
- * *
- * * 自配送状态
- * * 美团:logisticsStatus,必须
- * * 0 配送单发往配送 10 配送单已确认 15 骑手已到店 20 骑手已取餐 40 骑手已送达 100 配送单已取消
- * *
- * * 饿了么配送状态
- * * 饿了么-state 必选
- * * DELIVERY_START-商家已送出
- * * DELIVERY_CANCEL-商家已取消
- * * DELIVERY_COMPLETE-商家已送达
- * * DELIVERY_KNIGHT_ACCEPT-骑手已接单
- * * DELIVERY_KNIGHT_REACH_SHOP-骑手到店
- */
- @Override
- public CallBackOrderDto createCallBack() {
- CallBackOrderDto dto = new CallBackOrderDto();
- dto.setOrderSn(aptCallbackOrderVo.getThirdOrderId());
- dto.setRiderName(aptCallbackOrderVo.getReceive());
- dto.setRiderPhone(aptCallbackOrderVo.getReceivePhone());
- if(aptCallbackOrderVo.getOrderId()!=null){
- dto.setOutOrderId(aptCallbackOrderVo.getOrderId()+"");
- }
- try{
- String gps = aptCallbackOrderVo.getGps();
- if(StringUtils.isNotBlank(gps)){
- String[] lan = gps.split(",");
- dto.setRiderLat(new BigDecimal(lan[1]));
- dto.setRiderLng(new BigDecimal(lan[0]));
- }
- }catch (Exception e){
- log.error("gps 为空");
- }
- dto.setDeliveryType(DeliveryTypeEnums.AIPT.getType());
- if (aptCallbackOrderVo.getState().equals(1)){
- dto.setOrderStatus(OrderStatusEnum.ORDERS_TO_BE_RECEIVED.status);
- dto.setOrderMtStatus(0);
- dto.setOrderEleRetaiStatus("4");
- }
- if (aptCallbackOrderVo.getState().equals(8) || aptCallbackOrderVo.getState().equals(31) || aptCallbackOrderVo.getState().equals(21)){
- dto.setOrderStatus(OrderStatusEnum.TO_BE_DELIVERED.status);
- dto.setOrderMtStatus(10);
- dto.setOrderEleStatus("DELIVERY_KNIGHT_ACCEPT");
- dto.setOrderEleRetaiStatus("7");
- }
- if (aptCallbackOrderVo.getState().equals(22)){
- dto.setOrderStatus(OrderStatusEnum.IN_DELIVERY.status);
- dto.setOrderMtStatus(15);
- dto.setOrderEleStatus("DELIVERY_KNIGHT_REACH_SHOP");
- dto.setOrderEleRetaiStatus("21");
- }
- if (aptCallbackOrderVo.getState().equals(9) || aptCallbackOrderVo.getState().equals(10) || aptCallbackOrderVo.getState().equals(11)){
- dto.setOrderStatus(OrderStatusEnum.FINISH.status);
- dto.setOrderMtStatus(40);
- dto.setOrderEleStatus("DELIVERY_COMPLETE");
- dto.setOrderEleRetaiStatus("16");
- }
- if (aptCallbackOrderVo.getState().equals(3) || aptCallbackOrderVo.getState().equals(7)){
- dto.setOrderStatus(OrderStatusEnum.CANCEL.status);
- dto.setOrderMtStatus(100);
- dto.setOrderEleStatus("DELIVERY_CANCEL");
- dto.setOrderEleRetaiStatus("10");
- }
- return dto;
- }
- }
|