-
Notifications
You must be signed in to change notification settings - Fork 34
/
level.go
76 lines (69 loc) · 1.68 KB
/
level.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
package notices
import (
"github.com/iwind/TeaGo/maps"
)
// 通知级别类型
type NoticeLevel = uint8
// 通知级别常量
const (
NoticeLevelNone = NoticeLevel(0)
NoticeLevelInfo = NoticeLevel(1)
NoticeLevelWarning = NoticeLevel(2)
NoticeLevelError = NoticeLevel(3)
NoticeLevelSuccess = NoticeLevel(4)
)
// 所有的通知级别
func AllNoticeLevels() []maps.Map {
return []maps.Map{
{
"name": "信息",
"description": "通常是一般的指标数据信息",
"code": NoticeLevelInfo,
"bgcolor": "#f8ffff",
"color": "#276f86",
},
{
"name": "警告",
"description": "可能会发生异常的警告信息",
"code": NoticeLevelWarning,
"bgcolor": "#fffaf3",
"color": "#573a08",
},
{
"name": "错误",
"description": "发生了错误信息",
"code": NoticeLevelError,
"bgcolor": "#fff6f6",
"color": "#9f3a38",
},
{
"name": "成功",
"description": "某个任务处理成功之后的通知信息",
"code": NoticeLevelSuccess,
"bgcolor": "#fcfff5",
"color": "#2c662d",
},
}
}
// 获取通知级别名称
func FindNoticeLevelName(level NoticeLevel) string {
for _, l := range AllNoticeLevels() {
if l["code"] == level {
return l["name"].(string)
}
}
return "信息"
}
// 获取通知级别信息
func FindNoticeLevel(level NoticeLevel) maps.Map {
for _, l := range AllNoticeLevels() {
if l["code"] == level {
return l
}
}
return FindNoticeLevel(NoticeLevelInfo)
}
// 判断是否为失败级别
func IsFailureLevel(level NoticeLevel) bool {
return level == NoticeLevelWarning || level == NoticeLevelError
}