From 2db1aa88e8ab53096a936163d686b90d8e056a99 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Wed, 21 Aug 2024 23:18:33 +0800
Subject: [PATCH] 国土对接返回信息加密
---
src/main/java/com/dji/sample/media/controller/MediaController.java | 58 +++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 43 insertions(+), 15 deletions(-)
diff --git a/src/main/java/com/dji/sample/media/controller/MediaController.java b/src/main/java/com/dji/sample/media/controller/MediaController.java
index 0e73743..330e7f6 100644
--- a/src/main/java/com/dji/sample/media/controller/MediaController.java
+++ b/src/main/java/com/dji/sample/media/controller/MediaController.java
@@ -1,16 +1,24 @@
package com.dji.sample.media.controller;
+import com.dji.sample.common.model.PaginationData;
import com.dji.sample.common.model.ResponseResult;
+import com.dji.sample.component.mqtt.model.MapKeyConst;
import com.dji.sample.media.model.FileUploadDTO;
+import com.dji.sample.media.model.MediaJobDTO;
+import com.dji.sample.media.model.param.SearchMediaParam;
import com.dji.sample.media.service.IMediaService;
+import com.dji.sample.wayline.model.dto.WaylineJobDTO;
+import com.drew.imaging.ImageProcessingException;
+import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import java.awt.*;
+import java.io.IOException;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import java.util.stream.Collectors;
/**
* @author sean
@@ -27,6 +35,8 @@
/**
* Check if the file has been uploaded by the fingerprint.
+ * 检查文件是否已通过指纹上传。
+ *
* @param workspaceId
* @param file
* @return
@@ -36,38 +46,56 @@
boolean isExist = mediaService.fastUpload(workspaceId, file.getFingerprint());
- return isExist ? ResponseResult.success() : ResponseResult.error(file.getFingerprint() + "already exists.");
+ return isExist ? ResponseResult.success() : ResponseResult.error(file.getFingerprint() + "不存在");
}
/**
* When the file is uploaded to the storage server by pilot,
* the basic information of the file is reported through this interface.
+ *
* @param workspaceId
* @param file
* @return
*/
@PostMapping("/{workspace_id}/upload-callback")
- public ResponseResult<String> uploadCallback(@PathVariable(name = "workspace_id") String workspaceId, @RequestBody FileUploadDTO file) {
+ public ResponseResult<String> uploadCallback(@PathVariable(name = "workspace_id") String workspaceId, @RequestBody FileUploadDTO file) throws IOException, FontFormatException, ImageProcessingException {
mediaService.saveMediaFile(workspaceId, file);
return ResponseResult.success(file.getObjectKey());
-
}
/**
* Query the files that already exist in this workspace based on the workspace id and the collection of tiny fingerprints.
+ *
* @param workspaceId
- * @param tinyFingerprints
+ * @param tinyFingerprints There is only one tiny_fingerprint parameter in the body.
+ * But it is not recommended to use Map to receive the parameter.
* @return
*/
- @GetMapping("/{workspace_id}/files/tiny-fingerprints")
- public ResponseResult<Map<String, List<String>>> uploadCallback(@PathVariable(name = "workspace_id") String workspaceId,
- @RequestParam(value = "tiny_fingerprint") List<String> tinyFingerprints) {
- List<String> tinyFingerprintList = mediaService.getAllTinyFingerprintsByWorkspaceId(workspaceId);
- List<String> existingList = tinyFingerprints
- .stream()
- .filter(tinyFingerprintList::contains)
- .collect(Collectors.toList());
- return ResponseResult.success(new ConcurrentHashMap<>(Map.of("tiny_fingerprints", existingList)));
+ @PostMapping("/{workspace_id}/files/tiny-fingerprints")
+ public ResponseResult<Map<String, List<String>>> uploadCallback(
+ @PathVariable(name = "workspace_id") String workspaceId,
+ @RequestBody Map<String, List<String>> tinyFingerprints) throws JsonProcessingException {
+
+ List<String> existingList = mediaService.getExistTinyFingerprints(workspaceId, tinyFingerprints.get(MapKeyConst.TINY_FINGERPRINTS));
+ return ResponseResult.success(new ConcurrentHashMap<>(Map.of(MapKeyConst.TINY_FINGERPRINTS, existingList)));
}
-}
\ No newline at end of file
+ @GetMapping("/{workspace_id}/files/media_page")
+ public ResponseResult<PaginationData<MediaJobDTO>> mediaPage(
+ @PathVariable(name = "workspace_id") String workspaceId, @RequestBody SearchMediaParam param) {
+
+ PaginationData<MediaJobDTO> data = mediaService.mediaPage(workspaceId, param);
+ return ResponseResult.success(data);
+ }
+
+
+ @GetMapping("/files/detail/{job_id}")
+ public ResponseResult<PaginationData<MediaJobDTO>> mediaDetail(
+ @PathVariable(name = "job_id") String jobId, @RequestParam Long page, @RequestParam Long pageSize) {
+
+ PaginationData<MediaJobDTO> data = mediaService.mediaDetail(jobId, page, pageSize);
+ return ResponseResult.success(data);
+ }
+
+
+}
--
Gitblit v1.9.3