tactics.go 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. package models
  2. import (
  3. "rdluck_tools/orm"
  4. "rdluck_tools/paging"
  5. "time"
  6. )
  7. type Tactics struct {
  8. ArticleId int `description:"文章id"`
  9. Title string `description:"标题"`
  10. TitleEn string `description:"英文标题"`
  11. UpdateFrequency string `description:"更新周期"`
  12. PublishDate time.Time `description:"发布时间"`
  13. PublishStatus int `description:"发布状态"`
  14. Department string `description:"作者"`
  15. Body string `description:"内容"`
  16. Abstract string `description:"摘要"`
  17. Annotation string `description:"注解"`
  18. CategoryName string `description:"分类"`
  19. SubCategoryName string `description:"子级分类"`
  20. CategoryId int `description:"分类id"`
  21. CreateDate string `description:"创建日期"`
  22. }
  23. func GetTacticsList(endDate string) (list []*Tactics, err error) {
  24. o := orm.NewOrm()
  25. o.Using("tactics")
  26. sql := `SELECT a.*,b.body,b.abstract,b.annotation,b.article_id,d.category_name,d.sub_category_name,c.category_id
  27. FROM article_articleinfo AS a
  28. INNER JOIN article_content AS b ON a.id=b.article_id
  29. INNER JOIN article_category AS c ON a.id=c.article_id
  30. INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
  31. WHERE a.publish_status=1 AND a.publish_date>=? AND d.id IN (28,32,45,50,57,62,72,74,79,84,86,88,90,95,96)
  32. AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
  33. _, err = o.Raw(sql, endDate).QueryRows(&list)
  34. return
  35. }
  36. func GetTacticsListAll() (list []*Tactics, err error) {
  37. o := orm.NewOrm()
  38. o.Using("tactics")
  39. sql := `SELECT a.*,b.body,b.abstract,b.annotation,b.article_id,d.category_name,d.sub_category_name,c.category_id
  40. FROM article_articleinfo AS a
  41. INNER JOIN article_content AS b ON a.id=b.article_id
  42. INNER JOIN article_category AS c ON a.id=c.article_id
  43. INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
  44. WHERE a.publish_status=1 AND d.id IN (28,32,45,50,57,62,72,74,79,84,86,88,90,96)
  45. AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
  46. //IN(85,71)
  47. _, err = o.Raw(sql).QueryRows(&list)
  48. return
  49. }
  50. func GetCygxArticleListAll() (list []*Tactics, err error) {
  51. o := orm.NewOrm()
  52. sql := `SELECT * FROM cygx_article `
  53. _, err = o.Raw(sql).QueryRows(&list)
  54. return
  55. }
  56. type Tactics2 struct {
  57. ArticleId int `description:"文章id"`
  58. Title string `description:"标题"`
  59. TitleEn string `description:"英文标题"`
  60. UpdateFrequency string `description:"更新周期"`
  61. PublishDate time.Time `description:"发布时间"`
  62. PublishStatus int `description:"发布状态"`
  63. Department string `description:"作者"`
  64. Body string `description:"内容"`
  65. Abstract string `description:"摘要"`
  66. Annotation string `description:"注解"`
  67. CategoryName string `description:"分类"`
  68. SubCategoryName string `description:"子级分类"`
  69. CategoryId int `description:"分类id"`
  70. CreateDate string `description:"创建日期"`
  71. IsClass int `description:"是否归类,1是,0否"`
  72. IsSummary int `description:"是否是纪要库,1是,0否"`
  73. IsReport int `description:"是否属于报告,1是,0否"`
  74. ReportType int `description:"报告类型,1行业报告,2产业报告,0无"`
  75. }
  76. func GetTacticsList2(endDate string) (list []*Tactics2, err error) {
  77. o := orm.NewOrm()
  78. o.Using("tactics")
  79. sql := `SELECT a.*,b.body,b.abstract,b.annotation,b.article_id,d.category_name,d.sub_category_name,c.category_id
  80. FROM article_articleinfo AS a
  81. INNER JOIN article_content AS b ON a.id=b.article_id
  82. INNER JOIN article_category AS c ON a.id=c.article_id
  83. INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
  84. WHERE a.publish_status=1 AND a.publish_date>=? AND d.id IN (7,11,28,32,45,47,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,95)
  85. AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
  86. //IN(85,71)
  87. _, err = o.Raw(sql, endDate).QueryRows(&list)
  88. return
  89. }
  90. func GetTacticsListAll2() (list []*Tactics2, err error) {
  91. o := orm.NewOrm()
  92. o.Using("tactics")
  93. sql := `SELECT a.*,b.body,b.abstract,b.annotation,b.article_id,d.category_name,d.sub_category_name,c.category_id
  94. FROM article_articleinfo AS a
  95. INNER JOIN article_content AS b ON a.id=b.article_id
  96. INNER JOIN article_category AS c ON a.id=c.article_id
  97. INNER JOIN article_categoryinfo AS d ON c.category_id=d.id
  98. WHERE a.publish_status=1 AND d.id IN (7,11,28,32,45,47,50,51,52,57,62,64,65,66,67,69,71,74,79,80,84,85,86,87,88,89,90,95)
  99. AND a.id NOT IN (3454,3456,3457,3459,2449,2450,2453,2454,2459,2530,2583,2663,2670,2699,2715,2732,2748,2759,2399,2356,2870,3173,2978,2826,3470) `
  100. //IN(85,71)
  101. _, err = o.Raw(sql).QueryRows(&list)
  102. return
  103. }
  104. type TacticsListResp struct {
  105. Paging *paging.PagingItem
  106. List []*ReportArticle
  107. }
  108. func GetReportTacticsList(condition string, pars []interface{}, startSize, pageSize int) (items []*ReportArticle, err error) {
  109. o := orm.NewOrm()
  110. sql := ` SELECT *
  111. FROM cygx_article AS a
  112. WHERE a.publish_status=1 `
  113. if condition != "" {
  114. sql += condition
  115. }
  116. sql += ` ORDER BY publish_date DESC LIMIT ?,? `
  117. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  118. return
  119. }