This commit is contained in:
2026-08-16 09:02:39 +08:00
parent c554152f4f
commit f7f6db8695
105 changed files with 2535 additions and 948 deletions
+2 -25
View File
@@ -27,7 +27,7 @@ type TimedTask struct {
}
type TimedTaskLog struct {
ID uint
CreatedAt time.Time
CreatedAt, UpdatedAt time.Time
TaskID uint
TaskName, TriggerType string
StartedAt, FinishedAt time.Time
@@ -49,29 +49,6 @@ type TaskScheduleError struct{ Err error }
func (e *TaskScheduleError) Error() string { return e.Err.Error() }
func (e *TaskScheduleError) Is(target error) bool { return target == ErrTaskSchedule }
type TaskMethod struct {
Name string
Description string
}
var registeredTaskMethods = []TaskMethod{
{Name: TaskMethodClearDB, Description: "清理数据库过期日志(操作记录、JWT黑名单、定时任务日志)"},
{Name: TaskMethodUploads, Description: "清理过期大文件上传会话"},
}
func RegisteredTaskMethods() []TaskMethod {
return append([]TaskMethod(nil), registeredTaskMethods...)
}
func registeredTaskMethod(name string) bool {
for _, method := range registeredTaskMethods {
if method.Name == name {
return true
}
}
return false
}
type TaskRepo interface {
CreateTask(context.Context, *TimedTask) error
UpdateTask(context.Context, *TimedTask) error
@@ -122,7 +99,7 @@ func (uc *TaskUsecase) Validate(value *TimedTask) error {
}
case TaskExecutorHTTP:
parsed, parseErr := url.Parse(value.HTTPURL)
if parseErr != nil || (parsed.Scheme != "http" && parsed.Scheme != "https") || parsed.Hostname() == "" {
if parseErr != nil || (parsed.Scheme != "http" && parsed.Scheme != "https") || parsed.Host == "" {
return errors.New("httpUrl 必须是合法的 http/https 地址")
}
if len(value.HTTPHeader) > 0 {