classify.go 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package models
  2. import (
  3. "rdluck_tools/orm"
  4. "time"
  5. )
  6. type Classify struct {
  7. Id int `orm:"column(id);pk"`
  8. ClassifyName string `description:"分类名称"`
  9. Sort int `json:"-"`
  10. ParentId int `description:"父级分类id"`
  11. CreateTime time.Time `description:"创建时间"`
  12. ModifyTime time.Time `description:"修改时间"`
  13. Abstract string `description:"栏目简介"`
  14. Descript string `description:"分享描述"`
  15. ReportAuthor string `description:"栏目作者"`
  16. AuthorDescript string `description:"作者简介"`
  17. ColumnImgUrl string `description:"栏目配图"`
  18. HeadImgUrl string `description:"头部banner"`
  19. AvatarImgUrl string `description:"头像"`
  20. ReportImgUrl string `description:"报告配图"`
  21. }
  22. func GetClassifyById(classifyId int) (item *Classify, err error) {
  23. sql := ` SELECT * FROM classify WHERE id = ? `
  24. o := orm.NewOrm()
  25. o.Using("rddp")
  26. err = o.Raw(sql, classifyId).QueryRow(&item)
  27. return
  28. }
  29. func GetClassifyList() (item []*Classify, err error) {
  30. sql := ` SELECT * FROM classify WHERE parent_id = 0 AND classify_name<>'权益研报' `
  31. o := orm.NewOrm()
  32. o.Using("rddp")
  33. _, err = o.Raw(sql).QueryRows(&item)
  34. return
  35. }
  36. func GetClassifySecondList(classifyId int) (item []*ClassifyDetail, err error) {
  37. sql := ` SELECT a.id AS classify_id,a.classify_name,a.sort,a.parent_id,a.create_time,a.modify_time,a.abstract,a.descript,a.report_author,a.author_descript,a.report_img_url,a.head_img_url,a.avatar_img_url,a.column_img_url,a.is_home_column,MAX(b.stage) AS stage
  38. FROM classify AS a
  39. LEFT JOIN report AS b ON a.id=b.classify_id_second
  40. WHERE a.parent_id = ?
  41. GROUP BY a.id
  42. ORDER BY create_time ASC `
  43. o := orm.NewOrm()
  44. o.Using("rddp")
  45. _, err = o.Raw(sql, classifyId).QueryRows(&item)
  46. return
  47. }
  48. type ClassifyDetail struct {
  49. ClassifyId int `description:"分类id"`
  50. ClassifyName string `description:"分类名称"`
  51. Sort int `json:"-"`
  52. ParentId int `description:"父级分类id"`
  53. CreateTime time.Time `description:"创建时间"`
  54. ModifyTime time.Time `description:"修改时间"`
  55. Abstract string `description:"栏目简介"`
  56. Descript string `description:"分享描述"`
  57. ReportAuthor string `description:"栏目作者"`
  58. AuthorDescript string `description:"作者简介"`
  59. ColumnImgUrl string `description:"栏目配图"`
  60. HeadImgUrl string `description:"头部banner"`
  61. AvatarImgUrl string `description:"头像"`
  62. ReportImgUrl string `description:"报告配图"`
  63. Stage int `description:"最新期数"`
  64. CommentList []*CustomerComment
  65. }
  66. func GetClassifyDetailById(classifyId int) (item *ClassifyDetail, err error) {
  67. sql := ` SELECT id AS classify_id,classify_name,sort,parent_id,create_time,modify_time,abstract,descript,report_author,author_descript,report_img_url,head_img_url,avatar_img_url,column_img_url FROM classify WHERE id = ? `
  68. o := orm.NewOrm()
  69. o.Using("rddp")
  70. err = o.Raw(sql, classifyId).QueryRow(&item)
  71. return
  72. }