rain
2024-07-30 d81fdeef2ad2f7ecc548cebad6ab15455bf3da27
src/main/java/com/dji/sample/media/controller/FileController.java
@@ -9,9 +9,11 @@
import com.dji.sample.media.model.MediaFileQueryParam;
import com.dji.sample.media.service.IFileService;
import com.dji.sample.media.util.ImageDownloaderAndCompressor;
import com.dji.sample.media.util.MinioFileDownloader;
import com.drew.imaging.ImageProcessingException;
import org.apache.ibatis.annotations.Update;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.mock.web.MockHttpServletResponse;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
@@ -171,23 +173,8 @@
        }
    }
    private static final String BASE_URL = "http://dev.jxpskj.com:9000/cloud-bucket";
    @GetMapping("/download-images")
    public void downloadImages(@RequestParam String jobId, HttpServletResponse response) {
        List<MediaFileEntity> entities = fileService.getMedia(jobId);
        List<String> urls = entities.stream()
                .map(MediaFileEntity::getObjectKey)
                .map(objectKey -> BASE_URL + objectKey)
                .collect(Collectors.toList());
        String outputFolder = "images"; // 存放图片的文件夹
        new File(outputFolder).mkdirs(); // 创建文件夹
        downloadAndSaveImages(urls, outputFolder);
        zipAndSendFolder(outputFolder, response);
        cleanUp(outputFolder);
    @PostMapping("/download-images")
    public ResponseResult downloadImages(@RequestBody List<String> jobIds) {
        return fileService.downloadImages(jobIds);
    }
}