article.go 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. package models
  2. import (
  3. "rdluck_tools/orm"
  4. )
  5. type CygxArticle struct {
  6. Id int `orm:"column(id);pk"`
  7. ArticleId int `description:"文章id"`
  8. Title string `description:"标题"`
  9. TitleEn string `description:"英文标题 "`
  10. UpdateFrequency string `description:"更新周期"`
  11. CreateDate string `description:"创建时间"`
  12. PublishDate string `description:"发布时间"`
  13. Body string `description:"内容"`
  14. Abstract string `description:"摘要"`
  15. CategoryName string `description:"一级分类"`
  16. SubCategoryName string `description:"二级分类"`
  17. PublishStatus int `description:"发布状态"`
  18. CategoryId int `description:"分类id"`
  19. ExpertBackground string `description:"专家背景"`
  20. ExpertNumber string `description:"专家编号"`
  21. InterviewDate string `description:"访谈日期"`
  22. Department string `description:"作者"`
  23. ArticleIdMd5 string `description:"ID,md5值"`
  24. }
  25. //新增文章
  26. func AddCygxArticle(item *CygxArticle) (lastId int64, err error) {
  27. o := orm.NewOrm()
  28. lastId, err = o.Insert(item)
  29. return
  30. }
  31. type HomeArticle struct {
  32. ArticleId int `description:"文章id"`
  33. Title string `description:"标题"`
  34. TitleEn string `description:"英文标题 "`
  35. UpdateFrequency string `description:"更新周期"`
  36. CreateDate string `description:"创建时间"`
  37. PublishDate string `description:"发布时间"`
  38. Body string `description:"内容"`
  39. Abstract string `description:"摘要"`
  40. CategoryName string `description:"一级分类"`
  41. SubCategoryName string `description:"二级分类"`
  42. ExpertBackground string `description:"专家背景"`
  43. }
  44. type ArticleDetail struct {
  45. ArticleId int `description:"报告id"`
  46. Title string `description:"标题"`
  47. TitleEn string `description:"英文标题 "`
  48. UpdateFrequency string `description:"更新周期"`
  49. CreateDate string `description:"创建时间"`
  50. PublishDate string `description:"发布时间"`
  51. Body string `description:"内容"`
  52. Abstract string `description:"摘要"`
  53. CategoryName string `description:"一级分类"`
  54. SubCategoryName string `description:"二级分类"`
  55. IsCollect bool `description:"是否收藏:true,已收藏,false:未收藏"`
  56. IsInterviewApply bool `description:"是否申请访谈:true,已申请,false:未申请"`
  57. BodyText string `description:"内容"`
  58. InterviewApplyStatus string `description:"当前访谈申请状态:'待邀请','待访谈','已完成','已取消'"`
  59. InterviewDate string `description:"访谈时间"`
  60. ExpertBackground string `description:"专家背景"`
  61. ExpertNumber string `description:"专家编号"`
  62. Department string `description:"作者"`
  63. SellerMobile string `description:"销售手机号"`
  64. SellerName string `description:"销售名称"`
  65. ArticleIdMd5 string `description:"纪要id"`
  66. }
  67. func GetArticleDetailById(articleId int) (item *ArticleDetail, err error) {
  68. o := orm.NewOrm()
  69. sql := `SELECT * FROM cygx_article WHERE article_id = ? `
  70. err = o.Raw(sql, articleId).QueryRow(&item)
  71. return
  72. }
  73. func GetArticleDetailByIdMd5(articleIdMd5 string) (item *ArticleDetail, err error) {
  74. o := orm.NewOrm()
  75. sql := `SELECT * FROM cygx_article WHERE article_id_md5 = ? `
  76. err = o.Raw(sql, articleIdMd5).QueryRow(&item)
  77. return
  78. }
  79. func GetArticleDetailByIdStr(articleIdStr string) (items []*ArticleDetail, err error) {
  80. o := orm.NewOrm()
  81. sql := `SELECT * FROM cygx_article WHERE article_id IN(` + articleIdStr + `) `
  82. _, err = o.Raw(sql).QueryRows(&items)
  83. return
  84. }
  85. func GetArticlePermission(categoryName string) (item *ChartPermission, err error) {
  86. o := orm.NewOrm()
  87. sql := ` SELECT b.* FROM cygx_permission_mapping AS a
  88. INNER JOIN chart_permission AS b ON a.chart_permission_id=b.chart_permission_id
  89. WHERE a.sub_category_name=? `
  90. err = o.Raw(sql, categoryName).QueryRow(&item)
  91. return
  92. }
  93. type ArticleDetailResp struct {
  94. Detail *ArticleDetail
  95. HasPermission int `description:"1:有该行业权限,正常展示,2:无该行业权限,不存在权益客户下,3:无该品类权限,已提交过申请,4:无该行业权限,未提交过申请,5:潜在客户,未提交过申请,6:潜在客户,已提交过申请"`
  96. HasFree int `description:"1:已付费(至少包含一个品类的权限),2:未付费(没有任何品类权限)"`
  97. }
  98. func ModifyArticleExpert(articleId int, expertNumStr, expertContentStr, interviewDateStr string) (err error) {
  99. o := orm.NewOrm()
  100. sql := `UPDATE cygx_article SET expert_background=?,expert_number=?,interview_date=? WHERE article_id=? `
  101. _, err = o.Raw(sql, expertContentStr, expertNumStr, interviewDateStr, articleId).Exec()
  102. return
  103. }
  104. type ArticleDetailTest struct {
  105. ArticleId int `description:"报告id"`
  106. Title string `description:"标题"`
  107. BodyText string `description:"内容"`
  108. Body string `json:"-" description:"内容"`
  109. }
  110. func GetArticleDetailTestById(articleId int) (item *ArticleDetailTest, err error) {
  111. o := orm.NewOrm()
  112. sql := `SELECT * FROM cygx_article WHERE article_id = ? `
  113. err = o.Raw(sql, articleId).QueryRow(&item)
  114. return
  115. }
  116. func GetArticleAll() (item []*ArticleDetail, err error) {
  117. o := orm.NewOrm()
  118. sql := `SELECT * FROM cygx_article `
  119. _, err = o.Raw(sql).QueryRows(&item)
  120. return
  121. }
  122. func ModifyArticleContent(articleId int, content, expertNumStr, expertContentStr, interviewDateStr string) (err error) {
  123. o := orm.NewOrm()
  124. sql := `UPDATE cygx_article SET body=?,expert_background=?,expert_number=?,interview_date=? WHERE article_id=? `
  125. _, err = o.Raw(sql, content, expertContentStr, expertNumStr, interviewDateStr, articleId).Exec()
  126. return
  127. }