From 8b7b86f12fab51fe21b5575f4ffd524fbeaf412b Mon Sep 17 00:00:00 2001
From: zrj <646384940@qq.com>
Date: Tue, 20 Aug 2024 16:06:37 +0800
Subject: [PATCH] 图斑上传新增kmz,kml 上传解析代码同步

---
 src/main/java/com/dji/sample/patches/controller/PatchesController.java |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/dji/sample/patches/controller/PatchesController.java b/src/main/java/com/dji/sample/patches/controller/PatchesController.java
index 78b2265..85fb454 100644
--- a/src/main/java/com/dji/sample/patches/controller/PatchesController.java
+++ b/src/main/java/com/dji/sample/patches/controller/PatchesController.java
@@ -6,6 +6,7 @@
 import com.dji.sample.common.util.MinioUrlUtils;
 import com.dji.sample.media.model.MediaFileEntity;
 import com.dji.sample.media.service.impl.FileServiceImpl;
+import com.dji.sample.patches.constant.FileSufConstant;
 import com.dji.sample.patches.model.Param.PatchesParam;
 import com.dji.sample.patches.model.entity.LotInfo;
 import com.dji.sample.patches.service.GetPatchesService;
@@ -255,6 +256,10 @@
                                  @RequestParam double airportLat,
                                  @RequestParam double airportLon,
                                  HttpServletRequest request) throws Exception {
+        // 检查格式是否正确
+        if(!checkFileType(file.getOriginalFilename())){
+            throw new RuntimeException("文件格式异常");
+        }
         CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
         String creator = customClaim.getUsername();
         MultipartFile multipartFile = shpToDataSourceService.insertGeo(file, workspaceId, waylineName, airportLat, airportLon, creator);
@@ -272,6 +277,22 @@
         return ResponseResult.success(infoMap);
     }
 
+    /**
+     * 检查文件格式是否正确
+     * @param originalFilename
+     * @return
+     */
+    private boolean checkFileType(String originalFilename) {
+        if (originalFilename.endsWith(FileSufConstant.FILE_SUFFIX_ZIP) ||
+                originalFilename.endsWith(FileSufConstant.FILE_SUFFIX_KML) ||
+                originalFilename.endsWith(FileSufConstant.FILE_SUFFIX_KMZ)
+        ){
+            return true;
+        }
+        // 返回
+        return false;
+    }
+
     @GetMapping("/getExcel")
     public ResponseEntity<byte[]> exportExcel(@RequestParam String ids) {
 //        List<LotInfo> lotInfos = getPatchesService.listLotinfo(workspaceId);

--
Gitblit v1.9.3