ai_predict_model_classify.go 3.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package models
  2. import (
  3. "eta/eta_forum_admin/utils"
  4. "time"
  5. "github.com/beego/beego/v2/client/orm"
  6. )
  7. // AiPredictModelClassify 同花顺高频数据-分类
  8. type AiPredictModelClassify struct {
  9. AiPredictModelClassifyId int `orm:"column(ai_predict_model_classify_id);pk"`
  10. UniqueCode string `description:"唯一编码"`
  11. ClassifyName string `description:"分类名称"`
  12. ClassifyNameEn string `description:"英文分类名称"`
  13. ParentId int `description:"父级ID"`
  14. Level int `description:"层级"`
  15. LevelPath string `description:"层级路径"`
  16. Sort int `description:"排序"`
  17. RootId int `description:"顶级分类ID"`
  18. SysUserId int `description:"创建人ID"`
  19. SysUserRealName string `description:"创建人姓名"`
  20. CreateTime time.Time `description:"创建时间"`
  21. ModifyTime time.Time `description:"修改时间"`
  22. }
  23. // AI预测模型分类项
  24. type AiPredictModelClassifyItems struct {
  25. AiPredictModelClassifyId int `orm:"column(ai_predict_model_classify_id)"`
  26. UniqueCode string `description:"唯一编码"`
  27. ClassifyName string `description:"分类名称"`
  28. ParentId int `description:"父级ID"`
  29. LevelPath string `description:"层级路径"`
  30. Sort int `description:"排序"`
  31. Children []*AiPredictModelClassifyItems
  32. }
  33. // AI预测模型分类列表
  34. type AiPredictModelClassifyItemList []*AiPredictModelClassifyItems
  35. // 实现sort.Interface接口
  36. func (s AiPredictModelClassifyItemList) Len() int { return len(s) }
  37. func (s AiPredictModelClassifyItemList) Swap(i, j int) { s[i], s[j] = s[j], s[i] }
  38. func (s AiPredictModelClassifyItemList) Less(i, j int) bool { return s[i].Sort < s[j].Sort }
  39. // 商家AI预测模型分类响应
  40. type BusinessAiPredictModelClassifyResp struct {
  41. List []*AiPredictModelClassifyItems `description:"分类列表"`
  42. CheckList []int `description:"已选中的分类ID列表"`
  43. }
  44. // 根据关键字获取AI预测模型分类列表
  45. func GetAiPredictModelClassifyListByKeyword(keyword string) (list []*AiPredictModelClassifyItems, err error) {
  46. o := orm.NewOrmUsingDB("data")
  47. sql := `SELECT * FROM ai_predict_model_classify WHERE classify_name LIKE ?`
  48. _, err = o.Raw(sql, "%"+keyword+"%").QueryRows(&list)
  49. return
  50. }
  51. // 根据ID列表获取AI预测模型分类列表
  52. func GetAiPredictModelClassifyItemsByIdList(ids []int) (list []*AiPredictModelClassifyItems, err error) {
  53. if len(ids) == 0 {
  54. return
  55. }
  56. o := orm.NewOrmUsingDB("data")
  57. sql := `SELECT * FROM ai_predict_model_classify WHERE ai_predict_model_classify_id IN (`+utils.GetOrmInReplace(len(ids))+`)`
  58. _, err = o.Raw(sql, ids).QueryRows(&list)
  59. return
  60. }
  61. // 获取所有AI预测模型分类
  62. func GetAiPredictModelClassify() (list []*AiPredictModelClassifyItems, err error) {
  63. o := orm.NewOrmUsingDB("data")
  64. sql := `SELECT * FROM ai_predict_model_classify ORDER BY sort ASC, ai_predict_model_classify_id ASC`
  65. _, err = o.Raw(sql).QueryRows(&list)
  66. return
  67. }