sa_compare_classify.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. package semantic_analysis
  2. import (
  3. "eta/eta_api/global"
  4. "eta/eta_api/utils"
  5. "fmt"
  6. "github.com/rdlucklib/rdluck_tools/paging"
  7. "strings"
  8. "time"
  9. )
  10. type SaCompareClassify struct {
  11. SaCompareClassifyId int `orm:"column(sa_compare_classify_id);pk" gorm:"primaryKey" description:"分类ID"`
  12. ClassifyName string `description:"分类名称"`
  13. SysAdminId int `description:"创建人ID"`
  14. SysAdminName string `description:"创建人姓名"`
  15. CreateTime time.Time `description:"创建时间"`
  16. ModifyTime time.Time `description:"修改时间"`
  17. }
  18. var SaCompareClassifyColumns = struct {
  19. SaCompareClassifyId string
  20. ClassifyName string
  21. SysAdminId string
  22. SysAdminName string
  23. CreateTime string
  24. ModifyTime string
  25. }{
  26. SaCompareClassifyId: "sa_compare_classify_id",
  27. ClassifyName: "classify_name",
  28. SysAdminId: "sys_admin_id",
  29. SysAdminName: "sys_admin_name",
  30. CreateTime: "create_time",
  31. ModifyTime: "modify_time",
  32. }
  33. func (m *SaCompareClassify) TableName() string {
  34. return "sa_compare_classify"
  35. }
  36. func (m *SaCompareClassify) Create() (err error) {
  37. o := global.DbMap[utils.DbNameMaster]
  38. err = o.Create(m).Error
  39. return
  40. }
  41. func (m *SaCompareClassify) Update(cols []string) (err error) {
  42. o := global.DbMap[utils.DbNameMaster]
  43. err = o.Select(cols).Updates(m).Error
  44. return
  45. }
  46. func (m *SaCompareClassify) Del() (err error) {
  47. o := global.DbMap[utils.DbNameMaster]
  48. sql := `DELETE FROM sa_compare_classify WHERE sa_compare_classify_id = ? LIMIT 1`
  49. err = o.Exec(sql, m.SaCompareClassifyId).Error
  50. return
  51. }
  52. func (m *SaCompareClassify) GetItemById(id int) (err error) {
  53. o := global.DbMap[utils.DbNameMaster]
  54. sql := `SELECT * FROM sa_compare_classify WHERE sa_compare_classify_id = ? LIMIT 1`
  55. err = o.Raw(sql, id).First(&m).Error
  56. return
  57. }
  58. func (m *SaCompareClassify) GetItemByCondition(condition string, pars []interface{}) (err error) {
  59. o := global.DbMap[utils.DbNameMaster]
  60. sql := `SELECT * FROM sa_compare_classify WHERE 1=1 `
  61. sql += condition
  62. sql += ` LIMIT 1`
  63. err = o.Raw(sql, pars...).First(&m).Error
  64. return
  65. }
  66. func (m *SaCompareClassify) GetCountByCondition(condition string, pars []interface{}) (count int, err error) {
  67. o := global.DbMap[utils.DbNameMaster]
  68. sql := fmt.Sprintf(`SELECT COUNT(1) FROM %s WHERE 1=1 %s`, m.TableName(), condition)
  69. err = o.Raw(sql, pars...).Scan(&count).Error
  70. return
  71. }
  72. func (m *SaCompareClassify) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*SaCompareClassify, err error) {
  73. o := global.DbMap[utils.DbNameMaster]
  74. fields := strings.Join(fieldArr, ",")
  75. if len(fieldArr) == 0 {
  76. fields = `*`
  77. }
  78. order := `ORDER BY create_time DESC`
  79. if orderRule != "" {
  80. order = ` ORDER BY ` + orderRule
  81. }
  82. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
  83. err = o.Raw(sql, pars...).Find(&items).Error
  84. return
  85. }
  86. func (m *SaCompareClassify) GetPageItemsByCondition(startSize, pageSize int, condition string, pars []interface{}, fieldArr []string, orderRule string) (total int, items []*SaCompareClassify, err error) {
  87. o := global.DbMap[utils.DbNameMaster]
  88. fields := strings.Join(fieldArr, ",")
  89. if len(fieldArr) == 0 {
  90. fields = `*`
  91. }
  92. order := `ORDER BY create_time DESC`
  93. if orderRule != "" {
  94. order = ` ORDER BY ` + orderRule
  95. }
  96. sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
  97. totalSql := `SELECT COUNT(1) total FROM (` + sql + `) z`
  98. if err = o.Raw(totalSql, pars...).Scan(&total).Error; err != nil {
  99. return
  100. }
  101. sql += ` LIMIT ?,?`
  102. pars = append(pars, startSize, pageSize)
  103. err = o.Raw(sql, pars...).Find(&items).Error
  104. return
  105. }
  106. type SaCompareClassifyAddReq struct {
  107. ClassifyName string `description:"分类名称"`
  108. }
  109. type SaCompareClassifyEditReq struct {
  110. SaCompareClassifyId int `description:"分类ID"`
  111. SaCompareClassifyAddReq
  112. }
  113. type SaCompareClassifyDelReq struct {
  114. SaCompareClassifyId int `description:"分类ID"`
  115. }
  116. type SaCompareClassifyPageListResp struct {
  117. List []*SaCompareClassifyItem
  118. Paging *paging.PagingItem `description:"分页数据"`
  119. }
  120. type SaCompareClassifyItem struct {
  121. SaCompareClassifyId int `description:"分类ID"`
  122. ClassifyName string `description:"分类名称"`
  123. SysAdminId int `description:"创建人ID"`
  124. SysAdminName string `description:"创建人姓名"`
  125. CreateTime string `description:"创建时间"`
  126. Children []*SaCompareItem `description:"分类下的比对" gorm:"-"`
  127. }