update: 后台UI 优化

This commit is contained in:
Kerwin
2025-08-05 18:09:14 +08:00
parent 7e8f42212a
commit c2a8cdef4f
9 changed files with 211 additions and 58 deletions

View File

@@ -32,7 +32,7 @@ type ResourceRepository interface {
InvalidateCache() error
FindExists(url string, excludeID ...uint) (bool, error)
BatchFindByURLs(urls []string) ([]entity.Resource, error)
GetResourcesForTransfer(panID uint, sinceTime time.Time) ([]*entity.Resource, error)
GetResourcesForTransfer(panID uint, sinceTime time.Time, limit int) ([]*entity.Resource, error)
CreateResourceTag(resourceID, tagID uint) error
}
@@ -398,12 +398,18 @@ func (r *ResourceRepositoryImpl) BatchFindByURLs(urls []string) ([]entity.Resour
}
// GetResourcesForTransfer 获取需要转存的资源
func (r *ResourceRepositoryImpl) GetResourcesForTransfer(panID uint, sinceTime time.Time) ([]*entity.Resource, error) {
func (r *ResourceRepositoryImpl) GetResourcesForTransfer(panID uint, sinceTime time.Time, limit int) ([]*entity.Resource, error) {
var resources []*entity.Resource
query := r.db.Where("pan_id = ? AND (save_url = '' OR save_url IS NULL) AND (error_msg = '' OR error_msg IS NULL)", panID)
if !sinceTime.IsZero() {
query = query.Where("created_at >= ?", sinceTime)
}
// 添加数量限制
if limit > 0 {
query = query.Limit(limit)
}
err := query.Order("created_at DESC").Find(&resources).Error
if err != nil {
return nil, err