优化
This commit is contained in:
@@ -115,7 +115,7 @@ public class TikUserFileServiceImpl implements TikUserFileService {
|
||||
|
||||
// ========== 第三阶段:保存数据库(在事务中,如果失败则删除OSS文件) ==========
|
||||
try {
|
||||
return saveFileRecord(userId, file, fileCategory, fileUrl, filePath, coverBase64, baseDirectory);
|
||||
return saveFileRecord(userId, file, fileCategory, fileUrl, filePath, coverBase64, baseDirectory, infraFileId);
|
||||
} catch (Exception e) {
|
||||
// 数据库保存失败,删除已上传的OSS文件
|
||||
log.error("[uploadFile][保存数据库失败,准备删除OSS文件,URL({})]", fileUrl, e);
|
||||
@@ -129,7 +129,7 @@ public class TikUserFileServiceImpl implements TikUserFileService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long saveFileRecord(Long userId, MultipartFile file, String fileCategory,
|
||||
String fileUrl, String filePath, String coverBase64, String baseDirectory) {
|
||||
String fileUrl, String filePath, String coverBase64, String baseDirectory, Long infraFileId) {
|
||||
// 7. 处理视频封面(如果有前端传递的 base64 封面,先处理封面再插入主记录)
|
||||
String coverUrl = null;
|
||||
if (StrUtil.isNotBlank(coverBase64) && StrUtil.containsIgnoreCase(file.getContentType(), "video")) {
|
||||
@@ -180,7 +180,7 @@ public class TikUserFileServiceImpl implements TikUserFileService {
|
||||
// 8. 创建文件记录(保存完整路径,包含封面URL和Base64)
|
||||
TikUserFileDO userFile = new TikUserFileDO()
|
||||
.setUserId(userId)
|
||||
.setFileId(null) // 显式设置为null,file_id是可选的,用于关联infra_file表
|
||||
.setFileId(infraFileId) // 关联infra_file表,用于后续通过FileService管理文件
|
||||
.setFileName(file.getOriginalFilename()) // 保存原始文件名,用于展示
|
||||
.setFileType(file.getContentType())
|
||||
.setFileCategory(fileCategory)
|
||||
|
||||
Reference in New Issue
Block a user