ard-sample/src/main/java/com/ard/sample/wayline/service/impl/FlightTaskServiceImpl.java
@@ -15,12 +15,15 @@
import com.ard.sample.component.websocket.service.IWebSocketManageService;
import com.ard.sample.manage.model.dto.DeviceDTO;
import com.ard.sample.manage.model.enums.UserTypeEnum;
import com.ard.sample.manage.service.IWaylineTrajectoryService;
import com.ard.sample.media.model.MediaFileCountDTO;
import com.ard.sample.wayline.model.dto.WaylineJobDTO;
import com.ard.sample.wayline.model.dto.WaylineTaskProgressExt;
import com.ard.sample.wayline.model.dto.WaylineTaskProgressReceiver;
import com.ard.sample.wayline.model.entity.WaylineJobHistoryEntity;
import com.ard.sample.wayline.model.enums.WaylineJobStatusEnum;
import com.ard.sample.wayline.service.IFlightTaskService;
import com.ard.sample.wayline.service.IWaylineJobHistoryService;
import com.ard.sample.wayline.service.IWaylineJobService;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -66,6 +69,12 @@
    @Autowired
    private IWaylineJobService waylineJobService;
    @Autowired
    private IWaylineTrajectoryService _waylineTrajectoryService;
    @Autowired
    private IWaylineJobHistoryService _waylineJobHistoryService;
    @Override
    @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_FLIGHT_TASK_PROGRESS, outputChannel = ChannelName.OUTBOUND)
@@ -143,6 +152,9 @@
//        if (eventsReceiver.getOutput().getProgress().getPercent() >= 95) {
//            return;
//        }
        String json = "";
        try {
            json = mapper.writeValueAsString(eventsReceiver);
@@ -150,6 +162,27 @@
            e.printStackTrace();
        }
        _dockWebSocketHandler.sendMessageToSubscribers(dockSn, MessageType.STATUS.getType(), json, "");
        _waylineTrajectoryService.setList(dockSn,"1",json);
        // 计划任务成功后,保存计划任务到历史记录
        String status = eventsReceiver.getOutput().getStatus();
        String jobId = eventsReceiver.getOutput().getExt().getFlightId();
        if(status.equals("ok") && jobId != null) {
            Optional<WaylineJobDTO> job = waylineJobService.getJobByJobId(jobId);
            if(job.isPresent()) {
                if (_waylineJobHistoryService.getJobByJobId(jobId).isPresent()) {
                    return;
                }
                WaylineJobHistoryEntity waylineJobHistoryEntity = _waylineJobHistoryService.dto2Entity(job.get());
                Optional<WaylineJobDTO> jobHistory = _waylineJobHistoryService.createWaylineJob(waylineJobHistoryEntity);
                if(jobHistory.isPresent()) {
                    log.info("任务执行成功,保存到历史记录。 {}", jobHistory);
                }
            }
        }
    }
    /**