fix:getFileBaseInfo 支持uuid
This commit is contained in:
@@ -11,4 +11,7 @@ public class GetFileBaseInfoReq {
|
||||
|
||||
@Schema(description = "文件id")
|
||||
private Long fileId;
|
||||
|
||||
@Schema(description = "节点UUID")
|
||||
private String uuid;
|
||||
}
|
||||
@@ -847,14 +847,37 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
|
||||
|
||||
@Override
|
||||
public SdmResponse<FileMetadataInfoResp> getFileBaseInfo(GetFileBaseInfoReq req) {
|
||||
FileMetadataInfo fileMetadataInfo = fileMetadataInfoService.lambdaQuery().eq(FileMetadataInfo::getId, req.getFileId()).one();
|
||||
// 参数校验:fileId 和 uuid 至少有一个不为空
|
||||
if (ObjectUtils.isEmpty(req.getFileId()) && ObjectUtils.isEmpty(req.getUuid())) {
|
||||
return SdmResponse.failed("文件ID或UUID不能为空");
|
||||
}
|
||||
|
||||
FileMetadataInfo fileMetadataInfo = null;
|
||||
|
||||
// 优先通过 fileId 查询
|
||||
if (ObjectUtils.isNotEmpty(req.getFileId())) {
|
||||
fileMetadataInfo = fileMetadataInfoService.lambdaQuery()
|
||||
.eq(FileMetadataInfo::getId, req.getFileId())
|
||||
.one();
|
||||
} else if (ObjectUtils.isNotEmpty(req.getUuid())) {
|
||||
fileMetadataInfo = fileMetadataInfoService.lambdaQuery()
|
||||
.eq(FileMetadataInfo::getRelatedResourceUuid, req.getUuid())
|
||||
.one();
|
||||
}
|
||||
|
||||
// 查询结果校验
|
||||
if (fileMetadataInfo == null) {
|
||||
return SdmResponse.failed("文件不存在");
|
||||
}
|
||||
|
||||
// 封装返回结果
|
||||
FileMetadataInfoResp fileMetadataInfoResp = new FileMetadataInfoResp();
|
||||
BeanUtils.copyProperties(fileMetadataInfo, fileMetadataInfoResp);
|
||||
|
||||
fileMetadataInfoResp.setPermissionValue(fileUserPermissionService.getMergedPermission(fileMetadataInfo.getId(), ThreadLocalContext.getUserId()));
|
||||
// 设置当前用户的综合权限位
|
||||
fileMetadataInfoResp.setPermissionValue(
|
||||
fileUserPermissionService.getMergedPermission(fileMetadataInfo.getId(), ThreadLocalContext.getUserId())
|
||||
);
|
||||
|
||||
return SdmResponse.success(fileMetadataInfoResp);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user