package Warning import ( "Cold_Api/logs" _ "github.com/astaxie/beego/cache/redis" "github.com/beego/beego/v2/adapter/orm" _ "github.com/go-sql-driver/mysql" "strconv" "strings" "time" ) // 模板 type WarningType struct { Id int `orm:"column(ID);size(11);auto;pk"` T_name string `orm:"size(256);null"` // 分类 T_Tips string `orm:"type(text);size(256);null"` // 提示 } func (t *WarningType) TableName() string { return "warning_type" // 数据库名称 // ************** 替换 FormulaList ************** } //var redisCache_WarningType cache.Cache func init() { //注册模型 orm.RegisterModel(new(WarningType)) } type WarningType_R struct { Id int T_name string // 分类 T_check bool // 是否勾选 } type WarningType_ struct { Id int T_name string // 分类 } func WarningTypeToWarningType_R(r WarningType, T_warning string) (v WarningType_R) { v.Id = r.Id v.T_name = r.T_name if strings.Contains(T_warning, "W"+strconv.Itoa(v.Id)+"|") || T_warning == "*" { v.T_check = true } return v } func WarningTypeToWarningType_(r WarningType) (v WarningType_) { v.Id = r.Id v.T_name = r.T_name return v } // 获取全部 func Read_WarningType_All_T_Notice_mechanism() string { logs.Println("=========== 初始化报警规则 =========") time.Sleep(3 * time.Second) o := orm.NewOrm() var r []WarningType qs := o.QueryTable(new(WarningType)) qs.All(&r) str := "" for _, v := range r { str += v.T_Tips } return str } // 获取全部 func Read_WarningType_All() (r []WarningType_) { o := orm.NewOrm() var maps []WarningType qs := o.QueryTable(new(WarningType)) qs.All(&maps) for _, v := range maps { r = append(r, WarningTypeToWarningType_(v)) } return r } // 获取全部 func Read_WarningType_All_T_Warning(T_warning string) (r []WarningType_R) { o := orm.NewOrm() // 也可以直接使用 Model 结构体作为表名 var maps []WarningType qs := o.QueryTable(new(WarningType)) qs.OrderBy("Id").All(&maps) for _, v := range maps { r = append(r, WarningTypeToWarningType_R(v, T_warning)) } return r }