xieb
2024-04-11 06344d06ee31d3cad0616b66d10d750f0f15e238
src/main/java/com/dji/sample/patches/service/impl/ShpToDataSourceServiceImpl.java
@@ -1,5 +1,6 @@
package com.dji.sample.patches.service.impl;
import com.dji.sample.patches.config.pojo.PatchesConfigPojo;
import com.dji.sample.patches.dao.ShpToDataSourceMapper;
import com.dji.sample.patches.model.entity.LotInfo;
import com.dji.sample.patches.service.ShpToDataSourceService;
@@ -15,10 +16,12 @@
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import static com.dji.sample.patches.utils.FormatConversionUtil.getCentros;
import static com.dji.sample.patches.utils.MultipartFileTOFileUtil.convert;
import static com.dji.sample.patches.utils.ZipUtil.*;
@@ -32,18 +35,21 @@
    @Autowired
    private IWaylineFileService service;
    String head = POLYGON;
    @Value("${Patches.url.path.kmz.sourceDir}")
    String sourceDir ;
    @Value("${Patches.url.path.kmz.destKMZFile}")
    String outkmz;
    MultipartFile multipartFile;
    private String head = POLYGON;
    @Value("${patches.url.path.kmz.sourceDir}")
    private String sourceDir;
    @Value("${patches.url.path.kmz.destKMZFile}")
    private String outkmz;
    private MultipartFile multipartFile;
    String json;
    @Autowired
    private PatchesConfigPojo patchesConfigPojo;
    public MultipartFile insertGeo(MultipartFile file, String workspaceId,String waylineName, double airportLat, double airportLon) throws Exception {
        List<LotInfo> list = new ArrayList<>();
        MultipartFileTOFileUtil multipartFileTOFileUtil = new MultipartFileTOFileUtil();
        File file1 = multipartFileTOFileUtil.multipartFile2File(file);
        File file1 = MultipartFileTOFileUtil.multipartFile2File(file, patchesConfigPojo.getUnzip());
        List<String> s = ShapeFileUtil.shpToGeoJson(file1);
        String[] arr1 = FormatConversionUtil.formatConversion(s);
        for (int i = 0; i < arr1.length; i++) {
@@ -67,7 +73,7 @@
        }
        Coordinate[] coordinates = GeoToolsUtil.getRoutePointOrder(list, airportLat, airportLon);
        XMLTemplateModel xmlModel = XMLTemplateModel.init(coordinates, list);
        CreateWaylineFileUtils.createWaylineFile(xmlModel);
        CreateWaylineFileUtils.createWaylineFile(xmlModel,patchesConfigPojo.getWaylines(),patchesConfigPojo.getWaylines(),patchesConfigPojo.getWaylines(),patchesConfigPojo.getWaylines());
        // 压缩文件夹中的内容
        String destKMZFile = outkmz+waylineName+".kmz"; // 输出的KMZ文件路径
        zipFolder(sourceDir, destKMZFile);