优化结构
This commit is contained in:
@@ -10,6 +10,7 @@ import (
|
||||
"net/http"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
@@ -46,6 +47,8 @@ type MediaUsecase struct {
|
||||
settings RuntimeSettings
|
||||
}
|
||||
|
||||
var mediaDeleteMu sync.Mutex
|
||||
|
||||
var ErrMediaTooLarge = errors.New("文件超过大小上限")
|
||||
|
||||
func NewMediaUsecase(repo MediaRepo, files FileStorage, settings RuntimeSettings) *MediaUsecase {
|
||||
@@ -119,6 +122,8 @@ func (uc *MediaUsecase) Upload(ctx context.Context, userID uint, name, suppliedM
|
||||
}
|
||||
|
||||
func (uc *MediaUsecase) Delete(ctx context.Context, id uint) error {
|
||||
mediaDeleteMu.Lock()
|
||||
defer mediaDeleteMu.Unlock()
|
||||
media, err := uc.FindMedia(ctx, id)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user