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())