From a0ad613e75498fb4331b7f3eb55b60cec7896d88 Mon Sep 17 00:00:00 2001
From: shenyijian <1178253012@qq.com>
Date: Tue, 28 Nov 2023 14:02:30 +0800
Subject: [PATCH] 无人机 -外网文件地址处理
---
src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java | 30 ++++++++++++++++++++++++------
1 files changed, 24 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
index 49cdad2..5ceaab9 100644
--- a/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
+++ b/src/main/java/com/dji/sample/wayline/controller/WaylineFileController.java
@@ -3,11 +3,15 @@
import com.dji.sample.common.model.CustomClaim;
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.common.model.ResponseResult;
+import com.dji.sample.common.util.MinioUrlUtils;
+import com.dji.sample.log.aspect.SysLogAnnotation;
import com.dji.sample.wayline.model.dto.WaylineFileDTO;
import com.dji.sample.wayline.model.dto.WaylineFileUploadDTO;
+import com.dji.sample.wayline.model.dto.WaylineListDTO;
import com.dji.sample.wayline.model.param.WaylineQueryParam;
import com.dji.sample.wayline.service.IWaylineFileService;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -45,6 +49,7 @@
* @return
*/
@GetMapping("/{workspace_id}/waylines")
+ @SysLogAnnotation(operModul = "航线库", operType = "查询", operDesc = "根据查询条件查询航路线文件的基本数据")
public ResponseResult<PaginationData<WaylineFileDTO>> getWaylinesPagination(@RequestParam(name = "order_by") String orderBy,
@RequestParam(required = false) boolean favorited, @RequestParam Integer page,
@RequestParam(name = "page_size", defaultValue = "10") Integer pageSize,
@@ -69,12 +74,13 @@
* @param response
*/
@GetMapping("/{workspace_id}/waylines/{wayline_id}/url")
+ @SysLogAnnotation(operModul = "航线库", operType = "查询", operDesc = "根据wayline文件id查询文件的下载地址1")
public void getFileUrl(@PathVariable(name = "workspace_id") String workspaceId,
@PathVariable(name = "wayline_id") String waylineId, HttpServletResponse response) {
try {
URL url = waylineFileService.getObjectUrl(workspaceId, waylineId);
- response.sendRedirect(url.toString());
+ response.sendRedirect(MinioUrlUtils.getUrl(url));
} catch (IOException | SQLException e) {
e.printStackTrace();
@@ -82,6 +88,7 @@
}
@GetMapping("/{workspace_id}/waylines/{wayline_id}/urlData")
+ @SysLogAnnotation(operModul = "航线库", operType = "查询", operDesc = "根据wayline文件id查询文件的下载地址2")
public ResponseResult getFileUrlData(@PathVariable(name = "workspace_id") String workspaceId,
@PathVariable(name = "wayline_id") String waylineId, HttpServletResponse response) {
@@ -91,7 +98,7 @@
} catch (SQLException e) {
throw new RuntimeException(e);
}
- return ResponseResult.success(url);
+ return ResponseResult.success(MinioUrlUtils.getUrl(url));
}
/**
@@ -103,6 +110,7 @@
* @return
*/
@PostMapping("/{workspace_id}/upload-callback")
+ @SysLogAnnotation(operModul = "航线库", operType = "新增", operDesc = "当航路线文件被飞行员上传到存储服务器时,通过该接口报告文件的基本信息")
public ResponseResult uploadCallBack(HttpServletRequest request,
@PathVariable(name = "workspace_id") String workspaceId,
@RequestBody WaylineFileUploadDTO uploadFile) {
@@ -126,6 +134,7 @@
* @return
*/
@PostMapping("/{workspace_id}/favorites")
+ @SysLogAnnotation(operModul = "航线库", operType = "修改", operDesc = "根据路径线文件id收藏路径线文件")
public ResponseResult markFavorite(@PathVariable(name = "workspace_id") String workspaceId,
@RequestParam(name = "id") List<String> ids) {
boolean isMark = waylineFileService.markFavorite(workspaceId, ids, true);
@@ -140,6 +149,7 @@
* @return
*/
@DeleteMapping("/{workspace_id}/favorites")
+ @SysLogAnnotation(operModul = "航线库", operType = "删除", operDesc = "根据航路线文件id删除此航路线文件的收藏夹")
public ResponseResult unmarkFavorite(@PathVariable(name = "workspace_id") String workspaceId,
@RequestParam(name = "id") List<String> ids) {
boolean isMark = waylineFileService.markFavorite(workspaceId, ids, false);
@@ -155,6 +165,7 @@
* @return
*/
@GetMapping("/{workspace_id}/waylines/duplicate-names")
+ @SysLogAnnotation(operModul = "航线库", operType = "查询", operDesc = "根据航路线名称检查名称是否已经存在")
public ResponseResult checkDuplicateNames(@PathVariable(name = "workspace_id") String workspaceId,
@RequestParam(name = "name") List<String> names) {
List<String> existNamesList = waylineFileService.getDuplicateNames(workspaceId, names);
@@ -169,10 +180,11 @@
* @return
*/
@DeleteMapping("/{workspace_id}/waylines/{wayline_id}")
+ @SysLogAnnotation(operModul = "航线库", operType = "删除", operDesc = "根据航路线id删除工作区中的航路线文件")
public ResponseResult deleteWayline(@PathVariable(name = "workspace_id") String workspaceId,
@PathVariable(name = "wayline_id") String waylineId) {
boolean isDel = waylineFileService.deleteByWaylineId(workspaceId, waylineId);
- return isDel ? ResponseResult.success() : ResponseResult.error("Failed to delete wayline.");
+ return isDel ? ResponseResult.success() : ResponseResult.error("航线删除失败");
}
/**
@@ -181,14 +193,20 @@
* @return
*/
@PostMapping("/{workspace_id}/waylines/file/upload")
- public ResponseResult importKmzFile(HttpServletRequest request, MultipartFile file) {
+ @SysLogAnnotation(operModul = "航线库", operType = "上传", operDesc = "上传kmz航线文件")
+ public ResponseResult importKmzFile(@PathVariable(name = "workspace_id") String workspaceId,HttpServletRequest request, MultipartFile file) {
if (Objects.isNull(file)) {
- return ResponseResult.error("No file received.");
+ return ResponseResult.error("未上传文件");
}
CustomClaim customClaim = (CustomClaim)request.getAttribute(TOKEN_CLAIM);
- String workspaceId = customClaim.getWorkspaceId();
String creator = customClaim.getUsername();
waylineFileService.importKmzFile(file, workspaceId, creator);
return ResponseResult.success();
}
+
+ @GetMapping("/{workspace_id}/waylines_list")
+ @SysLogAnnotation(operModul = "航线库", operType = "查询", operDesc = "查询当前工作区航线库列表")
+ public ResponseResult<List<WaylineListDTO>> waylineList(@PathVariable(name = "workspace_id") String workspaceId,String droneName) {
+ return ResponseResult.success(waylineFileService.waylineList(workspaceId,droneName)) ;
+ }
}
--
Gitblit v1.9.3