From 2b39353a59d4ec97a352caa14a19d7bbe3352cb2 Mon Sep 17 00:00:00 2001 From: like Date: Wed, 5 Jul 2023 10:52:36 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=AE=8C=E5=96=84=E9=A2=84=E8=AD=A6?= =?UTF-8?q?=E8=A7=84=E5=88=99=E8=AE=BE=E7=BD=AE=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/bean/entity/alert_rules.go | 9 +++++---- src/bean/vo/request/alert_rules.go | 9 +++++++-- src/controller/alert_rules.go | 17 +++++++++++++++++ src/router/alertrulesrouter.go.go | 1 + src/service/alert_rules.go | 20 ++++++++++++++++++++ 5 files changed, 50 insertions(+), 6 deletions(-) diff --git a/src/bean/entity/alert_rules.go b/src/bean/entity/alert_rules.go index 8087ad7..882ccc6 100644 --- a/src/bean/entity/alert_rules.go +++ b/src/bean/entity/alert_rules.go @@ -30,9 +30,10 @@ func (m *AlertRules) TableName() string { } type RulesAlertRange struct { - Name string `json:"name" form:"name" binding:"required"` - Value string `json:"value" form:"value" binding:"required"` - Compare string `json:"compare" form:"compare" binding:"required,oneof== != =~ !~"` + ChineseName string `json:"chinese_name" binding:"required"` + Name string `json:"name" form:"name" binding:"required"` + Value string `json:"value" form:"value" binding:"required"` + Compare string `json:"compare" form:"compare" binding:"required,oneof== != =~ !~"` } type AlertCondition struct { @@ -43,6 +44,6 @@ type AlertCondition struct { type NotifyRecipients struct { SystemAccount string `json:"system_account" form:"system_account" binding:"required"` - Name string `json:"user_name" form:"user_name" binding:"required"` + UserName string `json:"user_name" form:"user_name" binding:"required"` Phone string `json:"phone" form:"phone" binding:"required"` } diff --git a/src/bean/vo/request/alert_rules.go b/src/bean/vo/request/alert_rules.go index 8e83c7d..a7c5458 100644 --- a/src/bean/vo/request/alert_rules.go +++ b/src/bean/vo/request/alert_rules.go @@ -23,7 +23,7 @@ type AddAlertRules struct { NotifyRecipients []entity.NotifyRecipients `json:"notify_recipients" form:"notify_recipients" binding:"dive"` // 预警推送用户 NotifyPushCount int `json:"notify_push_count" form:"notify_push_count" binding:"gte=1"` // 消息推送次数 NotifyPushFrequency int `json:"notify_push_frequency" form:"notify_push_frequency" binding:"gte=1"` // 消息推送频率 分钟 - IsEnabled int `json:"is_enabled" form:"is_enabled" binding:"omitempty,oneof=0 1 2"` // 是否开启 1:是 2:否 + IsEnabled int `json:"is_enabled" form:"is_enabled" binding:"oneof=1 2"` // 是否开启 1:是 2:否 } type UpdateAlertRules struct { @@ -46,7 +46,12 @@ type UpdateAlertRules struct { NotifyRecipients []entity.NotifyRecipients `json:"notify_recipients" form:"notify_recipients" binding:"dive"` // 预警推送用户 NotifyPushCount int `json:"notify_push_count" form:"notify_push_count" binding:"gte=1"` // 消息推送次数 NotifyPushFrequency int `json:"notify_push_frequency" form:"notify_push_frequency" binding:"gte=1"` // 消息推送频率 分钟 - IsEnabled int `json:"is_enabled" form:"is_enabled" binding:"omitempty,oneof=0 1 2"` // 是否开启 1:是 2:否 + IsEnabled int `json:"is_enabled" form:"is_enabled" binding:"oneof=1 2"` // 是否开启 1:是 2:否 +} + +type UpdateIsEnabledAlertRules struct { + Id string `json:"id" form:"id" binding:"required"` + IsEnabled int `json:"is_enabled" form:"is_enabled" binding:"oneof=1 2"` // 是否开启 1:是 2:否 } type DeleteAlertRules struct { diff --git a/src/controller/alert_rules.go b/src/controller/alert_rules.go index 481d0d6..3388c30 100644 --- a/src/controller/alert_rules.go +++ b/src/controller/alert_rules.go @@ -42,6 +42,23 @@ func UpdateAlertRules(c *gin.Context) { SendJsonResponse(c, resp.OK, nil) } +func UpdateIsEnabledAlertRules(c *gin.Context) { + var req request.UpdateIsEnabledAlertRules + if err := c.ShouldBind(&req); err != nil { + SendJsonResponse(c, resp.InvalidParam.TranslateError(err), nil) + return + } + + svc := service.AlertRulesSvc{User: header.GetUser(c)} + + err := svc.UpdateIsEnabled(req) + if err != nil { + SendJsonResponse(c, resp.FAIL.WithError(err), nil) + return + } + SendJsonResponse(c, resp.OK, nil) +} + func DeleteAlertRules(c *gin.Context) { var req request.DeleteAlertRules if err := c.ShouldBind(&req); err != nil { diff --git a/src/router/alertrulesrouter.go.go b/src/router/alertrulesrouter.go.go index 8562b3f..2a262a8 100644 --- a/src/router/alertrulesrouter.go.go +++ b/src/router/alertrulesrouter.go.go @@ -13,6 +13,7 @@ func InitAlertRulesRouter(e *gin.Engine) { { group.POST("", controller.AddAlertRules) group.PUT("", controller.UpdateAlertRules) + group.PUT("is_enabled", controller.UpdateIsEnabledAlertRules) group.DELETE("", controller.DeleteAlertRules) group.GET("", controller.DetailAlertRules) group.GET("list", controller.ListAlertRules) diff --git a/src/service/alert_rules.go b/src/service/alert_rules.go index 1bb6413..4eaef39 100644 --- a/src/service/alert_rules.go +++ b/src/service/alert_rules.go @@ -115,6 +115,7 @@ func (a *AlertRulesSvc) Update(req request.UpdateAlertRules) error { data.NotifyRecipients = util.ConvertToString(req.NotifyRecipients) session := db.NewSession() + defer session.Close() var dbAlertRules entity.AlertRules _, err = session.Table(data.TableName()).ID(data.Id).Get(&dbAlertRules) if err != nil { @@ -175,6 +176,25 @@ func (a *AlertRulesSvc) Update(req request.UpdateAlertRules) error { return nil } +func (a *AlertRulesSvc) UpdateIsEnabled(req request.UpdateIsEnabledAlertRules) error { + db, err := client.GetDbClient() + if err != nil { + err = resp.DbConnectError.WithError(err) + return err + } + now := jsontime.Now() + data := entity.AlertRules{ + Id: req.Id, + IsEnabled: req.IsEnabled, + UpdatedBy: a.User.SystemAccount, + UpdatedAt: now, + } + session := db.NewSession() + defer session.Close() + _, err = session.Table(data.TableName()).Cols("is_enabled,updated_by,updated_at").Where("id = ?", req.Id).Update(&data) + return err +} + func (a *AlertRulesSvc) GetDataById(req request.DetailAlertRules) (resp response.AlertRulesItem, err error) { list, err := a.List(request.ListAlertRules{Id: req.Id}) if err != nil { -- 2.26.0