classify.go 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. package chart_collect
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "time"
  5. )
  6. // 用户收藏分类表
  7. type ChartCollectClassify struct {
  8. CollectClassifyId int `orm:"column(collect_classify_id);pk"`
  9. ClassifyName string `description:"分类名称"`
  10. ParentId int `description:"父级id"`
  11. CreateTime time.Time `description:"创建时间"`
  12. ModifyTime time.Time `description:"修改时间"`
  13. UserId int `description:"创建人id"`
  14. RealName string `description:"创建人姓名"`
  15. Level int `description:"层级"`
  16. Sort int `description:"排序字段,越小越靠前,默认值:10"`
  17. Source int `description:"分类来源: 1-图库; 2-商品价格曲线; 3-相关性图表; 6-拟合方程图表; 7-统计特征"`
  18. ChartClassifyNameEn string `description:"英文分类名称"`
  19. }
  20. type ClassifyAddReq struct {
  21. ClassifyName string `description:"分类名称"`
  22. }
  23. func AddChartCollectClassify(item *ChartCollectClassify) (err error) {
  24. o := orm.NewOrm()
  25. _, err = o.Insert(item)
  26. return
  27. }
  28. func GetChartCollectClassifyAll(userId int) (item []*ChartCollectClassify, err error) {
  29. o := orm.NewOrm()
  30. sql := ` SELECT * FROM chart_collect_classify WHERE 1=1 AND user_id=? `
  31. sql += " ORDER BY sort asc, collect_classify_id asc "
  32. _, err = o.Raw(sql, userId).QueryRows(&item)
  33. return
  34. }
  35. type ChartCollectClassifyResp struct {
  36. List []*ChartCollectClassifyItem
  37. Language string `description:"指标的展示语言,CN:中文,EN:英文"`
  38. }
  39. type ChartCollectClassifyAddReq struct {
  40. ClassifyName string `description:"分类名称"`
  41. }
  42. func GetChartCollectClassifyCountByCondition(condition string, pars []interface{}) (count int, err error) {
  43. o := orm.NewOrm()
  44. sql := ` SELECT COUNT(1) AS count FROM chart_collect_classify WHERE 1=1 `
  45. if condition != "" {
  46. sql += condition
  47. }
  48. err = o.Raw(sql, pars).QueryRow(&count)
  49. return
  50. }
  51. func GetChartCollectClassifyById(adminId, classifyId int) (item *ChartCollectClassify, err error) {
  52. o := orm.NewOrm()
  53. sql := ` SELECT * FROM chart_collect_classify WHERE user_id=? AND collect_classify_id=? `
  54. err = o.Raw(sql, adminId, classifyId).QueryRow(&item)
  55. return
  56. }
  57. // GetChartCollectClassifyMaxSort 获取MY ETA 分类中排序最小的值
  58. func GetChartCollectClassifyMaxSort(adminId int) (sort int, err error) {
  59. o := orm.NewOrm()
  60. sql := ` SELECT Max(sort) sort FROM chart_collect_classify WHERE user_id=? `
  61. err = o.Raw(sql, adminId).QueryRow(&sort)
  62. return
  63. }
  64. type ChartCollectClassifyEditReq struct {
  65. CollectClassifyId int `description:"分类ID"`
  66. ClassifyName string `description:"分类名称"`
  67. }
  68. // ChartCollectClassifyMoveReq 移动分类请求参数
  69. type ChartCollectClassifyMoveReq struct {
  70. CollectClassifyId int `description:"分类id"`
  71. PrevCollectClassifyId int `description:"上一个兄弟节点分类id"`
  72. NextCollectClassifyId int `description:"下一个兄弟节点分类id"`
  73. }
  74. func ModifyChartCollectClassify(classifyId int, ClassifyName string) (err error) {
  75. o := orm.NewOrm()
  76. sql := `UPDATE chart_collect_classify SET classify_name=?,modify_time=NOW() WHERE collect_classify_id=?`
  77. _, err = o.Raw(sql, ClassifyName, classifyId).Exec()
  78. return
  79. }
  80. type ChartCollectClassifyDeleteReq struct {
  81. CollectClassifyId int `description:"分类ID"`
  82. }
  83. func DeleteChartCollectClassify(classifyId int) (err error) {
  84. // 新增事务处理
  85. o := orm.NewOrm()
  86. to, err := o.Begin()
  87. if err != nil {
  88. return
  89. }
  90. defer func() {
  91. if err != nil {
  92. _ = to.Rollback()
  93. } else {
  94. _ = to.Commit()
  95. }
  96. }()
  97. sql := `DELETE FROM chart_collect_classify WHERE collect_classify_id=?`
  98. _, err = to.Raw(sql, classifyId).Exec()
  99. if err != nil {
  100. return
  101. }
  102. sql = `DELETE FROM chart_collect WHERE collect_classify_id=?`
  103. _, err = to.Raw(sql, classifyId).Exec()
  104. if err != nil {
  105. return
  106. }
  107. return
  108. }
  109. // ModifyCollectChartClassifyReq 设置图表分类请求参数
  110. type ModifyCollectChartClassifyReq struct {
  111. SelectAll bool
  112. CollectClassifyIds string
  113. SysUserIds string
  114. Keyword string
  115. ChartInfoIds string `description:"图表ID"`
  116. CollectClassifyId int `description:"新图表分类"`
  117. }