rain
2024-05-22 b35dd737c03ee80d45753939ade49a59f556197f
src/main/java/com/dji/sample/media/controller/MediaController.java
@@ -1,14 +1,20 @@
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.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;
@@ -28,6 +34,7 @@
    /**
     * Check if the file has been uploaded by the fingerprint.
     * 检查文件是否已通过指纹上传。
     * @param workspaceId
     * @param file
     * @return
@@ -37,7 +44,7 @@
        boolean isExist = mediaService.fastUpload(workspaceId, file.getFingerprint());
        return isExist ? ResponseResult.success() : ResponseResult.error(file.getFingerprint() + "don't exist.");
        return isExist ? ResponseResult.success() : ResponseResult.error(file.getFingerprint() + "不存在");
    }
    /**
@@ -48,10 +55,10 @@
     * @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 {
        mediaService.saveMediaFile(workspaceId, file);
        mediaService.saveMediaMarkFile(workspaceId, file);
        return ResponseResult.success(file.getObjectKey());
    }
    /**
@@ -70,4 +77,22 @@
        return ResponseResult.success(new ConcurrentHashMap<>(Map.of(MapKeyConst.TINY_FINGERPRINTS, existingList)));
    }
}
    @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);
    }
}