feat: complete Kra admin backend migration

This commit is contained in:
2026-08-14 00:28:37 +08:00
parent c4bf7ee03b
commit acba9624d7
88 changed files with 1765 additions and 8623 deletions
+29
View File
@@ -76,6 +76,35 @@ func (s *TaskScheduler) Remove(id uint) {
delete(s.entries, id)
}
}
func (s *TaskScheduler) Reload(ctx context.Context) error {
s.mu.Lock()
for id, old := range s.entries {
if old.seconds {
s.seconds.Remove(old.entry)
} else {
s.standard.Remove(old.entry)
}
delete(s.entries, id)
}
s.mu.Unlock()
items, _, err := s.service.Tasks(ctx, 1, 100000, nil, nil)
if err != nil {
return err
}
for _, raw := range items {
id, _ := raw["ID"].(uint)
task, findErr := s.service.Task(ctx, id)
if findErr != nil {
return findErr
}
if task.Enabled {
if err = s.Schedule(task); err != nil {
return err
}
}
}
return nil
}
func (s *TaskScheduler) Schedule(task *biz.TimedTask) error {
s.Remove(task.ID)
if !task.Enabled {