A:剩余文件上传
This commit is contained in:
1 parent
cf0da9b653
commit
0e0b8bfd81
2 files changed
+205
No files matched your search
@@ -0,0 +1,204 @@
|
|||||||
|
package db
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"rear/internal/model/tables"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"gorm.io/gorm"
|
||||||
|
)
|
||||||
|
|
||||||
|
// PhotoCreateTask 创建照片任务
|
||||||
|
type PhotoCreateTask struct {
|
||||||
|
Photo *tables.Photo
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoCreateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Create(t.Photo).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoCreateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoCreateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("photo_create_%s", t.Photo.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// PhotoUpdateTask 更新照片任务
|
||||||
|
type PhotoUpdateTask struct {
|
||||||
|
Photo *tables.Photo
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoUpdateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Save(t.Photo).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoUpdateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoUpdateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("photo_update_%s", t.Photo.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// PhotoDeleteTask 删除照片任务
|
||||||
|
type PhotoDeleteTask struct {
|
||||||
|
Hash string
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoDeleteTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Where("hash = ?", t.Hash).Delete(&tables.Photo{}).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoDeleteTask) GetPriority() int {
|
||||||
|
return 3 // 高优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *PhotoDeleteTask) GetID() string {
|
||||||
|
return fmt.Sprintf("photo_delete_%s", t.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExifCreateTask 创建EXIF任务
|
||||||
|
type ExifCreateTask struct {
|
||||||
|
Exif *tables.PhotoExif
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifCreateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Create(t.Exif).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifCreateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifCreateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("exif_create_%s", t.Exif.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExifUpdateTask 更新EXIF任务
|
||||||
|
type ExifUpdateTask struct {
|
||||||
|
Exif *tables.PhotoExif
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifUpdateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Save(t.Exif).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifUpdateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifUpdateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("exif_update_%s", t.Exif.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// ExifDeleteTask 删除EXIF任务
|
||||||
|
type ExifDeleteTask struct {
|
||||||
|
Hash string
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifDeleteTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Where("hash = ?", t.Hash).Delete(&tables.PhotoExif{}).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifDeleteTask) GetPriority() int {
|
||||||
|
return 3 // 高优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *ExifDeleteTask) GetID() string {
|
||||||
|
return fmt.Sprintf("exif_delete_%s", t.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateViewCountTask 更新访问计数任务
|
||||||
|
type UpdateViewCountTask struct {
|
||||||
|
Hash string
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UpdateViewCountTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Model(&tables.Photo{}).
|
||||||
|
Where("hash = ?", t.Hash).
|
||||||
|
UpdateColumns(map[string]interface{}{
|
||||||
|
"view_count": gorm.Expr("view_count + 1"),
|
||||||
|
"last_viewed_at": time.Now(),
|
||||||
|
}).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UpdateViewCountTask) GetPriority() int {
|
||||||
|
return 1 // 低优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UpdateViewCountTask) GetID() string {
|
||||||
|
return fmt.Sprintf("update_view_count_%s", t.Hash)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UserCreateTask 创建用户任务
|
||||||
|
type UserCreateTask struct {
|
||||||
|
User *tables.User
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserCreateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Create(t.User).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserCreateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserCreateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("user_create_%d", t.User.ID)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UserDeleteTask 删除用户任务
|
||||||
|
type UserDeleteTask struct {
|
||||||
|
ID uint
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserDeleteTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Delete(&tables.User{}, t.ID).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserDeleteTask) GetPriority() int {
|
||||||
|
return 3 // 高优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *UserDeleteTask) GetID() string {
|
||||||
|
return fmt.Sprintf("user_delete_%d", t.ID)
|
||||||
|
}
|
||||||
|
|
||||||
|
// LibraryUpdateTask 更新图书馆任务
|
||||||
|
type LibraryUpdateTask struct {
|
||||||
|
ImgPath string
|
||||||
|
Enable bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryUpdateTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Model(&tables.LibraryTable{}).
|
||||||
|
Where("img_path = ?", t.ImgPath).
|
||||||
|
Update("is_enable", t.Enable).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryUpdateTask) GetPriority() int {
|
||||||
|
return 5 // 中等优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryUpdateTask) GetID() string {
|
||||||
|
return fmt.Sprintf("library_update_%s", t.ImgPath)
|
||||||
|
}
|
||||||
|
|
||||||
|
// LibraryDeleteTask 删除图书馆任务
|
||||||
|
type LibraryDeleteTask struct {
|
||||||
|
ImgPath string
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryDeleteTask) Execute(db *gorm.DB) error {
|
||||||
|
return db.Where("img_path = ?", t.ImgPath).Delete(&tables.LibraryTable{}).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryDeleteTask) GetPriority() int {
|
||||||
|
return 3 // 高优先级
|
||||||
|
}
|
||||||
|
|
||||||
|
func (t *LibraryDeleteTask) GetID() string {
|
||||||
|
return fmt.Sprintf("library_delete_%s", t.ImgPath)
|
||||||
|
}
|
||||||
@@ -65,3 +65,4 @@
|
|||||||
{"level":"info","time":"2025-08-21 21:12:53.018","caller":"config/config.go:90","msg":"加载配置文件成功","path":"D:\\go-argus\\src\\rear\\config.yaml"}
|
{"level":"info","time":"2025-08-21 21:12:53.018","caller":"config/config.go:90","msg":"加载配置文件成功","path":"D:\\go-argus\\src\\rear\\config.yaml"}
|
||||||
{"level":"info","time":"2025-08-21 21:20:29.322","caller":"config/config.go:90","msg":"加载配置文件成功","path":"config.yaml"}
|
{"level":"info","time":"2025-08-21 21:20:29.322","caller":"config/config.go:90","msg":"加载配置文件成功","path":"config.yaml"}
|
||||||
{"level":"info","time":"2025-08-21 21:23:55.718","caller":"config/config.go:90","msg":"加载配置文件成功","path":"D:\\go-argus\\src\\rear\\config.yaml"}
|
{"level":"info","time":"2025-08-21 21:23:55.718","caller":"config/config.go:90","msg":"加载配置文件成功","path":"D:\\go-argus\\src\\rear\\config.yaml"}
|
||||||
|
{"level":"info","time":"2025-08-22 13:37:42.034","caller":"config/config.go:90","msg":"加载配置文件成功","path":"config.yaml"}
|
||||||
Reference in new issue
Block a user