Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
so-operation-api
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
smart-operation
so-operation-api
Commits
3d628724
Commit
3d628724
authored
Jul 04, 2023
by
李科
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 完善预警规则设置字段
parent
cd9bb6ae
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
65 additions
and
40 deletions
+65
-40
src/bean/entity/alert_rules.go
src/bean/entity/alert_rules.go
+7
-0
src/bean/vo/request/alert_rules.go
src/bean/vo/request/alert_rules.go
+37
-35
src/bean/vo/response/alert_rules.go
src/bean/vo/response/alert_rules.go
+4
-0
src/service/alert_class.go
src/service/alert_class.go
+7
-4
src/service/alert_rules.go
src/service/alert_rules.go
+10
-1
No files found.
src/bean/entity/alert_rules.go
View file @
3d628724
...
...
@@ -15,6 +15,7 @@ type AlertRules struct {
DurationUnit
string
`json:"duration_unit" xorm:"'duration_unit'"`
// 持续时间单位 s m h
CheckPeriod
int
`json:"check_period" xorm:"'check_period'"`
// 检查周期 单位:分钟
NotifyMethod
string
`json:"notify_method" xorm:"'notify_method'"`
// 预警通知方式 all dingtalk sms
NotifyRecipients
string
`json:"notify_recipients" xorm:"notify_recipients"`
// 预警推送用户
NotifyPushCount
int
`json:"notify_push_count" xorm:"'notify_push_count'"`
// 消息推送次数
NotifyPushFrequency
int
`json:"notify_push_frequency" xorm:"'notify_push_frequency'"`
// 消息推送频率 分钟
IsEnabled
int
`json:"is_enabled" xorm:"'is_enabled'"`
// 是否开启 0:关闭 1:启动
...
...
@@ -39,3 +40,9 @@ type AlertCondition struct {
ThresholdsMin
int
`json:"thresholds_min" form:"thresholds_min" binding:"required"`
RiskLevel
int
`json:"risk_level" form:"risk_level" binding:"required"`
}
type
NotifyRecipients
struct
{
SystemAccount
string
`json:"system_account" form:"system_account" binding:"required"`
Name
string
`json:"user_name" form:"user_name" binding:"required"`
Phone
string
`json:"phone" form:"phone" binding:"required"`
}
src/bean/vo/request/alert_rules.go
View file @
3d628724
This diff is collapsed.
Click to expand it.
src/bean/vo/response/alert_rules.go
View file @
3d628724
...
...
@@ -4,6 +4,10 @@ import "gitlab.wodcloud.com/smart-operation/so-operation-api/src/bean/entity"
type
AlertRulesItem
struct
{
entity
.
AlertRules
`xorm:"extends"`
AlertCondition
[]
entity
.
AlertCondition
`json:"alert_condition" form:"alert_condition" binding:"required"`
AlertRange
[]
entity
.
RulesAlertRange
`json:"alert_range" form:"alert_range" binding:"required,dive"`
NotifyMethod
[]
string
`json:"notify_method" form:"notify_method" binding:"max=2,dive,oneof=dingtalk sms"`
NotifyRecipients
[]
entity
.
NotifyRecipients
`json:"notify_recipients" form:"notify_recipients" binding:"dive"`
}
type
AlertRulesList
struct
{
...
...
src/service/alert_class.go
View file @
3d628724
...
...
@@ -28,11 +28,14 @@ func (m *AlertClassSvc) Add(session *xorm.Session, req request.AddAlertClass) (c
}
_
=
copier
.
Copy
(
&
data
,
&
req
)
max
,
err
:=
m
.
SortOrderMax
(
data
.
ParentId
)
if
err
!=
nil
{
return
var
max
int
if
data
.
SortOrder
>=
0
{
max
,
err
=
m
.
SortOrderMax
(
data
.
ParentId
)
if
err
!=
nil
{
return
}
data
.
SortOrder
=
max
+
1
}
data
.
SortOrder
=
max
+
1
_
,
err
=
session
.
Insert
(
&
data
)
classId
=
data
.
ClassId
return
...
...
src/service/alert_rules.go
View file @
3d628724
...
...
@@ -9,6 +9,7 @@ import (
"gitlab.wodcloud.com/smart-operation/so-operation-api/src/common/client"
"gitlab.wodcloud.com/smart-operation/so-operation-api/src/pkg/beagle/jsontime"
"gitlab.wodcloud.com/smart-operation/so-operation-api/src/pkg/beagle/resp"
"gitlab.wodcloud.com/smart-operation/so-operation-api/src/util"
"xorm.io/xorm"
)
...
...
@@ -31,9 +32,13 @@ func (m *AlertRulesSvc) Add(req request.AddAlertRules) error {
UpdatedAt
:
now
,
}
_
=
copier
.
Copy
(
&
data
,
&
req
)
data
.
AlertCondition
=
util
.
ConvertToString
(
req
.
AlertCondition
)
data
.
AlertRange
=
util
.
ConvertToString
(
req
.
AlertRange
)
data
.
NotifyMethod
=
util
.
ConvertToString
(
req
.
NotifyMethod
)
data
.
NotifyRecipients
=
util
.
ConvertToString
(
req
.
NotifyRecipients
)
switch
req
.
DetectionType
{
case
1
:
_
,
err
=
db
.
Update
(
&
data
)
_
,
err
=
db
.
Insert
(
&
data
)
if
err
!=
nil
{
return
err
}
...
...
@@ -100,6 +105,10 @@ func (m *AlertRulesSvc) Update(req request.UpdateAlertRules) error {
UpdatedAt
:
now
,
}
_
=
copier
.
Copy
(
&
data
,
&
req
)
data
.
AlertCondition
=
util
.
ConvertToString
(
req
.
AlertCondition
)
data
.
AlertRange
=
util
.
ConvertToString
(
req
.
AlertRange
)
data
.
NotifyMethod
=
util
.
ConvertToString
(
req
.
NotifyMethod
)
data
.
NotifyRecipients
=
util
.
ConvertToString
(
req
.
NotifyRecipients
)
session
:=
db
.
NewSession
()
var
dbAlertRules
entity
.
AlertRules
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment