package siteprobe import ( "time" "ezops/model" "gorm.io/gorm" ) // ResolveRecoveredProbeAlerts 拨测恢复后立即关闭探测类活跃告警 // Logan.Li func ResolveRecoveredProbeAlerts(db *gorm.DB, taskID uint, lastResult string) { if lastResult != "success" { return } now := time.Now() db.Model(&model.SiteAlert{}). Where("task_id = ? AND status = ? AND trigger_type IN ?", taskID, model.SiteAlertStatusActive, []string{"probe_fail", "probe_timeout", "http_status_error"}). Updates(map[string]interface{}{ "status": model.SiteAlertStatusResolved, "resolved_at": now, }) }