mirror of
https://github.com/acepanel/panel.git
synced 2026-02-04 09:13:49 +08:00
refactor: 应用支持依赖注入
This commit is contained in:
@@ -6,7 +6,6 @@ import (
|
||||
|
||||
"gorm.io/gorm"
|
||||
|
||||
"github.com/TheTNB/panel/internal/app"
|
||||
"github.com/TheTNB/panel/internal/biz"
|
||||
"github.com/TheTNB/panel/internal/queuejob"
|
||||
"github.com/TheTNB/panel/pkg/queue"
|
||||
@@ -70,31 +69,3 @@ func (r *taskRepo) Push(task *biz.Task) error {
|
||||
task.ID,
|
||||
})
|
||||
}
|
||||
|
||||
// TODO 修复此功能
|
||||
func (r *taskRepo) DispatchWaiting() {
|
||||
// cli下不处理
|
||||
if app.IsCli {
|
||||
return
|
||||
}
|
||||
|
||||
if err := r.db.Model(&biz.Task{}).Where("status = ?", biz.TaskStatusRunning).Update("status", biz.TaskStatusFailed).Error; err != nil {
|
||||
r.log.Warn("failed to mark running tasks as failed", slog.Any("err", err))
|
||||
return
|
||||
}
|
||||
|
||||
var tasks []biz.Task
|
||||
if err := r.db.Where("status = ?", biz.TaskStatusWaiting).Find(&tasks).Error; err != nil {
|
||||
r.log.Warn("failed to get pending tasks", slog.Any("err", err))
|
||||
return
|
||||
}
|
||||
|
||||
for _, task := range tasks {
|
||||
if err := r.queue.Push(queuejob.NewProcessTask(r.log, r), []any{
|
||||
task.ID,
|
||||
}); err != nil {
|
||||
r.log.Warn("failed to push task", slog.Any("err", err))
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user