edb_monitor_message.go 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package edbmonitor
  2. import (
  3. "fmt"
  4. "time"
  5. "github.com/beego/beego/v2/client/orm"
  6. )
  7. type EdbMonitorMessage struct {
  8. EdbMonitorMessageId int `orm:"column(edb_monitor_message_id);pk"`
  9. EdbInfoId int `description:"指标id"`
  10. EdbInfoType int `description:"指标类型: 0-普通指标;1-预测指标"`
  11. EdbUniqueCode string `description:"指标唯一标识"`
  12. EdbClassifyId int `description:"指标id"`
  13. AdminId int `description:"用户id"`
  14. IsRead int `description:"是否已读: 0-未读;1-已读"`
  15. Message string `description:"消息内容"`
  16. MonitorTriggerTime time.Time `description:"预警触发时间"`
  17. CreateTime time.Time `description:"创建时间"`
  18. }
  19. func (m *EdbMonitorMessage) Insert() (insertId int64, err error) {
  20. o := orm.NewOrmUsingDB("data")
  21. insertId, err = o.Insert(m)
  22. return
  23. }
  24. func (m *EdbMonitorMessage) Update(cols []string) (err error) {
  25. o := orm.NewOrmUsingDB("data")
  26. _, err = o.Update(m, cols...)
  27. return
  28. }
  29. func (m *EdbMonitorMessage) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
  30. o := orm.NewOrmUsingDB("data")
  31. sql := fmt.Sprintf(`SELECT COUNT(1) FROM edb_monitor_message WHERE 1=1 %s`, condition)
  32. err = o.Raw(sql, pars).QueryRow(&count)
  33. return
  34. }
  35. func GetEdbMonitorMessageById(id int) (item *EdbMonitorMessage, err error) {
  36. o := orm.NewOrmUsingDB("data")
  37. sql := "SELECT * FROM edb_monitor_message WHERE edb_monitor_message_id =?"
  38. err = o.Raw(sql, id).QueryRow(&item)
  39. return
  40. }
  41. func GetEdbMonitorMessageByAdminId(adminId int) (items []*EdbMonitorMessage, err error) {
  42. o := orm.NewOrmUsingDB("data")
  43. sql := "SELECT * FROM edb_monitor_message WHERE admin_id =? AND is_read = 0 ORDER BY create_time ASC"
  44. _, err = o.Raw(sql, adminId).QueryRows(&items)
  45. return
  46. }
  47. func GetEdbMonitorMessageCountByAdminId(adminId int) (count int, err error) {
  48. o := orm.NewOrmUsingDB("data")
  49. sql := "SELECT COUNT(*) FROM edb_monitor_message WHERE admin_id =? ORDER BY is_read ASC, create_time DESC"
  50. err = o.Raw(sql, adminId).QueryRow(&count)
  51. return
  52. }
  53. func GetEdbMonitorMessagePageByAdminId(adminId, startSize, pageSize int) (items []*EdbMonitorMessage, err error) {
  54. o := orm.NewOrmUsingDB("data")
  55. sql := "SELECT * FROM edb_monitor_message WHERE admin_id =? ORDER BY is_read ASC, create_time DESC LIMIT?,?"
  56. _, err = o.Raw(sql, adminId, startSize, pageSize).QueryRows(&items)
  57. return
  58. }