| | |
| | | |
| | | /** |
| | | * Handle the progress messages of the flight tasks reported by the dock. |
| | | * 处理机场上报的飞行任务进度信息 |
| | | * @param receiver |
| | | * @param headers |
| | | */ |
| | | @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_FLIGHT_TASK_PROGRESS, outputChannel = ChannelName.OUTBOUND_EVENTS) |
| | | public CommonTopicReceiver handleProgress(CommonTopicReceiver receiver, MessageHeaders headers) { |
| | | log.info("上报航线任务进度: {}", receiver.toString()); |
| | | EventsReceiver<WaylineTaskProgressReceiver> eventsReceiver = mapper.convertValue(receiver.getData(), |
| | | new TypeReference<EventsReceiver<WaylineTaskProgressReceiver>>(){}); |
| | | eventsReceiver.setBid(receiver.getBid()); |
| | | eventsReceiver.setSn(receiver.getGateway()); |
| | | |
| | | //用户记录飞行任务id |
| | | RedisOpsUtils.set(RedisConst.FLIGHT_LOG + "job_id",receiver.getBid()); |
| | | |
| | | WaylineTaskProgressReceiver output = eventsReceiver.getOutput(); |
| | | |
| | | log.info("Task progress: {}", output.getProgress().toString()); |
| | | log.info("任务进度: {}", output.getProgress().toString()); |
| | | |
| | | if (null != output.getExt().getBreakPoint()) { |
| | | log.info("任务进度 ===> 断点信息:{}", output.getExt().getBreakPoint().toString()); |
| | | } |
| | | |
| | | if (eventsReceiver.getResult() != ResponseResult.CODE_SUCCESS) { |
| | | log.error("Task progress ===> Error code: " + eventsReceiver.getResult()); |
| | | log.error("任务进度 ===> 错误编码: " + eventsReceiver.getResult()); |
| | | } |
| | | |
| | | EventsResultStatusEnum statusEnum = EventsResultStatusEnum.find(output.getStatus()); |
| | |
| | | .mediaCount(mediaCount) |
| | | .build(); |
| | | |
| | | // record the update of the media count. |
| | | //记录媒体计数的更新 |
| | | if (Objects.nonNull(job.getMediaCount()) && job.getMediaCount() != 0) { |
| | | RedisOpsUtils.hashSet(RedisConst.MEDIA_FILE_PREFIX + receiver.getGateway(), job.getJobId(), |
| | | MediaFileCountDTO.builder().jobId(receiver.getBid()).mediaCount(job.getMediaCount()).uploadedCount(0).build()); |