From 589ff1b4b598f2f763eb421da960d5550e719144 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Fri, 16 Aug 2024 16:38:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/ht-dev' into ht-dev

---
 src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java |   35 ++++++++++++++---------------------
 1 files changed, 14 insertions(+), 21 deletions(-)

diff --git a/src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java b/src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java
index 78afc16..15b4c9e 100644
--- a/src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java
+++ b/src/main/java/com/dji/sample/media/service/impl/MediaServiceImpl.java
@@ -25,6 +25,7 @@
 import com.dji.sample.media.service.IMediaService;
 import com.dji.sample.wayline.model.dto.WaylineJobDTO;
 import com.dji.sample.wayline.service.IWaylineJobService;
+import com.drew.imaging.ImageProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -88,7 +89,7 @@
     }
 
     @Override
-    public Integer saveMediaFile(String workspaceId, FileUploadDTO file) {
+    public Integer saveMediaFile(String workspaceId, FileUploadDTO file) throws IOException, ImageProcessingException {
         return fileService.saveFile(workspaceId, file);
     }
 
@@ -131,7 +132,7 @@
      * @return
      */
     @ServiceActivator(inputChannel = ChannelName.INBOUND_EVENTS_FILE_UPLOAD_CALLBACK, outputChannel = ChannelName.OUTBOUND_EVENTS)
-    public CommonTopicReceiver handleFileUploadCallBack(CommonTopicReceiver receiver) throws IOException, FontFormatException {
+    public CommonTopicReceiver handleFileUploadCallBack(CommonTopicReceiver receiver) throws IOException, FontFormatException, ImageProcessingException {
         FileUploadCallback callback = objectMapper.convertValue(receiver.getData(), FileUploadCallback.class);
         if (callback.getResult() != ResponseResult.CODE_SUCCESS) {
             log.error("媒体文件上传失败;Media file upload failed!");
@@ -217,7 +218,7 @@
                 BizCodeEnum.FILE_UPLOAD_CALLBACK.getCode(), mediaFileCount);
     }
 
-    private Boolean parseMediaFile(FileUploadCallback callback, WaylineJobDTO job) throws IOException, FontFormatException {
+    private Boolean parseMediaFile(FileUploadCallback callback, WaylineJobDTO job) throws ImageProcessingException, IOException, FontFormatException {
         // Set the drone sn that shoots the media
         Optional<DeviceDTO> dockDTO = deviceService.getDeviceBySn(job.getDockSn());
         dockDTO.ifPresent(dock -> callback.getFile().getExt().setSn(dock.getChildDeviceSn()));
@@ -225,28 +226,15 @@
         // set path
         String objectKey = callback.getFile().getObjectKey();
         callback.getFile().setPath(objectKey.substring(objectKey.indexOf("/") + 1, objectKey.lastIndexOf("/")));
-        try {
-            ExecutorService executor = Executors.newSingleThreadExecutor();
-            executor.execute(() -> {
-                try {
-                    fileService.saveMarkFile(job.getWorkspaceId(), callback.getFile());
-                } catch (Exception e) {
-                    throw new RuntimeException(e);
-                }
-            });
-            executor.shutdown();
-        } catch (Exception e) {
-            log.error("方法执行有误==============: ", e);
-            throw e;
-        }
-
-
-        return fileService.saveFile(job.getWorkspaceId(), callback.getFile()) > 0;
+        int count =fileService.saveFile(job.getWorkspaceId(), callback.getFile());
+//        fileService.saveFiles(job.getWorkspaceId(), callback.getFile());
+//        fileService.saveZipFile(job.getWorkspaceId(),callback.getFile());
+        return count > 0;
     }
 
     /**
      * Handles the highest priority message about media uploads.
-     *
+     * 处理有关媒体上传的最高优先级消息。
      * @param receiver
      * @param headers
      * @return
@@ -284,4 +272,9 @@
 
         return receiver;
     }
+
+    @Override
+    public MediaFileEntity getMediaFieByTid(String timestamp) {
+        return mapper.getMediaFieByTid(timestamp);
+    }
 }

--
Gitblit v1.9.3