package com.xiaopeng.order.job.jobs;
|
|
import com.xiaopeng.api.dto.automaticPilot.PushOrderDto;
|
import com.xiaopeng.api.model.order.XpCruiseOrder;
|
import com.xiaopeng.api.model.order.XpOrder;
|
import com.xiaopeng.api.model.vehicleConvoy.XpVehicle;
|
import com.xiaopeng.api.vo.OrderType;
|
import com.xiaopeng.common.core.domain.R;
|
import com.xiaopeng.order.job.base.AbstractJob;
|
import lombok.extern.slf4j.Slf4j;
|
import org.quartz.JobDataMap;
|
import org.quartz.JobExecutionContext;
|
import org.quartz.JobExecutionException;
|
|
import java.util.Objects;
|
|
/**
|
* 推送定时任务
|
* @author Administrator
|
*
|
*/
|
@Slf4j
|
public class AddCruiseMissionJob extends AbstractJob {
|
|
public static final String name = "addCruiseMission_";
|
|
@Override
|
public void execute(JobExecutionContext context)
|
throws JobExecutionException {
|
JobDataMap maps = context.getMergedJobDataMap();
|
Long orderId = maps.getLong("id");
|
try {
|
log.info("开始执行添加任务");
|
XpCruiseOrder xpCruiseOrder = xpCruiseOrderService.getById(orderId);
|
R<XpVehicle> xpVehicleR = xpVehicleClient.queryById(xpCruiseOrder.getVehicleId());
|
if(xpVehicleR.getData().getState()==0){
|
PushOrderDto pushOrderDto = new PushOrderDto();
|
pushOrderDto.setVin(xpCruiseOrder.getVehicleVin());
|
pushOrderDto.setOrderId("XU" + xpCruiseOrder.getId());
|
pushOrderDto.setStartLatitude(xpCruiseOrder.getStartLat());
|
pushOrderDto.setStartLongitude(xpCruiseOrder.getStartLon());
|
pushOrderDto.setEndLatitude(xpCruiseOrder.getEndLat());
|
pushOrderDto.setEndLongitude(xpCruiseOrder.getEndLon());
|
pushOrderDto.setOrderType(OrderType.CRUISE_ORDER);
|
pushOrderDto.setStage(2);
|
// 调用推送服务 orderId + carVin
|
orderMissionClient.pushOrder(pushOrderDto);
|
}
|
}catch(Exception e){
|
e.printStackTrace();
|
}
|
}
|
|
}
|