chore: trt to fix restore bool val #70

This commit is contained in:
duorameng
2026-04-18 13:04:53 +08:00
parent 1bd7082f33
commit 4b644e272e
17 changed files with 62 additions and 45 deletions
+7 -7
View File
@@ -54,7 +54,7 @@ func (s *AgentService) CreateToken(remark string, maxUses int, expiresAt *time.T
Remark: remark,
MaxUses: maxUses,
ExpiresAt: expires,
Enabled: true,
Enabled: utils.BoolPtr(true),
}
if err := database.DB.Create(agentToken).Error; err != nil {
@@ -85,7 +85,7 @@ func (s *AgentService) ValidateToken(token string) (*models.AgentToken, error) {
return nil, &ServiceError{Message: "无效的令牌"}
}
if !agentToken.Enabled {
if !utils.DerefBool(agentToken.Enabled, true) {
return nil, &ServiceError{Message: "令牌已禁用"}
}
@@ -147,7 +147,7 @@ func (s *AgentService) RegisterByToken(token string, machineID string, ip string
IP: ip,
Status: constant.AgentStatusOnline,
LastSeen: &now,
Enabled: true,
Enabled: utils.BoolPtr(true),
}
if err := database.DB.Create(agent).Error; err != nil {
@@ -190,7 +190,7 @@ func (s *AgentService) Register(req *models.AgentRegisterRequest, ip string) (*m
IP: ip,
Status: constant.AgentStatusOnline,
LastSeen: &now,
Enabled: true,
Enabled: utils.BoolPtr(true),
}
if err := database.DB.Create(agent).Error; err != nil {
@@ -207,7 +207,7 @@ func (s *AgentService) Update(id string, name, description string, enabled bool)
return database.DB.Model(&models.Agent{}).Where("id = ?", id).Updates(map[string]interface{}{
"name": name,
"description": description,
"enabled": enabled,
"enabled": &enabled,
}).Error
}
@@ -272,7 +272,7 @@ func (s *AgentService) Heartbeat(token, ip, version, buildTime, hostname, osType
return nil, &ServiceError{Message: "无效的 Token"}
}
if !agent.Enabled {
if !utils.DerefBool(agent.Enabled, true) {
return nil, &ServiceError{Message: "Agent 已禁用"}
}
@@ -355,7 +355,7 @@ func (s *AgentService) GetTasks(agentID string) []models.AgentTask {
Languages: []map[string]string(task.Languages),
RandomRange: task.RandomRange,
Secrets: secrets,
Enabled: task.Enabled,
Enabled: utils.DerefBool(task.Enabled, true),
}
}
+7 -7
View File
@@ -30,8 +30,8 @@ func (es *EnvService) CreateEnvVar(name, value, remark, envType string, hidden,
Value: models.BigText(value),
Remark: remark,
Type: envType,
Hidden: hidden,
Enabled: enabled,
Hidden: &hidden,
Enabled: &enabled,
UserID: userID,
CreatedAt: models.Now(),
UpdatedAt: models.Now(),
@@ -99,8 +99,8 @@ func (es *EnvService) UpdateEnvVar(id string, name, value, remark, envType strin
"value": models.BigText(value),
"remark": remark,
"type": envType,
"hidden": hidden,
"enabled": enabled,
"hidden": &hidden,
"enabled": &enabled,
}
database.DB.Model(&env).Updates(updates)
return &env
@@ -224,7 +224,7 @@ func (es *EnvService) formatEnvVars(envs []models.EnvironmentVariable) []string
}
value := string(env.Value)
if !env.Enabled {
if !utils.DerefBool(env.Enabled, true) {
value = ""
}
@@ -266,13 +266,13 @@ func (es *EnvService) formatEnvVarsAndSecrets(envs []models.EnvironmentVariable)
if env.Type == constant.EnvTypeSecret {
if decValue, err := utils.Decrypt(value); err == nil {
value = decValue
if env.Enabled && value != "" {
if utils.DerefBool(env.Enabled, true) && value != "" {
secrets = append(secrets, value)
}
}
}
if !env.Enabled {
if !utils.DerefBool(env.Enabled, true) {
value = ""
}
+5 -5
View File
@@ -104,7 +104,7 @@ func (s *NotificationService) SaveChannel(channel NotifyChannel) error {
Name: channel.Name,
Type: channel.Type,
Config: models.BigText(configJSON),
Enabled: channel.Enabled,
Enabled: utils.BoolPtr(channel.Enabled),
}
return database.DB.Create(notifyWay).Error
}
@@ -114,7 +114,7 @@ func (s *NotificationService) SaveChannel(channel NotifyChannel) error {
"name": channel.Name,
"type": channel.Type,
"config": models.BigText(configJSON),
"enabled": channel.Enabled,
"enabled": &channel.Enabled,
}
return database.DB.Model(&models.NotifyWay{}).Where("id = ?", channel.ID).Updates(updates).Error
}
@@ -282,7 +282,7 @@ func (s *NotificationService) SendByChannelID(channelID string, msg *NotifyMessa
return &NotifyResult{Success: false, Error: "渠道不存在"}
}
if !notifyWay.Enabled {
if !utils.DerefBool(notifyWay.Enabled, true) {
return &NotifyResult{Success: false, Error: "渠道已禁用"}
}
@@ -295,7 +295,7 @@ func (s *NotificationService) SendByChannelID(channelID string, msg *NotifyMessa
ID: notifyWay.ID,
Name: notifyWay.Name,
Type: notifyWay.Type,
Enabled: notifyWay.Enabled,
Enabled: utils.DerefBool(notifyWay.Enabled, true),
Config: config,
}
return s.SendToChannel(ch, msg)
@@ -533,7 +533,7 @@ func (s *NotificationService) getChannelsInternal() []NotifyChannel {
ID: nw.ID,
Name: nw.Name,
Type: nw.Type,
Enabled: nw.Enabled,
Enabled: utils.DerefBool(nw.Enabled, true),
CreatedAt: nw.CreatedAt,
Config: config,
})
+3 -3
View File
@@ -370,7 +370,7 @@ func (es *ExecutorService) HandleTaskRetry(task *models.Task, req *executor.Exec
es.scheduler.EnqueueDelayed(time.Duration(task.RetryInterval)*time.Second, func() *executor.ExecutionRequest {
latestTask := es.taskService.GetTaskByID(task.ID)
if latestTask == nil || !latestTask.Enabled {
if latestTask == nil || !utils.DerefBool(latestTask.Enabled, true) {
return nil
}
@@ -536,7 +536,7 @@ func (es *ExecutorService) loadCronTasks() {
tasks := es.taskService.GetTasks()
count := 0
for _, task := range tasks {
if !task.Enabled {
if !utils.DerefBool(task.Enabled, true) {
continue
}
@@ -875,7 +875,7 @@ func (es *ExecutorService) ExecuteRemoteForScheduler(task *models.Task, logID st
if res.Error != nil || res.RowsAffected == 0 {
return nil, fmt.Errorf("Agent #%s 不存在", agentID)
}
if !agent.Enabled {
if !utils.DerefBool(agent.Enabled, true) {
return nil, fmt.Errorf("Agent #%s 已禁用", agentID)
}
if es.agentWSManager == nil {
+2 -2
View File
@@ -311,7 +311,7 @@ func ParseRepoScriptsAndAddCron(es *ExecutorService, taskID string, logWriter io
}
database.DB.Save(&existing)
if existing.Enabled && es != nil {
if utils.DerefBool(existing.Enabled, true) && es != nil {
es.AddCronTask(&existing)
}
log("[更新] 任务: %s (%s)", taskName, filename)
@@ -329,7 +329,7 @@ func ParseRepoScriptsAndAddCron(es *ExecutorService, taskID string, logWriter io
Languages: repoTask.Languages,
Timeout: repoTask.Timeout,
Config: models.BigText(defaultTaskConfig),
Enabled: true,
Enabled: utils.BoolPtr(true),
WorkDir: displayWorkDir,
SourceID: sourceID,
RepoTaskID: repoTask.ID,
+2 -2
View File
@@ -44,7 +44,7 @@ func (ts *TaskService) CreateTask(name, command, schedule string, timeout int, w
Envs: models.BigText(envs),
Languages: languages,
AgentID: agentID,
Enabled: true,
Enabled: utils.BoolPtr(true),
RetryCount: retryCount,
RetryInterval: retryInterval,
RandomRange: randomRange,
@@ -113,7 +113,7 @@ func (ts *TaskService) UpdateTask(id string, name, command, schedule string, tim
task.WorkDir = workDir
task.CleanConfig = cleanConfig
task.Envs = models.BigText(envs)
task.Enabled = enabled
task.Enabled = &enabled
task.AgentID = agentID
task.Languages = languages
task.Config = models.BigText(config)