report_mapping.go 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. package models
  2. import (
  3. "rdluck_tools/orm"
  4. )
  5. type ReportMapping struct {
  6. CategoryId int `description:"分类ID"`
  7. SubCategoryName string `description:"主题"`
  8. MathTypeName string `description:"分类名称"`
  9. IsRed bool `description:"是否标红"`
  10. }
  11. type ReportMappingHome struct {
  12. CategoryId int `description:"分类ID"`
  13. SubCategoryName string `description:"主题名称"`
  14. MatchTypeName string `description:"匹配类型"`
  15. IsRed bool `description:"是否标红"`
  16. }
  17. type TradeReportMapping struct {
  18. CategoryId int `description:"分类ID"`
  19. SubCategoryName string `description:"主题名称"`
  20. MatchTypeName string `description:"匹配类型"`
  21. IsRed bool `description:"是否标红"`
  22. UpdateTime string `description:"更新时间"`
  23. Readnum int `description:"阅读数量"`
  24. }
  25. type ReportMappingResp struct {
  26. List []*ReportMapping
  27. }
  28. type ReportMappingHomeResp struct {
  29. List []*ReportMappingHome
  30. }
  31. type TradeReportMappingResp struct {
  32. List []*TradeReportMapping
  33. }
  34. //获取策略下面的所有分类
  35. func GetReportMappingStrategyAll() (items []*ReportMapping, err error) {
  36. o := orm.NewOrm()
  37. sql := `SELECT * FROM cygx_report_mapping WHERE report_type=1 AND chart_permission_id=23 ORDER BY sort ASC `
  38. _, err = o.Raw(sql).QueryRows(&items)
  39. return
  40. }
  41. //获取策略下面的所有分类
  42. func GetReportMappingStrategyHomeAll() (items []*ReportMappingHome, err error) {
  43. o := orm.NewOrm()
  44. sql := `SELECT
  45. re.category_id,re.sub_category_name,re.match_type_name
  46. FROM
  47. cygx_report_mapping AS re
  48. INNER JOIN cygx_article AS art ON art.category_id = re.category_id
  49. WHERE
  50. re.report_type = 1
  51. AND re.chart_permission_id = 23
  52. GROUP BY
  53. re.match_type_name
  54. ORDER BY
  55. sort DESC , art.publish_date DESC`
  56. _, err = o.Raw(sql).QueryRows(&items)
  57. return
  58. }
  59. //行业列表
  60. func GetTradeAll(uid, ChartPermissionId int) (items []*TradeReportMapping, err error) {
  61. o := orm.NewOrm()
  62. //sql := `SELECT * FROM cygx_report_mapping WHERE chart_permission_id = ? AND report_type = 1;`
  63. sql := `SELECT
  64. art.article_id,art.publish_date as update_time ,re.category_id,re.sub_category_name,( SELECT COUNT( 1 ) FROM cygx_article_history_record AS rec WHERE rec.user_id = ? AND rec.article_id = art.article_id ) AS readnum
  65. FROM
  66. cygx_report_mapping as re
  67. INNER JOIN cygx_article as art ON re.category_id = art.category_id
  68. WHERE
  69. re.chart_permission_id = ?
  70. AND re.report_type = 1
  71. ORDER BY art.publish_date DESC
  72. LIMIT 0,1`
  73. _, err = o.Raw(sql, uid, ChartPermissionId).QueryRows(&items)
  74. return
  75. }
  76. type IndustrialToArticleCategoryRep struct {
  77. CategoryId int `description:"分类ID"`
  78. MatchTypeName string `description:"匹配类型"`
  79. IsRed bool `description:"是否标红"`
  80. }
  81. type IndustrialToArticleCategoryListRep struct {
  82. LayoutTime string `description:"布局时间"`
  83. IndustryName string `description:"产业名称"`
  84. IndustrialManagementId int `description:"产业D"`
  85. List []*IndustrialToArticleCategoryRep
  86. }