From f2bf3953692433674eb4559c795c37951ff91cfe Mon Sep 17 00:00:00 2001 From: lan-yonghui Date: Fri, 5 Sep 2025 15:32:49 +0800 Subject: [PATCH] fix: Fix the issue where the task did not stop after deleting the alert --- agent/app/service/alert.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/agent/app/service/alert.go b/agent/app/service/alert.go index 9e9c3a1a1edd..c56c2aa50227 100644 --- a/agent/app/service/alert.go +++ b/agent/app/service/alert.go @@ -177,7 +177,24 @@ func (a AlertService) UpdateAlert(req dto.AlertUpdate) error { } func (a AlertService) DeleteAlert(id uint) error { - return alertRepo.Delete(repo.WithByID(id)) + alertInfo, _ := alertRepo.Get(repo.WithByID(id)) + if alertInfo.ID == 0 { + return buserr.New("ErrRecordNotFound") + } + err := alertRepo.Delete(repo.WithByID(id)) + if err != nil { + return err + } + alerts, err := a.GetAlerts() + if err != nil { + return err + } + if len(alerts) > 0 { + NewIAlertTaskHelper().InitTask(alertInfo.Type) + } else { + NewIAlertTaskHelper().StopTask() + } + return nil } func (a AlertService) GetAlert(id uint) (dto.AlertDTO, error) {