add(req-2119):新增“下载文件"API
This commit is contained in:
parent
b9fd00518c
commit
c60e8afe37
@ -8,7 +8,9 @@ import cn.axzo.oss.http.model.*;
|
||||
import cn.axzo.oss.manager.api.dto.request.FindFileKeyDto;
|
||||
import cn.axzo.oss.manager.api.dto.request.FindFileUrlDto;
|
||||
import cn.axzo.oss.manager.api.dto.request.ServerFileDeleteDto;
|
||||
import cn.axzo.oss.manager.api.dto.request.ServerFileDownloadDto;
|
||||
import cn.axzo.oss.manager.api.dto.request.ServerFileUploadDto;
|
||||
import cn.axzo.oss.manager.api.dto.response.ServerFileDownloadResponse;
|
||||
import cn.axzo.oss.service.api.FileService;
|
||||
import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
@ -92,4 +94,11 @@ public class ServerFileController implements ServerFileServiceApi {
|
||||
FindFileKeyDto dto = BeanConvertUtil.copyBean(request, FindFileKeyDto.class);
|
||||
return CommonResponse.success(BeanConverter.convert(fileService.findFileKey(dto), FindFileKeyResponse.class));
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommonResponse<DownloadFileFromObsResponse> downloadFileFromOBS(@Valid @RequestBody DownloadFileFromObsRequest request) {
|
||||
ServerFileDownloadDto serverFileDownloadDto = BeanConvertUtil.copyBean(request, ServerFileDownloadDto.class);
|
||||
ServerFileDownloadResponse res = fileService.getObject(serverFileDownloadDto, request.getFileDownloadType());
|
||||
return CommonResponse.success(BeanConverter.convert(res, DownloadFileFromObsResponse.class));
|
||||
}
|
||||
}
|
||||
|
||||
@ -57,4 +57,13 @@ public interface ServerFileServiceApi {
|
||||
*/
|
||||
@RequestMapping(value = "api/v1/server/getFileKey", method = RequestMethod.POST)
|
||||
CommonResponse<List<FindFileKeyResponse>> getFileKey(FindFileKeyRequest request);
|
||||
|
||||
/**
|
||||
* 从华为云上下载文件
|
||||
*
|
||||
* @param request DownloadFileFromObsRequest
|
||||
* @return DownloadFileFromObsResponse
|
||||
*/
|
||||
@RequestMapping(value = "api/v1/server/downloadFileFromOBS", method = RequestMethod.POST)
|
||||
CommonResponse<DownloadFileFromObsResponse> downloadFileFromOBS(DownloadFileFromObsRequest request);
|
||||
}
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
package cn.axzo.oss.http.model;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
/**
|
||||
* @author hucf
|
||||
* @since 2024/3/6 15:11
|
||||
**/
|
||||
@Data
|
||||
public class DownloadFileFromObsRequest {
|
||||
/**
|
||||
* 文件uuid
|
||||
*/
|
||||
@NotBlank
|
||||
private String fileKey;
|
||||
|
||||
/**
|
||||
* 图片样式
|
||||
*/
|
||||
private String style;
|
||||
|
||||
/**
|
||||
* 下载方式
|
||||
*/
|
||||
private Integer fileDownloadType;
|
||||
}
|
||||
@ -0,0 +1,46 @@
|
||||
package cn.axzo.oss.http.model;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.InputStream;
|
||||
|
||||
/**
|
||||
* @author hucf
|
||||
* @since 2024/3/6 15:15
|
||||
**/
|
||||
@Data
|
||||
public class DownloadFileFromObsResponse {
|
||||
/**
|
||||
* 文件 URL
|
||||
*/
|
||||
private String url;
|
||||
/**
|
||||
* 文件 Key
|
||||
*/
|
||||
private String fileKey;
|
||||
|
||||
/**
|
||||
* URL MD5
|
||||
*/
|
||||
private String urlMd5;
|
||||
|
||||
/**
|
||||
* 文件名称
|
||||
*/
|
||||
private String fileName;
|
||||
|
||||
/**
|
||||
* 文件大小
|
||||
*/
|
||||
private Long fileSize;
|
||||
|
||||
/**
|
||||
* 文件格式
|
||||
*/
|
||||
private String fileFormat;
|
||||
|
||||
/**
|
||||
* 文件流
|
||||
*/
|
||||
private InputStream fileStream;
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user