mirror of https://gitee.com/stylefeng/roses
【8.3.0】【file】更新文件通用信息的填充
parent
07db019f30
commit
9d4f773c6a
|
@ -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());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue