This commit is contained in:
2026-01-13 15:14:08 +08:00
21 changed files with 339 additions and 26 deletions

View File

@@ -489,7 +489,7 @@ public class DataFileController implements IDataFeignClient {
@GetMapping("/getMultipartFileByFileId")
@Operation(summary = "根据fileId获取MultipartFile文件", description = "根据fileId获取MultipartFile文件")
public SdmResponse<MultipartFile> getMultipartFileByFileId(@RequestParam(value = "fileId") @Validated Long fileId) {
public SdmResponse<byte[]> getMultipartFileByFileId(@RequestParam(value = "fileId") @Validated Long fileId) {
return IDataFileService.getMultipartFileByFileId(fileId);
}

View File

@@ -357,7 +357,7 @@ public interface IDataFileService {
SdmResponse downloadFileForEdit(Long fileId);
SdmResponse<MultipartFile> getMultipartFileByFileId(Long fileId);
SdmResponse<byte[]> getMultipartFileByFileId(Long fileId);
default SdmResponse<List<FileMetadataInfoResp>> queryFileListByIdList(QueryFileReq queryFileReq){return null;}

View File

@@ -2996,7 +2996,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
}
@Override
public SdmResponse<MultipartFile> getMultipartFileByFileId(Long fileId) {
public SdmResponse<byte[]> getMultipartFileByFileId(Long fileId) {
try {
FileMetadataInfo fileMetadataInfo = fileMetadataInfoService.lambdaQuery().eq(FileMetadataInfo::getId, fileId).one();
if (ObjectUtils.isEmpty(fileMetadataInfo)) {
@@ -3005,14 +3005,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
String fileObjectKey = fileMetadataInfo.getObjectKey();
// 从MinIO下载文件
byte[] fileData = minioService.downloadFile(fileObjectKey,fileMetadataInfo.getBucketName());
String contentType = getContentTypeByFileName(fileMetadataInfo.getOriginalName());
MultipartFile multipartFile = new MockMultipartFile(
fileMetadataInfo.getOriginalName(),
fileMetadataInfo.getOriginalName(),
contentType,
fileData
);
return SdmResponse.success(multipartFile);
return SdmResponse.success(fileData);
} catch (Exception e) {
log.error("获取文件失败", e);
}

View File

@@ -1620,5 +1620,10 @@ public class SystemFileIDataFileServiceImpl implements IDataFileService {
return null;
}
@Override
public SdmResponse<byte[]> getMultipartFileByFileId(Long fileId) {
return null;
}
}