enum_opteventlevel.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package enum
  2. import (
  3. "time"
  4. "github.com/astaxie/beego/orm"
  5. )
  6. //审计事件等级
  7. type OptEventLevel int
  8. func init() {
  9. //初始化常量定义。将定义写入到数据字典表中
  10. go func() {
  11. time.Sleep(3 * time.Second) //延迟3秒,主要是保证数据库初始化已完成
  12. db := orm.NewOrm()
  13. code := "log_eventlevel"
  14. var i = OptEventLevel(0)
  15. db.Raw("insert IGNORE into global_const_code(code,parentcode,name)values(?,?,?)", code, "systemconstcode", "日志事件等级").Exec()
  16. for {
  17. desc := i.String()
  18. //logger.Logger.Println(fmt.Sprintf("常量值:%d 常量名称:%s", i, desc))
  19. db.Raw("insert IGNORE into global_const_code(code,parentcode,name)values(?,?,?)", i, code, desc).Exec()
  20. if desc == "未知类型" {
  21. break
  22. }
  23. i = i + 1
  24. }
  25. }()
  26. }
  27. const (
  28. //高
  29. OptEventLevel_Hight OptEventLevel = iota
  30. //中
  31. OptEventLevel_Mid
  32. //低
  33. OptEventLevel_Low
  34. )
  35. func (t OptEventLevel) String() string {
  36. switch t {
  37. case OptEventLevel_Hight:
  38. return "高"
  39. case OptEventLevel_Mid:
  40. return "中"
  41. case OptEventLevel_Low:
  42. return "低"
  43. default:
  44. return "未知类型"
  45. }
  46. }