Xiajijian
2025-11-27 9d81f6179a527eeef8ba9b567ed06e01b70ed062
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java
@@ -14,18 +14,18 @@
import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
import com.ard.oss.model.MinioUploadResult;
import com.ard.oss.service.impl.OssServiceContext;
import com.ard.ossdock.service.impl.OssDockServiceContext;
import com.ard.route.domain.djuav.ActionGroupReq;
import com.ard.route.domain.djuav.PointActionReq;
import com.ard.route.domain.djuav.RoutePointReq;
import com.ard.route.domain.djuav.UavRouteReq;
import com.ard.route.domain.dto.ArdNoflyDto;
import com.ard.route.domain.route.ArdRouteInfo;
import com.ard.route.domain.sixhe.ArdRouteChange;
import com.ard.route.domain.vo.KmzInfoVo;
import com.ard.route.domain.vo.KmzResultVo;
import com.ard.route.mapper.ArdRouteInfoMapper;
import com.ard.route.service.IArdRouteInfoService;
import com.ard.route.service.UavRouteService;
import com.ard.work.domain.cache.UavWaylineCache;
import com.ard.work.domain.dto.state.PointData;
import com.ard.work.domain.dto.wayline.*;
import com.ard.work.service.ITyService;
@@ -51,6 +51,9 @@
    @Autowired
    private OssServiceContext ossService;
    @Autowired
    private OssDockServiceContext ossDockService;
    @Autowired
    private UavRouteService routeService;
@@ -174,6 +177,7 @@
        for (String id : ids) {
            ArdRouteInfo information = ardRouteInfoMapper.selectArdRouteInfoById(id);
            ossService.deleteObject("kmz", subStringMinioUrlName(information.getPath()));
            ossDockService.deleteObject("kmz", subStringMinioUrlName(information.getPath1()));
        }
        return ardRouteInfoMapper.deleteArdRouteInfoByIds(ids);
    }
@@ -199,11 +203,15 @@
    public MinioUploadResult uploadArdRouteInfo(MultipartFile file) {
        try {
            String url = ossService.upload("kmz",file);
            String urlDock = ossDockService.upload("kmz",file);
            ArdRouteInfo information = new ArdRouteInfo();
            information.setName(file.getOriginalFilename());
            information.setPath(url);
            information.setPath1(urlDock);
            information.setGroupId("0");     // 默认分组
            information.setReadOnly("1");   // 默认只读
            // 生成kmz文件实体类加工
            // 增加航线实体类信息
            insertRouteInfomation(information);
            return MinioUploadResult.builder()
@@ -268,7 +276,12 @@
        // 2.将航线信息转换成对应实体类
        WayLineUploadDTO wayLineUploadDTO = buildWayLineUploadDTO(route);
        wayLineUploadDTO.setBoxSn(boxSn);
        // 3.调用接口
        // 3.缓存航线信息
        WaylineInfo WaylineInfo = new WaylineInfo();
        WaylineInfo.setBoxSn(boxSn);
        WaylineInfo.setWaylineId(route.getId());
        UavWaylineCache.put(WaylineInfo);
        // 4.调用接口
        tyService.wayLineUpload(wayLineUploadDTO);
        return true;
    }
@@ -476,6 +489,7 @@
    private void insertRouteInfomation(ArdRouteInfo ardRouteInfo){
        ardRouteInfo.setId(IdUtils.simpleUUID());
        ardRouteInfo.setCreateTime(DateUtils.getNowDate());
        ardRouteInfo.setUpdateTime(DateUtils.getNowDate());
        ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
    }