Xiajijian
2025-11-13 79628d3faca21d92ef4cbe18c57c5499f5bb13cd
1.业务名字修改。
2 files added
4 files modified
2 files deleted
4 files renamed
844 ■■■■■ changed files
ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInfoController.java 42 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java 6 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfo.java 8 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/mapper/ArdRouteInfoMapper.java 26 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/IArdRouteInfoService.java 99 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java 99 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java 10 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java 237 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java 237 ●●●●● patch | view | raw | blame | history
ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java 12 ●●●●● patch | view | raw | blame | history
ard-route/src/main/resources/mapper/ArdRouteInfoMapper.xml 47 ●●●●● patch | view | raw | blame | history
ard-sample/src/main/java/com/ard/sample/wayline/service/impl/WaylineJobServiceImpl.java 21 ●●●●● patch | view | raw | blame | history
ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInfoController.java
File was renamed from ard-admin/src/main/java/com/ard/web/controller/route/ArdRouteInforController.java
@@ -5,8 +5,8 @@
import com.ard.common.utils.poi.ExcelUtil;
import com.ard.oss.model.MinioUploadResult;
import com.ard.route.domain.route.ArdRouteInfor;
import com.ard.route.service.IArdRouteInforService;
import com.ard.route.domain.route.ArdRouteInfo;
import com.ard.route.service.IArdRouteInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -29,19 +29,19 @@
@Api(tags = "航线信息接口")
@RestController
@RequestMapping("/route/information")
public class ArdRouteInforController extends BaseController {
public class ArdRouteInfoController extends BaseController {
    @Autowired
    private IArdRouteInforService ardRouteInforService;
    private IArdRouteInfoService ardRouteInfoService;
    /**
     * 查询航线(kmz)列表
     */
    @ApiOperation("查询航线(kmz)列表")
    @GetMapping("/list")
    public TableDataInfo list(ArdRouteInfor ardRouteInfor) {
    public TableDataInfo list(ArdRouteInfo ardRouteInfo) {
        startPage();
        List<ArdRouteInfor> list = ardRouteInforService.selectArdRouteInforList(ardRouteInfor);
        List<ArdRouteInfo> list = ardRouteInfoService.selectArdRouteInfoList(ardRouteInfo);
        return getDataTable(list);
    }
@@ -51,9 +51,9 @@
    @ApiOperation("导出航线(kmz)列表")
    @Log(title = "航线(kmz)", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, ArdRouteInfor ardRouteInfor) {
        List<ArdRouteInfor> list = ardRouteInforService.selectArdRouteInforList(ardRouteInfor);
        ExcelUtil<ArdRouteInfor> util = new ExcelUtil<ArdRouteInfor>(ArdRouteInfor.class);
    public void export(HttpServletResponse response, ArdRouteInfo ardRouteInfo) {
        List<ArdRouteInfo> list = ardRouteInfoService.selectArdRouteInfoList(ardRouteInfo);
        ExcelUtil<ArdRouteInfo> util = new ExcelUtil<ArdRouteInfo>(ArdRouteInfo.class);
        util.exportExcel(response, list, "航线(kmz)数据");
    }
@@ -63,7 +63,7 @@
    @ApiOperation("获取航线(kmz)详细信息")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") String id) {
        return success(ardRouteInforService.selectArdRouteInforById(id));
        return success(ardRouteInfoService.selectArdRouteInfoById(id));
    }
    /**
@@ -72,9 +72,9 @@
    @ApiOperation("新增航线(kmz)")
    @Log(title = "航线(kmz)", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdRouteInfor ardRouteInfor) {
        ardRouteInfor.setCreateBy(getUsername());
        return success(ardRouteInforService.insertArdRouteInfor(ardRouteInfor));
    public AjaxResult add(@RequestBody ArdRouteInfo ardRouteInfo) {
        ardRouteInfo.setCreateBy(getUsername());
        return success(ardRouteInfoService.insertArdRouteInfo(ardRouteInfo));
    }
    /**
@@ -83,9 +83,9 @@
    @ApiOperation("修改航线(kmz)")
    @Log(title = "航线(kmz)", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody ArdRouteInfor ardRouteInfor) {
        ardRouteInfor.setUpdateBy(getUsername());
        return toAjax(ardRouteInforService.updateArdRouteInfor(ardRouteInfor));
    public AjaxResult edit(@RequestBody ArdRouteInfo ardRouteInfo) {
        ardRouteInfo.setUpdateBy(getUsername());
        return toAjax(ardRouteInfoService.updateArdRouteInfo(ardRouteInfo));
    }
    /**
@@ -95,7 +95,7 @@
    @Log(title = "航线(kmz)", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids) {
        return toAjax(ardRouteInforService.deleteArdRouteInforByIds(ids));
        return toAjax(ardRouteInfoService.deleteArdRouteInfoByIds(ids));
    }
    /**
@@ -104,7 +104,7 @@
    @ApiOperation("导入航线(kmz)文件")
    @PostMapping("/upload")
    public AjaxResult upload(@RequestPart("file") MultipartFile file) {
        MinioUploadResult minioUploadResult = ardRouteInforService.uploadArdRouteInfor(file);
        MinioUploadResult minioUploadResult = ardRouteInfoService.uploadArdRouteInfo(file);
        return success(minioUploadResult);
    }
@@ -116,7 +116,7 @@
    @PutMapping("/updateGroupingId/{id}/{groupingId}")
    public AjaxResult updateGroupingId(@PathVariable("id") String id,
                                     @PathVariable("groupingId") String groupingId) {
        return toAjax(ardRouteInforService.updateRouteInformationGroupingId(id,groupingId));
        return toAjax(ardRouteInfoService.updateRouteInfomationGroupingId(id,groupingId));
    }
    /**
@@ -126,7 +126,7 @@
    @GetMapping("/noFly/{longitude}/{latitude}")
    public Boolean noFly(@PathVariable("longitude") Double longitude,
                               @PathVariable("latitude") Double latitude) {
        return ardRouteInforService.selectRouteInformationNoFly(longitude,latitude);
        return ardRouteInfoService.selectRouteInfomationNoFly(longitude,latitude);
    }
    /**
@@ -135,7 +135,7 @@
//    @ApiOperation("上传航线到边缘服务器")
//    @PostMapping
//    public AjaxResult uploadRouteInformation(@RequestBody ArdRouteInfor ArdRouteInfor) {
//        return success(ArdRouteInforService.selectArdRouteInforByName(ArdRouteInfor.getName()));
//        return success(ardRouteInfoService.selectArdRouteInforByName(ArdRouteInfor.getName()));
//    }
}
ard-route/src/main/java/com/ard/route/domain/route/ArdRouteGrouping.java
@@ -20,14 +20,14 @@
    /** ID */
    private String id;
    /** 文件夹名称 */
    @Excel(name = "文件夹名称")
    /** 分组名称 */
    @Excel(name = "分组名称")
    private String groupingName;
    /** 序列号 */
    @Excel(name = "序列号")
    private Integer serialNumber;
    private List<ArdRouteInfor> ardRouteInforLS;
    private List<ArdRouteInfo> ardRouteInfoLS;
}
ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfo.java
File was renamed from ard-route/src/main/java/com/ard/route/domain/route/ArdRouteInfor.java
@@ -12,7 +12,7 @@
 * @date 2025-10-23
 */
@Data
public class ArdRouteInfor extends BaseEntity {
public class ArdRouteInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;
@@ -21,7 +21,7 @@
    /** 文件名称 */
    @Excel(name = "文件名称")
    private String kmzName;
    private String name;
    /** 文件路径 */
    @Excel(name = "文件路径")
@@ -43,6 +43,10 @@
    @Excel(name = "负载类型")
    private String payload;
    /** 是否导入 */
    @Excel(name = "是否导入")
    private String isImport;
    /**
     * 生成kmz文件实体类
     */
ard-route/src/main/java/com/ard/route/mapper/ArdRouteInfoMapper.java
File was renamed from ard-route/src/main/java/com/ard/route/mapper/ArdRouteInforMapper.java
@@ -1,6 +1,6 @@
package com.ard.route.mapper;
import com.ard.route.domain.route.ArdRouteInfor;
import com.ard.route.domain.route.ArdRouteInfo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -11,7 +11,7 @@
 * @author xia
 * @date 2025-10-23
 */
public interface ArdRouteInforMapper {
public interface ArdRouteInfoMapper {
    /**
     * 查询航线(kmz)
@@ -19,31 +19,31 @@
     * @param id 航线(kmz)主键
     * @return 航线(kmz)
     */
    public ArdRouteInfor selectArdRouteInforById(String id);
    public ArdRouteInfo selectArdRouteInfoById(String id);
    /**
     * 查询航线(kmz)列表
     * 
     * @param ardRouteInfor 航线(kmz)
     * @param ardRouteInfo 航线(kmz)
     * @return 航线(kmz)集合
     */
    public List<ArdRouteInfor> selectArdRouteInforList(ArdRouteInfor ardRouteInfor);
    public List<ArdRouteInfo> selectArdRouteInfoList(ArdRouteInfo ardRouteInfo);
    /**
     * 新增航线(kmz)
     * 
     * @param ardRouteInfor 航线(kmz)
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    public int insertArdRouteInfor(ArdRouteInfor ardRouteInfor);
    public int insertArdRouteInfo(ArdRouteInfo ardRouteInfo);
    /**
     * 修改航线(kmz)
     * 
     * @param ardRouteInfor 航线(kmz)
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    public int updateArdRouteInfor(ArdRouteInfor ardRouteInfor);
    public int updateArdRouteInfo(ArdRouteInfo ardRouteInfo);
    /**
     * 删除航线(kmz)
@@ -51,7 +51,7 @@
     * @param id 航线(kmz)主键
     * @return 结果
     */
    public int deleteArdRouteInforById(String id);
    public int deleteArdRouteInfoById(String id);
    /**
     * 批量删除航线(kmz)
@@ -59,7 +59,7 @@
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteArdRouteInforByIds(String[] ids);
    public int deleteArdRouteInfoByIds(String[] ids);
    /**
     * 根据文件名称查询航线信息
@@ -67,7 +67,7 @@
     * @param fileName 文件名称
     * @return 结果
     */
    public ArdRouteInfor selectArdRouteInforByName(String fileName);
    public ArdRouteInfo selectArdRouteInfoByName(String fileName);
    /**
     * 根据所属分组ID,删除信息
@@ -83,7 +83,7 @@
     * @param groupingId 所属分组ID
     * @return 航线(kmz)集合
     */
    public List<ArdRouteInfor> selectArdRouteInforByGroupingId(String groupingId);
    public List<ArdRouteInfo> selectArdRouteInfoByGroupingId(String groupingId);
    /**
     * 修改航线分组ID
ard-route/src/main/java/com/ard/route/service/IArdRouteInfoService.java
New file
@@ -0,0 +1,99 @@
package com.ard.route.service;
import com.ard.oss.model.MinioUploadResult;
import com.ard.route.domain.route.ArdRouteInfo;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
 * 航线(kmz)Service接口
 *
 * @author xia
 * @date 2025-10-23
 */
public interface IArdRouteInfoService {
    /**
     * 查询航线(kmz)
     *
     * @param id 航线(kmz)主键
     * @return 航线(kmz)
     */
    public ArdRouteInfo selectArdRouteInfoById(String id);
    /**
     * 查询航线(kmz)列表
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 航线(kmz)集合
     */
    public List<ArdRouteInfo> selectArdRouteInfoList(ArdRouteInfo ardRouteInfo);
    /**
     * 新增航线(kmz)
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    public String insertArdRouteInfo(ArdRouteInfo ardRouteInfo);
    /**
     * 修改航线(kmz)
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    public int updateArdRouteInfo(ArdRouteInfo ardRouteInfo);
    /**
     * 批量删除航线(kmz)
     *
     * @param ids 需要删除的航线(kmz)主键集合
     * @return 结果
     */
    public int deleteArdRouteInfoByIds(String[] ids);
    /**
     * 删除航线(kmz)信息
     *
     * @param id 航线(kmz)主键
     * @return 结果
     */
    public int deleteArdRouteInfoById(String id);
    /**
     * 导入航线(kmz)文件
     *
     * @param file 文件
     * @return 结果
     */
    public MinioUploadResult uploadArdRouteInfo(MultipartFile file);
    /**
     * 根据文件名称查询航线信息
     *
     * @param name 文件
     * @return 结果
     */
    public ArdRouteInfo selectArdRouteInfoByName(String name);
    /**
     * 修改航线分组ID
     *
     * @param id ID
     * @param groupingId 分组ID
     * @return 结果
     */
    public int updateRouteInfomationGroupingId(String id,String groupingId);
    /**
     * 判断行点是否在禁飞区
     *
     * @param longitude 经度
     * @param latitude 纬度
     * @return 结果
     */
    public Boolean selectRouteInfomationNoFly(Double longitude, Double latitude);
}
ard-route/src/main/java/com/ard/route/service/IArdRouteInforService.java
File was deleted
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteGroupingServiceImpl.java
@@ -9,7 +9,7 @@
import com.ard.common.utils.uuid.IdUtils;
import com.ard.route.domain.route.ArdRouteGrouping;
import com.ard.route.mapper.ArdRouteGroupingMapper;
import com.ard.route.mapper.ArdRouteInforMapper;
import com.ard.route.mapper.ArdRouteInfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ard.route.service.IArdRouteGroupingService;
@@ -28,7 +28,7 @@
    private ArdRouteGroupingMapper ardRouteGroupingMapper;
    @Autowired
    private ArdRouteInforMapper ardRouteInforMapper;
    private ArdRouteInfoMapper ardRouteInfoMapper;
    /**
     * 查询分组
@@ -39,7 +39,7 @@
    @Override
    public ArdRouteGrouping selectArdRouteGroupingById(String id) {
        ArdRouteGrouping ardRouteGrouping = ardRouteGroupingMapper.selectArdRouteGroupingById(id);
        ardRouteGrouping.setArdRouteInforLS(ardRouteInforMapper.selectArdRouteInforByGroupingId(id));
        ardRouteGrouping.setArdRouteInfoLS(ardRouteInfoMapper.selectArdRouteInfoByGroupingId(id));
        return ardRouteGrouping;
    }
@@ -54,7 +54,7 @@
    public List<ArdRouteGrouping> selectArdRouteGroupingList(ArdRouteGrouping ardRouteGrouping) {
        List<ArdRouteGrouping> list = ardRouteGroupingMapper.selectArdRouteGroupingList(ardRouteGrouping);
        for (ArdRouteGrouping routeGrouping : list) {
            routeGrouping.setArdRouteInforLS(ardRouteInforMapper.selectArdRouteInforByGroupingId(routeGrouping.getId()));
            routeGrouping.setArdRouteInfoLS(ardRouteInfoMapper.selectArdRouteInfoByGroupingId(routeGrouping.getId()));
        }
        return list;
    }
@@ -110,7 +110,7 @@
        Map<String, Integer> result = new HashMap<>();
        try {
            // 先删除航线信息
            int informationCount = ardRouteInforMapper.deleteRouteInforByGroupingIds(ids);
            int informationCount = ardRouteInfoMapper.deleteRouteInforByGroupingIds(ids);
            result.put("informationCount", informationCount);
            // 再删除分组
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInfoServiceImpl.java
New file
@@ -0,0 +1,237 @@
package com.ard.route.service.impl;
import java.io.IOException;
import java.util.List;
import com.ard.common.exception.ControlException;
import com.ard.common.utils.DateUtils;
import com.ard.common.utils.file.FileUtils;
import com.ard.common.utils.uuid.IdUtils;
import com.ard.data.noflyzone.domain.ArdNoFlyZone;
import com.ard.data.noflyzone.domain.Vertex;
import com.ard.data.noflyzone.service.IArdNoFlyZoneService;
import com.ard.data.noflyzone.utils.NoFlyZoneUtils;
import com.ard.oss.model.MinioUploadResult;
import com.ard.oss.service.impl.OssServiceContext;
import com.ard.route.domain.UavRouteReq;
import com.ard.route.domain.route.ArdRouteInfo;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import static com.ard.route.util.ToolUtils.*;
/**
 * 航线(kmz)Service业务层处理
 *
 * @author xia
 * @date 2025-10-23
 */
@Service
public class ArdRouteInfoServiceImpl implements IArdRouteInfoService {
    @Autowired
    private ArdRouteInfoMapper ardRouteInfoMapper;
    @Autowired
    private OssServiceContext ossService;
    @Autowired
    private UavRouteService routeService;
    @Resource
    private IArdNoFlyZoneService ardNoFlyZoneService;
    /**
     * 查询航线(kmz)
     *
     * @param id 航线(kmz)主键
     * @return 航线(kmz)
     */
    @Override
    public ArdRouteInfo selectArdRouteInfoById(String id) {
        ArdRouteInfo ardRouteInfo = ardRouteInfoMapper.selectArdRouteInfoById(id);
        try {
            ardRouteInfo.setUavRouteReq((UavRouteReq) deserialize(ardRouteInfo.getRouteData()));
        } catch (IOException | ClassNotFoundException e) {
            throw new RuntimeException(e);
        }
        return ardRouteInfo;
    }
    /**
     * 查询航线(kmz)列表
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 航线(kmz)
     */
    @Override
    public List<ArdRouteInfo> selectArdRouteInfoList(ArdRouteInfo ardRouteInfo) {
        return ardRouteInfoMapper.selectArdRouteInfoList(ardRouteInfo);
    }
    /**
     * 新增航线(kmz)
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    @Override
    public String insertArdRouteInfo(ArdRouteInfo ardRouteInfo) {
        ardRouteInfo.setId(IdUtils.simpleUUID());
        ardRouteInfo.setCreateTime(DateUtils.getNowDate());
        if (ardRouteInfo.getGroupingId() == null){
            ardRouteInfo.setGroupingId("0");
        }
        // 航线数据
        byte[] routeData;
        try {
            routeData = serialize(ardRouteInfo.getUavRouteReq());
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        ardRouteInfo.setRouteData(routeData);
        KmzResultVo kmzResult = routeService.buildKmz(ardRouteInfo.getUavRouteReq(), ardRouteInfo.getName());
        ardRouteInfo.setUpPath(kmzResult.getUpPath());
        ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
        return kmzResult.getUpPath();
    }
    /**
     * 修改航线(kmz)
     *
     * @param ardRouteInfo 航线(kmz)
     * @return 结果
     */
    @Override
    public int updateArdRouteInfo(ArdRouteInfo ardRouteInfo) {
        ardRouteInfo.setUpdateTime(DateUtils.getNowDate());
        KmzResultVo kmzResult = new KmzResultVo();
        // 获取源文件名字
        ArdRouteInfo route = ardRouteInfoMapper.selectArdRouteInfoById(ardRouteInfo.getId());
        if (route.getName().equals(ardRouteInfo.getName())) {
            kmzResult = routeService.updateKmz(ardRouteInfo.getUavRouteReq(), ardRouteInfo.getName());
        }else {
            kmzResult = routeService.updateKmzNew(ardRouteInfo.getUavRouteReq(), route.getName(), ardRouteInfo.getName());
        }
        if ("更新航线kmz文件失败".equals(kmzResult.getData())) {
            return 0;
        }
        ardRouteInfo.setUpPath(kmzResult.getUpPath());
        return ardRouteInfoMapper.updateArdRouteInfo(ardRouteInfo);
    }
    /**
     * 批量删除航线(kmz)
     *
     * @param ids 需要删除的航线(kmz)主键
     * @return 结果
     */
    @Override
    public int deleteArdRouteInfoByIds(String[] ids) {
        // 删除航线(kmz)文件
        for (String id : ids) {
            ArdRouteInfo information = ardRouteInfoMapper.selectArdRouteInfoById(id);
            ossService.deleteObject("kmz", subStringMinioUrlName(information.getUpPath()));
        }
        return ardRouteInfoMapper.deleteArdRouteInfoByIds(ids);
    }
    /**
     * 删除航线(kmz)信息
     *
     * @param id 航线(kmz)主键
     * @return 结果
     */
    @Override
    public int deleteArdRouteInfoById(String id) {
        return ardRouteInfoMapper.deleteArdRouteInfoById(id);
    }
    /**
     * 导入航线(kmz)文件
     *
     * @param file 文件
     * @return 结果
     */
    @Override
    public MinioUploadResult uploadArdRouteInfo(MultipartFile file) {
        try {
            String url = ossService.upload("kmz",file);
            ArdRouteInfo information = new ArdRouteInfo();
            information.setName(file.getOriginalFilename());
            information.setUpPath(url);
            information.setGroupingId("0");     // 默认分组
            insertRouteInfomation(information);
            return MinioUploadResult.builder()
                    .url(url)
                    .newFileName(FileUtils.getName(url))
                    .originalFilename(file.getOriginalFilename())
                    .build();
        }catch (Exception e){
            return null;
        }
    }
    /**
     * 根据文件名称查询航线信息
     *
     * @param name 文件名称
     * @return 结果
     */
    @Override
    public ArdRouteInfo selectArdRouteInfoByName(String name) {
        return ardRouteInfoMapper.selectArdRouteInfoByName(name);
    }
    /**
     * 修改航线分组ID
     *
     * @param id ID
     * @param groupingId 分组ID
     * @return 结果
     */
    @Override
    public int updateRouteInfomationGroupingId(String id, String groupingId) {
        return ardRouteInfoMapper.updateRouteInforGroupingId(id, groupingId);
    }
    /**
     * 判断行点是否在禁飞区
     *
     * @param longitude 经度
     * @param latitude 纬度
     * @return 结果
     */
    @Override
    public Boolean selectRouteInfomationNoFly(Double longitude, Double latitude) {
        if (longitude == null || latitude == null) {
            throw new ControlException("方法参数中未找到有效经纬度字段,无法判断禁飞区!");
        }
        List<ArdNoFlyZone> ardNoFlyZones = ardNoFlyZoneService.selectArdNoFlyZoneList(new ArdNoFlyZone());
        if (!ardNoFlyZones.isEmpty()) {
            Vertex vertex = new Vertex(longitude, latitude);
//            boolean inNoFlyZones = NoFlyZoneUtils.isPointInPolygon(vertex, ardNoFlyZones);
//            if (inNoFlyZones) {
//                throw new ControlException("目标点在禁飞区内,无法执行操作!");
//            }
        }
        return true;
    }
    /**
     * 数据新增航线信息
     */
    private void insertRouteInfomation(ArdRouteInfo ardRouteInfo){
        ardRouteInfo.setId(IdUtils.simpleUUID());
        ardRouteInfo.setCreateTime(DateUtils.getNowDate());
        ardRouteInfoMapper.insertArdRouteInfo(ardRouteInfo);
    }
}
ard-route/src/main/java/com/ard/route/service/impl/ArdRouteInforServiceImpl.java
File was deleted
ard-route/src/main/java/com/ard/route/service/impl/UavRouteServiceImpl.java
@@ -9,11 +9,11 @@
import com.ard.route.domain.WaypointHeadingReq;
import com.ard.route.domain.WaypointTurnReq;
import com.ard.route.domain.kml.*;
import com.ard.route.domain.route.ArdRouteInfor;
import com.ard.route.domain.route.ArdRouteInfo;
import com.ard.route.domain.vo.KmzInfoVO;
import com.ard.route.domain.vo.KmzResultVo;
import com.ard.route.enums.kml.ExitOnRCLostEnums;
import com.ard.route.service.IArdRouteInforService;
import com.ard.route.service.IArdRouteInfoService;
import com.ard.route.util.InitializationUtils;
import com.ard.route.util.RouteFileUtils;
import com.ard.route.service.UavRouteService;
@@ -49,7 +49,7 @@
    private OssServiceContext ossService;
    @Resource
    private IArdRouteInforService ardRouteInformationService;
    private IArdRouteInfoService ardRouteInformationService;
    InitializationUtils init = new InitializationUtils();
@@ -60,7 +60,7 @@
    public KmzResultVo updateKmz(UavRouteReq uavRouteReq,String fileName){
        KmzResultVo result = new KmzResultVo();
        // 校验修改的文件是否存在
        ArdRouteInfor routeInformation = ardRouteInformationService.selectArdRouteInforByName(fileName);
        ArdRouteInfo routeInformation = ardRouteInformationService.selectArdRouteInfoByName(fileName);
        if ( routeInformation == null ){
            result.setData("修改航线文件失败,请检查文件是否存在");
            return result;
@@ -87,7 +87,7 @@
            }
            // 删除文件
            ossService.deleteObject(kmzPath, minioUrlName);
            return buildKmzMethod(routeInformation.getKmzName(), kmlInfo, wpmlInfo);
            return buildKmzMethod(routeInformation.getName(), kmlInfo, wpmlInfo);
        } catch (Exception e) {
            e.printStackTrace();
            result.setData("更新航线kmz文件失败");
@@ -257,7 +257,7 @@
    public KmzResultVo updateKmzNew(UavRouteReq uavRouteReq, String oldFile, String newFile) {
        KmzResultVo result = new KmzResultVo();
        // 校验修改的文件是否存在
        ArdRouteInfor routeInformation = ardRouteInformationService.selectArdRouteInforByName(oldFile);
        ArdRouteInfo routeInformation = ardRouteInformationService.selectArdRouteInfoByName(oldFile);
        if ( routeInformation == null ){
            result.setData("修改航线文件失败,请检查文件是否存在");
            return result;
ard-route/src/main/resources/mapper/ArdRouteInfoMapper.xml
File was renamed from ard-route/src/main/resources/mapper/ArdRouteInforMapper.xml
@@ -2,32 +2,34 @@
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ard.route.mapper.ArdRouteInforMapper">
<mapper namespace="com.ard.route.mapper.ArdRouteInfoMapper">
    
    <resultMap type="ArdRouteInfor" id="ArdRouteInforResult">
    <resultMap type="ArdRouteInfo" id="ArdRouteInfoResult">
        <result property="id"    column="id"    />
        <result property="kmzName"    column="kmz_name"    />
        <result property="name"    column="name"    />
        <result property="upPath"    column="up_path"    />
        <result property="groupingId"    column="grouping_id"    />
        <result property="type"    column="type"    />
        <result property="aircraft"    column="aircraft"    />
        <result property="payload"    column="payload"    />
        <result property="routeData"    column="route_data"    />
        <result property="isImport"    column="is_import"    />
        <result property="createBy"    column="create_by"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="updateTime"    column="update_time"    />
    </resultMap>
    <sql id="selectArdRouteInforVo">
    <sql id="selectArdRouteInfoVo">
        select id,
               kmz_name,
               name,
               up_path,
               grouping_id,
               type,
               aircraft,
               payload,
               route_data,
               is_import,
               create_by,
               create_time,
               update_by,
@@ -35,10 +37,10 @@
        from ard_route_infor
    </sql>
    <select id="selectArdRouteInforList" parameterType="ArdRouteInfor" resultMap="ArdRouteInforResult">
        <include refid="selectArdRouteInforVo"/>
    <select id="selectArdRouteInfoList" parameterType="ArdRouteInfo" resultMap="ArdRouteInfoResult">
        <include refid="selectArdRouteInfoVo"/>
        <where>  
            <if test="kmzName != null  and kmzName != ''"> and kmz_name like concat('%', #{kmzName}, '%')</if>
            <if test="name != null  and kmzName != ''"> and name like concat('%', #{name}, '%')</if>
            <if test="aircraft != null  and aircraft != ''"> and aircraft = #{aircraft}</if>
            <if test="payload != null  and payload != ''"> and payload = #{payload}</if>
            <if test="type != null  and type != ''"> and type = #{type}</if>
@@ -46,22 +48,23 @@
        </where>
    </select>
    
    <select id="selectArdRouteInforById" parameterType="String" resultMap="ArdRouteInforResult">
        <include refid="selectArdRouteInforVo"/>
    <select id="selectArdRouteInfoById" parameterType="String" resultMap="ArdRouteInfoResult">
        <include refid="selectArdRouteInfoVo"/>
        where id = #{id}
    </select>
    <insert id="insertArdRouteInfor" parameterType="ArdRouteInfor">
    <insert id="insertArdRouteInfo" parameterType="ArdRouteInfo">
        insert into ard_route_infor
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="kmzName != null">kmz_name,</if>
            <if test="name != null">name,</if>
            <if test="upPath != null">up_path,</if>
            <if test="groupingId != null">grouping_id,</if>
            <if test="type != null">type,</if>
            <if test="aircraft != null">aircraft,</if>
            <if test="payload != null">payload,</if>
            <if test="routeData != null">route_data,</if>
            <if test="isImport != null">is_import,</if>
            <if test="createBy != null">create_by,</if>
            <if test="createTime != null">create_time,</if>
            <if test="updateBy != null">update_by,</if>
@@ -69,13 +72,14 @@
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="kmzName != null">#{kmzName},</if>
            <if test="name != null">#{name},</if>
            <if test="upPath != null">#{upPath},</if>
            <if test="groupingId != null">#{groupingId},</if>
            <if test="type != null">#{type},</if>
            <if test="aircraft != null">#{aircraft},</if>
            <if test="payload != null">#{payload},</if>
            <if test="routeData != null">#{routeData},</if>
            <if test="isImport != null">#{isImport},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="createTime != null">#{createTime},</if>
            <if test="updateBy != null">#{updateBy},</if>
@@ -83,15 +87,16 @@
         </trim>
    </insert>
    <update id="updateArdRouteInfor" parameterType="ArdRouteInfor">
    <update id="updateArdRouteInfo" parameterType="ArdRouteInfo">
        update ard_route_infor
        <trim prefix="SET" suffixOverrides=",">
            <if test="kmzName != null">kmz_name = #{kmzName},</if>
            <if test="name != null">name = #{name},</if>
            <if test="upPath != null">up_path = #{upPath},</if>
            <if test="type != null">type = #{type},</if>
            <if test="aircraft != null">aircraft = #{aircraft},</if>
            <if test="payload != null">payload = #{payload},</if>
            <if test="routeData != null">route_data = #{routeData},</if>
            <if test="isImport != null">is_import = #{isImport},</if>
            <if test="createBy != null">create_by = #{createBy},</if>
            <if test="createTime != null">create_time = #{createTime},</if>
            <if test="updateBy != null">update_by = #{updateBy},</if>
@@ -100,19 +105,19 @@
        where id = #{id}
    </update>
    <delete id="deleteArdRouteInforById" parameterType="String">
    <delete id="deleteArdRouteInfoById" parameterType="String">
        delete from ard_route_infor where id = #{id}
    </delete>
    <delete id="deleteArdRouteInforByIds" parameterType="String">
    <delete id="deleteArdRouteInfoByIds" parameterType="String">
        delete from ard_route_infor where id in
        <foreach item="id" collection="array" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectArdRouteInforByName" parameterType="String" resultMap="ArdRouteInforResult">
        <include refid="selectArdRouteInforVo"/>
    <select id="selectArdRouteInfoByName" parameterType="String" resultMap="ArdRouteInfoResult">
        <include refid="selectArdRouteInfoVo"/>
        where file_name = #{fileName}
    </select>
@@ -123,8 +128,8 @@
        </foreach>
    </delete>
    <select id="selectArdRouteInforByGroupingId" parameterType="String" resultMap="ArdRouteInforResult">
        select id,kmz_name,up_path,grouping_id,type,aircraft,payload,create_by,create_time,update_by,update_time from ard_route_infor
    <select id="selectArdRouteInfoByGroupingId" parameterType="String" resultMap="ArdRouteInfoResult">
        select id,name,up_path,grouping_id,type,aircraft,payload,is_import,create_by,create_time,update_by,update_time from ard_route_infor
        <where>
            <if test="groupingId != null "> and grouping_id = #{groupingId}</if>
        </where>
ard-sample/src/main/java/com/ard/sample/wayline/service/impl/WaylineJobServiceImpl.java
@@ -1,8 +1,8 @@
package com.ard.sample.wayline.service.impl;
import com.ard.oss.service.impl.OssServiceContext;
import com.ard.route.domain.route.ArdRouteInformation;
import com.ard.route.service.IArdRouteInformationService;
import com.ard.route.domain.route.ArdRouteInfo;
import com.ard.route.service.IArdRouteInfoService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -27,7 +27,6 @@
import com.ard.sample.wayline.model.enums.WaylineMethodEnum;
import com.ard.sample.wayline.model.enums.WaylineTaskTypeEnum;
import com.ard.sample.wayline.model.param.CreateJobParam;
import com.ard.sample.wayline.service.IWaylineFileService;
import com.ard.sample.wayline.service.IWaylineJobService;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -45,7 +44,6 @@
import javax.annotation.Resource;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.sql.SQLException;
import java.time.Instant;
@@ -55,6 +53,7 @@
import java.util.stream.Collectors;
import static com.ard.route.util.ToolUtils.kmzPath;
import static com.ard.route.util.ToolUtils.subStringMinioUrlName;
/**
 * @author sean
@@ -73,7 +72,7 @@
//    private IWaylineFileService waylineFileService;
    @Autowired
    private IArdRouteInformationService _ardRouteInformationService;
    private IArdRouteInfoService _ardRouteInfoService;
    @Resource
    private OssServiceContext _ossService;
@@ -192,7 +191,7 @@
//            return ResponseResult.error("机场任务航线不存在!");
//        }
        // 换航线表
        ArdRouteInformation ardRouteOpt = _ardRouteInformationService.selectArdRouteInformationById(waylineJob.getFileId());
        ArdRouteInfo ardRouteOpt = _ardRouteInfoService.selectArdRouteInfoById(waylineJob.getFileId());
        if (ardRouteOpt == null) {
            return ResponseResult.error("机场任务航线不存在!");
        }
@@ -200,7 +199,7 @@
        // get file url
//        URL url = waylineFileService.getObjectUrl(waylineFile.get().getWaylineId());
        URL url= null;
        String minioUrl = ardRouteOpt.getMinioUpPath();
        String minioUrl = subStringMinioUrlName(ardRouteOpt.getUpPath());
        String md5 = "";
        try (InputStream inputStream = _ossService.getObject(kmzPath,minioUrl))
        {
@@ -509,7 +508,7 @@
//        }
        // 修改航线文件名称,从ard_route_information航线表中取;
        // 换航线表
        ArdRouteInformation ardRouteOpt = _ardRouteInformationService.selectArdRouteInformationById(waylineJob.getFileId());
        ArdRouteInfo ardRouteOpt = _ardRouteInfoService.selectArdRouteInfoById(waylineJob.getFileId());
        if (ardRouteOpt == null) {
            builder.data(RequestsReply.error(CommonErrorEnum.ILLEGAL_ARGUMENT));
            messageSender.publish(topic, builder.build());
@@ -518,7 +517,7 @@
        // get file url
        URL url = null;
        String minioUrl = ardRouteOpt.getMinioUpPath();
        String minioUrl = subStringMinioUrlName(ardRouteOpt.getUpPath());
        String md5 = "";
        try (InputStream inputStream = _ossService.getObject(kmzPath,minioUrl))
        {
@@ -636,8 +635,8 @@
                .fileId(entity.getFileId())
//                .fileName(waylineFileService.getWaylineByWaylineId(entity.getFileId())
//                        .orElse(WaylineFileDTO.builder().build()).getName())
                .fileName(_ardRouteInformationService.selectArdRouteInformationById(entity.getFileId())
                        .getFileName())
                .fileName(_ardRouteInfoService.selectArdRouteInfoById(entity.getFileId())
                        .getName())
                .dockSn(entity.getDockSn())
                .dockName(deviceService.getDeviceBySn(entity.getDockSn())
                        .orElse(DeviceDTO.builder().build()).getNickname())