| | |
| | | */ |
| | | private static final String XML_HEADER = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; |
| | | |
| | | /** |
| | | * 编辑kmz文件 |
| | | */ |
| | | @Override |
| | | public String updateKmz(UavRouteReq uavRouteReq) { |
| | | // TODO 替换本地文件路径!!! |
| | | File file = FileUtil.file("/Users/songjian/Project/IdeaProjects/dj-uav/file/kmz/航线kmz文件.kmz"); |
| | | try (ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(FileUtil.getInputStream(file))) { |
| | | public String updateKmz(UavRouteReq uavRouteReq,String fileName){ |
| | | // 校验修改的文件是否存在 |
| | | ArdRouteInformation routeInformation = ardRouteInformationService.selectArdRouteInformationByName(fileName); |
| | | if ( routeInformation == null ){ |
| | | return "修改航线文件失败,请检查文件是否存在"; |
| | | } |
| | | // 获取文件 |
| | | String minioUrl = routeInformation.getMinioUpPath(); |
| | | try (InputStream inputStream = ossService.getObject(kmzPath,minioUrl); |
| | | ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(inputStream)){ |
| | | ArchiveEntry entry; |
| | | KmlInfo kmlInfo = new KmlInfo(); |
| | | KmlInfo wpmlInfo = new KmlInfo(); |
| | |
| | | this.handleRouteUpdate(wpmlInfo, uavRouteReq, FileTypeConstants.WPML, kmlParams); |
| | | } |
| | | } |
| | | return RouteFileUtils.buildKmz("更新航线kmz文件", kmlInfo, wpmlInfo, kmzPath); |
| | | // 删除minio的文件 |
| | | |
| | | // 插入修改好的minio文件 |
| | | |
| | | return RouteFileUtils.buildKmz("更新航线kmz文件111111", kmlInfo, wpmlInfo, kmzPath); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | return "更新航线kmz文件失败"; |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 生成kmz文件(带航点) |
| | | */ |
| | | @Override |
| | | public String buildKmz(UavRouteReq uavRouteReq, String fileName) { |
| | | KmlParams kmlParams = new KmlParams(); |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 解析kmz文件 |
| | | */ |
| | | @Override |
| | | public KmzInfoVO parseKmz(String fileUrl) throws IOException { |
| | | KmzInfoVO kmzInfoVO = new KmzInfoVO(); |
| | | File file = FileUtils.downloadUrlToTempFile(fileUrl); |
| | | try (ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(FileUtil.getInputStream(file))) { |
| | | try (InputStream inputStream = ossService.getObject(kmzPath,fileUrl); |
| | | ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(inputStream)){ |
| | | ArchiveEntry entry; |
| | | while (!Objects.isNull(entry = archiveInputStream.getNextEntry())) { |
| | | String name = entry.getName(); |
| | |
| | | } |
| | | } |
| | | return kmzInfoVO; |
| | | } catch (Exception e) { |
| | | }catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return null; |
| | | |
| | | |
| | | // File file = FileUtils.downloadUrlToTempFile(fileUrl); |
| | | // try (ArchiveInputStream archiveInputStream = new ZipArchiveInputStream(FileUtil.getInputStream(file))) { |
| | | // ArchiveEntry entry; |
| | | // while (!Objects.isNull(entry = archiveInputStream.getNextEntry())) { |
| | | // String name = entry.getName(); |
| | | // if (name.toLowerCase().endsWith(".kml")) { |
| | | // kmzInfoVO.setKmlInfo(RouteFileUtils.parseKml(archiveInputStream)); |
| | | // } else if (name.toLowerCase().endsWith(".wpml")) { |
| | | // kmzInfoVO.setWpmlInfo(RouteFileUtils.parseKml(archiveInputStream)); |
| | | // } |
| | | // } |
| | | // return kmzInfoVO; |
| | | // } catch (Exception e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // return null; |
| | | } |
| | | } |