| | |
| | | import com.dji.sample.common.model.PaginationData; |
| | | import com.dji.sample.common.model.ResponseResult; |
| | | import com.dji.sample.common.util.MinioUrlUtils; |
| | | import com.dji.sample.common.util.SpringBeanUtils; |
| | | import com.dji.sample.component.mqtt.model.*; |
| | | import com.dji.sample.component.mqtt.service.IMessageSenderService; |
| | | import com.dji.sample.component.redis.RedisConst; |
| | | import com.dji.sample.component.redis.RedisOpsUtils; |
| | | import com.dji.sample.control.model.dto.PointDTO; |
| | | import com.dji.sample.control.model.enums.CameraModeEnum; |
| | | import com.dji.sample.control.model.enums.DroneAuthorityEnum; |
| | | import com.dji.sample.control.model.enums.PayloadCommandsEnum; |
| | | import com.dji.sample.control.model.param.*; |
| | | import com.dji.sample.control.service.IControlService; |
| | | import com.dji.sample.control.service.IDrcService; |
| | |
| | | import com.dji.sample.wayline.service.IWaylineJobBreakPointService; |
| | | import com.dji.sample.wayline.service.IWaylineJobService; |
| | | import com.dji.sample.wayline.service.IWaylineRedisService; |
| | | import com.dji.sample.wayline.util.ErrorCodeUtil; |
| | | import com.fasterxml.jackson.core.type.TypeReference; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | import org.springframework.util.CollectionUtils; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import java.io.File; |
| | | import java.net.URL; |
| | | import java.sql.SQLException; |
| | | import java.time.*; |
| | |
| | | jobEntity.setParentId(parentId); |
| | | |
| | | return this.insertWaylineJob(jobEntity); |
| | | } |
| | | @Override |
| | | public String getWaylineId(String jobId){ |
| | | WaylineJobEntity waylineJob=mapper.selectOne(new LambdaQueryWrapper<WaylineJobEntity>().select(WaylineJobEntity::getFileId).eq(WaylineJobEntity::getJobId,jobId)); |
| | | return waylineJob.getFileId(); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public void uploadMediaHighestPriority(String workspaceId, String jobId) { |
| | | Optional<WaylineJobDTO> jobOpt = getJobByJobId(workspaceId, jobId); |
| | |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public List<String> getJobNamesByPartialName(String partialJobName) { |
| | | LambdaQueryWrapper<WaylineJobEntity> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.like(WaylineJobEntity::getName, partialJobName); |
| | | return mapper.selectList(queryWrapper).stream() |
| | | .map(WaylineJobEntity::getName) |
| | | .collect(Collectors.toList()); |
| | | } |
| | | |
| | | public WaylineJobStatusEnum getWaylineState(String dockSn) { |
| | | Optional<DeviceDTO> dockOpt = deviceRedisService.getDeviceOnline(dockSn); |
| | | if (dockOpt.isEmpty() || !StringUtils.hasText(dockOpt.get().getChildDeviceSn())) { |
| | |
| | | } |
| | | |
| | | @Override |
| | | public String getName(String jobId) { |
| | | WaylineJobEntity entity = mapper.selectOne( |
| | | new LambdaQueryWrapper<WaylineJobEntity>() |
| | | .select(WaylineJobEntity::getName) |
| | | .eq(WaylineJobEntity::getJobId, jobId) |
| | | ); |
| | | return entity != null ? entity.getName() : null; |
| | | } |
| | | |
| | | @Override |
| | | public List<String> getJobIds(String jobNames) { |
| | | List<String> names = getJobNamesByPartialName(jobNames); |
| | | // 使用 LambdaQueryWrapper 进行查询 |
| | | List<Object> jobIdList = mapper.selectObjs( |
| | | new LambdaQueryWrapper<WaylineJobEntity>() |
| | | .select(WaylineJobEntity::getJobId) |
| | | .in(WaylineJobEntity::getName, names) // 使用 IN 子句 |
| | | ); |
| | | |
| | | // 将 Object 类型的 jobId 转换为 String 类型,并放入 List<String> 中 |
| | | List<String> jobIdStringList = new ArrayList<>(); |
| | | for (Object jobIdObj : jobIdList) { |
| | | jobIdStringList.add(String.valueOf(jobIdObj)); |
| | | } |
| | | return jobIdStringList; |
| | | } |
| | | |
| | | @Override |
| | | public WaylineJobEntity getLatestJob(String workspaceId, WaylineJobQueryParam waylineJobQueryParam) { |
| | | WaylineJobEntity waylineJobEntity = mapper.getLatest(workspaceId, waylineJobQueryParam); |
| | | return waylineJobEntity; |