classify_menu_relation.go 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package models
  2. import (
  3. "eta_gn/eta_api/global"
  4. "eta_gn/eta_api/utils"
  5. "time"
  6. )
  7. // ClassifyMenuRelation 报告分类-子目录关联表
  8. type ClassifyMenuRelation struct {
  9. Id int `gorm:"column:id"` //`orm:"column(id);pk"`
  10. MenuId int `gorm:"column:menu_id"` //`description:"子目录ID"`
  11. ClassifyId int `gorm:"column:classify_id"` //`description:"二级分类ID"`
  12. CreateTime time.Time `gorm:"column:create_time"` //`description:"创建时间"`
  13. }
  14. func (item *ClassifyMenuRelation) TableName() string {
  15. return "classify_menu_relation"
  16. }
  17. func (item *ClassifyMenuRelation) Create() (err error) {
  18. //o := orm.NewOrmUsingDB("rddp")
  19. //id, err := o.Insert(item)
  20. //if err != nil {
  21. // return
  22. //}
  23. //item.Id = int(id)
  24. err = global.DmSQL["rddp"].Create(item).Error
  25. return
  26. }
  27. func (item *ClassifyMenuRelation) Update(cols []string) (err error) {
  28. //o := orm.NewOrmUsingDB("rddp")
  29. //_, err = o.Update(item, cols...)
  30. err = global.DmSQL["rddp"].Select(cols).Updates(item).Error
  31. return
  32. }
  33. func (item *ClassifyMenuRelation) InsertMulti(items []*ClassifyMenuRelation) (err error) {
  34. //o := orm.NewOrmUsingDB("rddp")
  35. //_, err = o.InsertMulti(len(items), items)
  36. err = global.DmSQL["rddp"].CreateInBatches(items, utils.MultiAddNum).Error
  37. return
  38. }
  39. // GetClassifyMenuRelationList 获取子目录关联列表
  40. func GetClassifyMenuRelationList(condition string, pars []interface{}) (list []*ClassifyMenuRelation, err error) {
  41. //o := orm.NewOrmUsingDB("rddp")
  42. sql := `SELECT * FROM classify_menu_relation WHERE 1 = 1 `
  43. sql += condition
  44. sql += ` ORDER BY create_time DESC`
  45. //_, err = o.Raw(sql, pars).QueryRows(&list)
  46. err = global.DmSQL["rddp"].Raw(sql, pars).Find(&list).Error
  47. return
  48. }
  49. // DeleteAndInsertClassifyMenuRelation 新增子目录关联
  50. func DeleteAndInsertClassifyMenuRelation(classifyId, menuId int) (err error) {
  51. //o := orm.NewOrmUsingDB("rddp")
  52. //tx, err := o.Begin()
  53. tx := global.DmSQL["rddp"].Begin()
  54. if err != nil {
  55. return
  56. }
  57. defer func() {
  58. if err != nil {
  59. _ = tx.Rollback()
  60. } else {
  61. _ = tx.Commit()
  62. }
  63. }()
  64. // 删除
  65. sql := `DELETE FROM classify_menu_relation WHERE classify_id = ?`
  66. //if _, e := tx.Raw(sql, classifyId).Exec(); e != nil {
  67. // err = e
  68. // return
  69. //}
  70. if e := tx.Exec(sql, classifyId).Error; e != nil {
  71. err = e
  72. return
  73. }
  74. // 新增
  75. if menuId > 0 {
  76. relate := &ClassifyMenuRelation{
  77. ClassifyId: classifyId,
  78. MenuId: menuId,
  79. CreateTime: time.Now().Local(),
  80. }
  81. //_, e := tx.Insert(relate)
  82. e := tx.Create(relate).Error
  83. if e != nil {
  84. err = e
  85. }
  86. }
  87. return
  88. }