From 75e6eea8cd3fac9cc888e2ffc9cdb126fab8429d Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Wed, 14 Aug 2024 15:45:55 +0800
Subject: [PATCH] 任务下发、更新、取消,优化图斑逻辑

---
 src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java |   22 ++++++++++++++--------
 1 files changed, 14 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java b/src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java
index d52356e..27d0d52 100644
--- a/src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java
+++ b/src/main/java/com/dji/sample/wayline/plane/controller/CreateWayLineController.java
@@ -2,6 +2,8 @@
 
 import com.dji.sample.common.model.CustomClaim;
 import com.dji.sample.common.model.ResponseResult;
+import com.dji.sample.media.model.MinioPojo;
+import com.dji.sample.media.util.MinioFileDownloader;
 import com.dji.sample.patches.config.pojo.PatchesConfigPojo;
 import com.dji.sample.patches.utils.MultipartFileTOFileUtil;
 import com.dji.sample.patches.utils.TimerUtil;
@@ -16,6 +18,7 @@
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletRequest;
+import javax.validation.Valid;
 import java.io.File;
 import java.io.IOException;
 
@@ -34,14 +37,17 @@
     @Autowired
     private IWaylineFileService waylineFileService;
 
+    @Autowired
+    private MinioPojo pojo;
+
     @PostMapping("/createPoints")
-    public ResponseResult createPoints(@RequestBody CreateWaylineParam param) {
+    public ResponseResult createPoints(@RequestBody @Valid CreateWaylineParam param) {
         return ResponseResult.success(PlaneCourseUtils.createWaylinePoints(param));
     }
 
     @PostMapping("/{workspace_id}/saveWayLineFile")
     public ResponseResult saveWayLineFile(@PathVariable(name = "workspace_id") String workspaceId,
-                                          @RequestBody CreateWaylineParam param,
+                                          @RequestBody @Valid CreateWaylineParam param,
                                           HttpServletRequest request
     ) throws IOException {
         CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
@@ -59,24 +65,24 @@
         return ResponseResult.success();
     }
 
-    @PutMapping("/{workspace_id}/updateWayLineFile/{id}")
+    @PostMapping("/{workspace_id}/updateWayLineFile")
     public ResponseResult updateWayLineFile(@PathVariable(name = "workspace_id") String workspaceId,
-                                            @PathVariable(name = "id") String id,
                                             @RequestBody CreateWaylineParam param,
                                             HttpServletRequest request) throws IOException {
+        String kmz=param.getWaylineName()+".kmz";
+        MinioFileDownloader.deleteFileFromMinio(pojo.getEndpoint(), pojo.getAccessKey(), pojo.getSecretKey(), pojo.getBucket(), kmz);
         CustomClaim customClaim = (CustomClaim) request.getAttribute(TOKEN_CLAIM);
         String creator = customClaim.getUsername();
-        String newName = param.getWaylineName() + TimerUtil.getNowDay();
-//         初始化模板对象
+//        初始化模板对象
         XMLTemplateModel xmlModel = XMLTemplateModel.initPolygon(param);
 //        生成航线文件
         CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneTemplate(), patchesConfigPojo.getPlaneTargetTemplate());
         CreateWaylineFileUtils.createWaylineFileByPolygon(xmlModel, patchesConfigPojo.getPlaneWaylines(), patchesConfigPojo.getPlaneTargetWaylines());
 //        kmz、上传航线库
-        String destKMZFile = patchesConfigPojo.getPlaneKMZFile() + newName + ".kmz"; // 输出的KMZ文件路径
+        String destKMZFile = patchesConfigPojo.getPlaneKMZFile() + param.getWaylineName() + ".kmz"; // 输出的KMZ文件路径
         ZipUtil.zipFolder(patchesConfigPojo.getSourceDir(), destKMZFile);
         MultipartFile multipartFile = MultipartFileTOFileUtil.convert(new File(destKMZFile));
-        waylineFileService.importPlaneKmzFile(multipartFile, workspaceId, creator, newName, id);
+        waylineFileService.importPlaneKmzFile(multipartFile, workspaceId, creator, null, "1");
         return ResponseResult.success();
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3