优化结构

This commit is contained in:
Yvan
2026-08-28 14:54:06 +08:00
parent 56f9440a6b
commit ae5345de14
15 changed files with 188 additions and 93 deletions
+9
View File
@@ -7,6 +7,7 @@ import (
"errors"
"fmt"
"io"
stdmime "mime"
"os"
"path"
"path/filepath"
@@ -246,10 +247,18 @@ func (uc *MediaUsecase) CompleteUpload(ctx context.Context, userID, uploadID uin
return fail(errors.New("整文件校验失败"))
}
media := &MediaFile{Name: session.FileName, URL: stored.URL, Tag: strings.TrimPrefix(filepath.Ext(session.FileName), "."), Key: key, Size: stored.Size, Mime: mime, MD5: hash, UserID: userID}
if strings.TrimSpace(media.Mime) == "" {
media.Mime = stdmime.TypeByExtension(ext)
if media.Mime == "" {
media.Mime = "application/octet-stream"
}
}
if err = uc.CreateMedia(ctx, media); err != nil {
return fail(err)
}
if err = uc.CompleteUploadSession(ctx, uploadID, key, media.ID); err != nil {
_ = uc.DeleteMedia(ctx, media.ID)
_ = uc.files.Delete(ctx, key)
_ = uc.FailUploadSession(ctx, uploadID)
return nil, fmt.Errorf("完成上传会话失败: %w", err)
}