【8.3.0】【file】更新文件通用信息的填充

master
stylefeng 2024-08-20 12:31:32 +08:00
parent 07db019f30
commit 9d4f773c6a
1 changed files with 45 additions and 60 deletions

View File

@ -63,33 +63,8 @@ public class FileInfoFactory {
// 封装存储文件信息(上传替换公共信息)
SysFileInfo sysFileInfo = new SysFileInfo();
// 生成文件的唯一id
Long fileId = IdWorker.getId();
sysFileInfo.setFileId(fileId);
// 文件编码生成
sysFileInfo.setFileCode(IdWorker.getId());
// 默认版本号从1开始
sysFileInfo.setFileVersion(1);
// 文件状态
sysFileInfo.setFileStatus(FileStatusEnum.NEW.getCode());
// 如果是存在数据库库里单独处理一下如果不是存储到库里则读取当前fileApi的存储位置
if (FileLocationEnum.DB.getCode().equals(sysFileInfoRequest.getFileLocation())) {
sysFileInfo.setFileLocation(FileLocationEnum.DB.getCode());
} else {
FileOperatorApi fileOperatorApi = SpringUtil.getBean(FileOperatorApi.class);
sysFileInfo.setFileLocation(fileOperatorApi.getFileLocationEnum().getCode());
}
// 桶名
String fileBucket = FileConfigExpander.getDefaultBucket();
if (StrUtil.isNotEmpty(sysFileInfoRequest.getFileBucket())) {
fileBucket = sysFileInfoRequest.getFileBucket();
}
sysFileInfo.setFileBucket(fileBucket);
// 填充基础的文件信息
fillCommonInfo(sysFileInfo, sysFileInfoRequest);
// 获取文件原始名称
String originalFilename = file.getOriginalFilename();
@ -111,12 +86,9 @@ public class FileInfoFactory {
sysFileInfo.setFileSizeInfo(fileSizeInfo);
// 生成文件的最终名称存储在storage的名称
String finalFileName = fileId + FILE_POSTFIX_SEPARATOR + fileSuffix;
String finalFileName = sysFileInfo.getFileId() + FILE_POSTFIX_SEPARATOR + fileSuffix;
sysFileInfo.setFileObjectName(finalFileName);
// 文件密级
sysFileInfo.setSecretFlag(sysFileInfoRequest.getSecretFlag());
return sysFileInfo;
}
@ -131,32 +103,8 @@ public class FileInfoFactory {
// 封装存储文件信息(上传替换公共信息)
SysFileInfo sysFileInfo = new SysFileInfo();
// 创建文件id
sysFileInfo.setFileId(IdWorker.getId());
// 文件编码生成
sysFileInfo.setFileCode(IdWorker.getId());
// 默认版本号从1开始
sysFileInfo.setFileVersion(1);
// 文件状态
sysFileInfo.setFileStatus(FileStatusEnum.NEW.getCode());
// 如果是存在数据库库里单独处理一下如果不是存储到库里则读取当前fileApi的存储位置
if (FileLocationEnum.DB.getCode().equals(sysFileInfoRequest.getFileLocation())) {
sysFileInfo.setFileLocation(FileLocationEnum.DB.getCode());
} else {
FileOperatorApi fileOperatorApi = SpringUtil.getBean(FileOperatorApi.class);
sysFileInfo.setFileLocation(fileOperatorApi.getFileLocationEnum().getCode());
}
// 文件bucket信息
String fileBucket = FileConfigExpander.getDefaultBucket();
if (StrUtil.isNotEmpty(sysFileInfoRequest.getFileBucket())) {
fileBucket = sysFileInfoRequest.getFileBucket();
}
sysFileInfo.setFileBucket(fileBucket);
// 填充通用文件信息
fillCommonInfo(sysFileInfo, sysFileInfoRequest);
// 原始文件名称
sysFileInfo.setFileOriginName(file.getName());
@ -180,10 +128,47 @@ public class FileInfoFactory {
String finalFileName = sysFileInfo.getFileId() + FILE_POSTFIX_SEPARATOR + fileSuffix;
sysFileInfo.setFileObjectName(finalFileName);
// 是否是机密文件
sysFileInfo.setSecretFlag(sysFileInfoRequest.getSecretFlag());
return sysFileInfo;
}
/**
*
*
* @author fengshuonan
* @since 2024/8/20 12:27
*/
private static void fillCommonInfo(SysFileInfo sysFileInfo, SysFileInfoRequest sysFileInfoRequest) {
// 生成文件的唯一id
Long fileId = IdWorker.getId();
sysFileInfo.setFileId(fileId);
// 甚至文件编码
sysFileInfo.setFileCode(IdWorker.getId());
// 设置版本号默认1
sysFileInfo.setFileVersion(1);
// 文件状态
sysFileInfo.setFileStatus(FileStatusEnum.NEW.getCode());
// 如果是存在数据库库里单独处理一下如果不是存储到库里则读取当前fileApi的存储位置
if (FileLocationEnum.DB.getCode().equals(sysFileInfoRequest.getFileLocation())) {
sysFileInfo.setFileLocation(FileLocationEnum.DB.getCode());
} else {
FileOperatorApi fileOperatorApi = SpringUtil.getBean(FileOperatorApi.class);
sysFileInfo.setFileLocation(fileOperatorApi.getFileLocationEnum().getCode());
}
// 设置桶名称
String fileBucket = FileConfigExpander.getDefaultBucket();
if (StrUtil.isNotEmpty(sysFileInfoRequest.getFileBucket())) {
fileBucket = sysFileInfoRequest.getFileBucket();
}
sysFileInfo.setFileBucket(fileBucket);
// 设置文件密级
sysFileInfo.setSecretFlag(sysFileInfoRequest.getSecretFlag());
}
}