edb_monitor_classify.go 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. package edbmonitor
  2. import (
  3. "eta/eta_api/utils"
  4. "time"
  5. "github.com/beego/beego/v2/client/orm"
  6. )
  7. type EdbMonitorClassify struct {
  8. ClassifyId int `orm:"column(classify_id);pk"`
  9. ClassifyName string `description:"分类名称"`
  10. Level int `description:"分类层级"`
  11. ParentId int `description:"父分类ID"`
  12. RootId int `description:"根分类ID"`
  13. Sort int `description:"排序"`
  14. CreateTime time.Time `description:"创建时间"`
  15. }
  16. func (e *EdbMonitorClassify) Insert() (id int64, err error) {
  17. o := orm.NewOrmUsingDB("data")
  18. id, err = o.Insert(e)
  19. return
  20. }
  21. func (e *EdbMonitorClassify) Update(cols []string, classifyId []int) (err error) {
  22. tx, err := orm.NewOrmUsingDB("data").Begin()
  23. if err != nil {
  24. return
  25. }
  26. defer func() {
  27. if err != nil {
  28. tx.Rollback()
  29. } else {
  30. tx.Commit()
  31. }
  32. }()
  33. _, err = tx.Update(e, cols...)
  34. if err != nil {
  35. return
  36. }
  37. if len(classifyId) == 0 {
  38. return
  39. }
  40. sql := `UPDATE edb_monitor_classify SET root_id = ? WHERE classify_id IN (` + utils.GetOrmInReplace(len(classifyId)) + `)`
  41. _, err = tx.Raw(sql, e.RootId, classifyId).Exec()
  42. if err != nil {
  43. return
  44. }
  45. return
  46. }
  47. func DeleteEdbMonitorClassifyById(id int) (err error) {
  48. o := orm.NewOrmUsingDB("data")
  49. _, err = o.Raw("DELETE FROM edb_monitor_classify WHERE classify_id =?", id).Exec()
  50. return
  51. }
  52. func GetEdbMonitorClassifyList() (items []*EdbMonitorClassify, err error) {
  53. o := orm.NewOrmUsingDB("data")
  54. sql := "SELECT * FROM edb_monitor_classify"
  55. _, err = o.Raw(sql).QueryRows(&items)
  56. return
  57. }
  58. func GetEdbMonitorClassifyById(id int) (item *EdbMonitorClassify, err error) {
  59. o := orm.NewOrmUsingDB("data")
  60. sql := "SELECT * FROM edb_monitor_classify WHERE classify_id =?"
  61. err = o.Raw(sql, id).QueryRow(&item)
  62. return
  63. }
  64. func GetEdbMonitorClassifyMaxSortByParentId(parentId int) (sort int, err error) {
  65. o := orm.NewOrmUsingDB("data")
  66. sql := "SELECT MAX(sort) FROM edb_monitor_classify WHERE parent_id =?"
  67. err = o.Raw(sql, parentId).QueryRow(&sort)
  68. return
  69. }
  70. func GetChildEdbMonitorClassifyIdById(id int) (classifyId []int, err error) {
  71. o := orm.NewOrmUsingDB("data")
  72. sql := "SELECT classify_id FROM edb_monitor_classify WHERE parent_id =?"
  73. _, err = o.Raw(sql, id).QueryRows(&classifyId)
  74. return
  75. }
  76. func GetChildEdbMonitorClassifyById(id int) (items []*EdbMonitorClassify, err error) {
  77. o := orm.NewOrmUsingDB("data")
  78. sql := "SELECT * FROM edb_monitor_classify WHERE parent_id =?"
  79. _, err = o.Raw(sql, id).QueryRows(&items)
  80. return
  81. }
  82. func GetChildEdbMonitorClassifyByRootId(rootId int) (items []*EdbMonitorClassify, err error) {
  83. o := orm.NewOrmUsingDB("data")
  84. sql := "SELECT * FROM edb_monitor_classify WHERE root_id =?"
  85. _, err = o.Raw(sql, rootId).QueryRows(&items)
  86. return
  87. }
  88. func GetEdbMonitorClassifyCountByIdList(ids []int) (count int, err error) {
  89. if len(ids) == 0 {
  90. return
  91. }
  92. o := orm.NewOrmUsingDB("data")
  93. sql := `SELECT COUNT(*) FROM edb_monitor_classify WHERE classify_id IN (` + utils.GetOrmInReplace(len(ids)) + `)`
  94. err = o.Raw(sql, ids).QueryRow(&count)
  95. return
  96. }