无人机项目后端代码
guoshilong
2023-09-23 40934da83d6c4e2ecbabb521b8bb54a903070e7c
src/main/java/com/dji/sample/media/controller/FileController.java
@@ -3,6 +3,7 @@
import com.dji.sample.common.model.PaginationData;
import com.dji.sample.common.model.ResponseResult;
import com.dji.sample.media.model.MediaFileDTO;
import com.dji.sample.media.model.MediaFileQueryParam;
import com.dji.sample.media.service.IFileService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -25,30 +26,32 @@
    /**
     * Get information about all the media files in this workspace based on the workspace id.
     * 根据工作空间id获取有关此工作空间中所有媒体文件的信息。
     * @param workspaceId
     * @return
     */
    @GetMapping("/{workspace_id}/files")
    public ResponseResult<PaginationData<MediaFileDTO>> getFilesList(@RequestParam(defaultValue = "1") Long page,
                               @RequestParam(name = "page_size", defaultValue = "10") Long pageSize,
                               @PathVariable(name = "workspace_id") String workspaceId) {
        PaginationData<MediaFileDTO> filesList = fileService.getJobsPaginationByWorkspaceId(workspaceId, page, pageSize);
                                                                     @RequestParam(name = "page_size", defaultValue = "10") Long pageSize,
                                                                     @PathVariable(name = "workspace_id") String workspaceId,
                                                                     MediaFileQueryParam mediaFileQueryParam) {
        PaginationData<MediaFileDTO> filesList = fileService.getMediaFilesPaginationByWorkspaceId(workspaceId, page, pageSize,mediaFileQueryParam);
        return ResponseResult.success(filesList);
    }
    /**
     * Query the download address of the file according to the media file fingerprint,
     * Query the download address of the file according to the media file id,
     * and redirect to this address directly for download.
     * @param workspaceId
     * @param fingerprint
     * @param fileId
     * @param response
     */
    @GetMapping("/{workspace_id}/file/{fingerprint}/url")
    @GetMapping("/{workspace_id}/file/{file_id}/url")
    public void getFileUrl(@PathVariable(name = "workspace_id") String workspaceId,
                           @PathVariable String fingerprint, HttpServletResponse response) {
                           @PathVariable(name = "file_id") String fileId, HttpServletResponse response) {
        try {
            URL url = fileService.getObjectUrl(workspaceId, fingerprint);
            URL url = fileService.getObjectUrl(workspaceId, fileId);
            response.sendRedirect(url.toString());
        } catch (IOException e) {
            e.printStackTrace();