chore: adjust grom find 1 sql
This commit is contained in:
@@ -614,7 +614,8 @@ func (es *ExecutorService) ExecuteTask(taskID string, extraEnvs []string) *execu
|
||||
// StopTaskExecution stops a running task execution by LogID
|
||||
func (es *ExecutorService) StopTaskExecution(logID string) error {
|
||||
var taskLog models.TaskLog
|
||||
if err := database.DB.Where("id = ?", logID).First(&taskLog).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", logID).Limit(1).Find(&taskLog)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return fmt.Errorf("日志不存在")
|
||||
}
|
||||
|
||||
@@ -747,7 +748,8 @@ func (es *ExecutorService) CleanupRunningTasks() error {
|
||||
// CheckConcurrency 检查任务并发限制(只读检查)
|
||||
func (es *ExecutorService) CheckConcurrency(taskID string) error {
|
||||
var task models.Task
|
||||
if err := database.DB.Select("config, running_go").Where("id = ?", taskID).First(&task).Error; err != nil {
|
||||
res := database.DB.Select("config, running_go").Where("id = ?", taskID).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return err
|
||||
}
|
||||
var goids []int64
|
||||
@@ -773,7 +775,8 @@ func (es *ExecutorService) AddRunningGo(taskID string) (int64, error) {
|
||||
for attempt := 0; attempt < 3; attempt++ {
|
||||
lastErr = database.DB.Transaction(func(tx *gorm.DB) error {
|
||||
var task models.Task
|
||||
if err := tx.Where("id = ?", taskID).First(&task).Error; err != nil {
|
||||
res := tx.Where("id = ?", taskID).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return err
|
||||
}
|
||||
var goids []int64
|
||||
@@ -814,7 +817,8 @@ func (es *ExecutorService) RemoveRunningGo(taskID string, goid int64) {
|
||||
for attempt := 0; attempt < 3; attempt++ {
|
||||
err := database.DB.Transaction(func(tx *gorm.DB) error {
|
||||
var task models.Task
|
||||
if err := tx.Where("id = ?", taskID).First(&task).Error; err != nil {
|
||||
res := tx.Where("id = ?", taskID).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return err
|
||||
}
|
||||
var goids []int64
|
||||
@@ -844,7 +848,8 @@ func (es *ExecutorService) ExecuteRemoteForScheduler(task *models.Task, logID st
|
||||
|
||||
// 1. 检查 Agent 状态
|
||||
var agent models.Agent
|
||||
if err := database.DB.Where("id = ?", agentID).First(&agent).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", agentID).Limit(1).Find(&agent)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return nil, fmt.Errorf("Agent #%s 不存在", agentID)
|
||||
}
|
||||
if !agent.Enabled {
|
||||
|
||||
@@ -38,7 +38,8 @@ func ParseRepoScriptsAndAddCron(es *ExecutorService, taskID string, logWriter io
|
||||
}
|
||||
|
||||
var repoTask models.Task
|
||||
if err := database.DB.Where("id = ?", taskID).First(&repoTask).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", taskID).Limit(1).Find(&repoTask)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -95,7 +95,8 @@ func (s *TaskLogService) UpdateTaskStats(taskID string, status string) {
|
||||
// CleanTaskLogs 清理任务日志
|
||||
func (s *TaskLogService) CleanTaskLogs(taskID string) {
|
||||
var task models.Task
|
||||
if err := database.DB.Where("id = ?", taskID).First(&task).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", taskID).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -121,8 +122,8 @@ func (s *TaskLogService) CleanTaskLogs(taskID string) {
|
||||
deleted = result.RowsAffected
|
||||
case "count":
|
||||
var boundaryLog models.TaskLog
|
||||
err := database.DB.Where("task_id = ?", taskID).Order("id DESC").Offset(config.Keep - 1).Limit(1).First(&boundaryLog).Error
|
||||
if err == nil {
|
||||
res := database.DB.Where("task_id = ?", taskID).Order("id DESC").Offset(config.Keep - 1).Limit(1).Find(&boundaryLog)
|
||||
if res.Error == nil && res.RowsAffected > 0 {
|
||||
result := database.DB.Where("task_id = ? AND id < ?", taskID, boundaryLog.ID).Delete(&models.TaskLog{})
|
||||
deleted = result.RowsAffected
|
||||
}
|
||||
|
||||
@@ -15,7 +15,8 @@ func NewTaskService() *TaskService {
|
||||
|
||||
func (ts *TaskService) GetTaskBySourceID(sourceID string) *models.Task {
|
||||
var task models.Task
|
||||
if err := database.DB.Where("source_id = ?", sourceID).First(&task).Error; err != nil {
|
||||
res := database.DB.Where("source_id = ?", sourceID).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return nil
|
||||
}
|
||||
return &task
|
||||
@@ -91,7 +92,8 @@ func (ts *TaskService) GetTasksWithPagination(page, pageSize int, name string, a
|
||||
|
||||
func (ts *TaskService) GetTaskByID(id string) *models.Task {
|
||||
var task models.Task
|
||||
if err := database.DB.Where("id = ?", id).First(&task).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", id).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return nil
|
||||
}
|
||||
return &task
|
||||
@@ -99,7 +101,8 @@ func (ts *TaskService) GetTaskByID(id string) *models.Task {
|
||||
|
||||
func (ts *TaskService) UpdateTask(id string, name, command, schedule string, timeout int, workDir, cleanConfig, envs string, enabled bool, taskType, config string, agentID *string, languages []map[string]string, triggerType string, tags string, retryCount int, retryInterval int, randomRange int, sourceID string) *models.Task {
|
||||
var task models.Task
|
||||
if err := database.DB.Where("id = ?", id).First(&task).Error; err != nil {
|
||||
res := database.DB.Where("id = ?", id).Limit(1).Find(&task)
|
||||
if res.Error != nil || res.RowsAffected == 0 {
|
||||
return nil
|
||||
}
|
||||
task.Name = name
|
||||
|
||||
Reference in New Issue
Block a user