help_doc.go 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. package help_doc
  2. import (
  3. "github.com/beego/beego/v2/client/orm"
  4. "github.com/rdlucklib/rdluck_tools/paging"
  5. "time"
  6. )
  7. type HelpDoc struct {
  8. Id int `orm:"column(id);pk"`
  9. ClassifyId int // 分类id
  10. Title string // 标题
  11. Author string // 作者
  12. CreateTime time.Time // 创建时间
  13. ModifyTime time.Time // 修改时间
  14. Status int // 1:未发布,2:已发布
  15. PublishTime time.Time // 发布时间
  16. Content string // 内容
  17. AdminId int // 创建人
  18. AdminRealName string // 创建人姓名
  19. Anchor string // 锚点
  20. Recommend string // 推荐
  21. }
  22. type HelpDocItem struct {
  23. Id int `orm:"column(id);pk"`
  24. ClassifyId int // 分类id
  25. Title string // 标题
  26. Author string // 作者
  27. CreateTime string // 创建时间
  28. ModifyTime string // 修改时间
  29. Status int // 1:未发布,2:已发布
  30. PublishTime string // 发布时间
  31. Content string // 内容
  32. AdminId int // 创建人
  33. AdminRealName string // 创建人姓名
  34. Anchor string // 锚点
  35. Recommend string // 推荐
  36. }
  37. func EditHelpDocClassifyId(classifyId int, classifyName string) (err error) {
  38. o := orm.NewOrm()
  39. sql := `UPDATE help_doc SET classify_name=?,modify_time=NOW() WHERE classify_id=? `
  40. _, err = o.Raw(sql, classifyId, classifyName).Exec()
  41. return
  42. }
  43. type AddHelpDocReq struct {
  44. Id int64 `description:"文章id"`
  45. ClassifyId int `description:"分类id"`
  46. Title string `description:"标题"`
  47. Author string `description:"作者"`
  48. Status int `description:"状态:1:未发布,2:已发布"`
  49. Content string `description:"内容"`
  50. AnchorData []AnchorList
  51. RecommendData []RecommendList
  52. }
  53. type AnchorList struct {
  54. AnchorId string
  55. Anchor string
  56. Child []AnchorList
  57. }
  58. type RecommendList struct {
  59. Name string
  60. Url string
  61. }
  62. func AddHelpDoc(item *HelpDoc) (lastId int64, err error) {
  63. o := orm.NewOrm()
  64. lastId, err = o.Insert(item)
  65. return
  66. }
  67. type EditHelpDocReq struct {
  68. Id int64 `description:"文章id"`
  69. ClassifyId int `description:"分类id"`
  70. Title string `description:"标题"`
  71. Author string `description:"作者"`
  72. Status int `description:"状态:1:未发布,2:已发布"`
  73. Content string `description:"内容"`
  74. AnchorData []AnchorList
  75. RecommendData []RecommendList
  76. }
  77. func EditHelpDoc(item *HelpDoc, reportId int64) (err error) {
  78. o := orm.NewOrm()
  79. sql := `UPDATE help_doc
  80. SET
  81. classify_id =?,
  82. title = ?,
  83. author = ?,
  84. content = ?,
  85. modify_time = ?,
  86. status = ?,
  87. publish_time = ?,
  88. anchor = ?,
  89. recommend = ?
  90. WHERE id = ? `
  91. _, err = o.Raw(sql, item.ClassifyId, item.Title, item.Author, item.Content, item.ModifyTime,
  92. item.Status, item.PublishTime, item.Anchor, item.Recommend, reportId).Exec()
  93. return
  94. }
  95. func GetHelpDocById(docId int) (item *HelpDocItem, err error) {
  96. o := orm.NewOrm()
  97. sql := `SELECT * FROM help_doc WHERE id=?`
  98. err = o.Raw(sql, docId).QueryRow(&item)
  99. return
  100. }
  101. type HelpDocResp struct {
  102. Id int `orm:"column(id);pk"`
  103. ClassifyId int // 分类id
  104. ClassifyName string // 分类路径
  105. Title string // 标题
  106. Author string // 作者
  107. CreateTime string // 创建时间
  108. ModifyTime string // 修改时间
  109. Status int // 1:未发布,2:已发布
  110. PublishTime string // 发布时间
  111. Content string // 内容
  112. AdminId int // 创建人
  113. AdminRealName string // 创建人姓名
  114. Anchor []AnchorList // 锚点
  115. Recommend []RecommendList // 推荐
  116. }
  117. func GetHelpDocListCount(condition string, pars []interface{}) (count int, err error) {
  118. o := orm.NewOrm()
  119. sql := `SELECT COUNT(1) AS count FROM help_doc WHERE 1=1 `
  120. if condition != "" {
  121. sql += condition
  122. }
  123. err = o.Raw(sql, pars).QueryRow(&count)
  124. return
  125. }
  126. func GetHelpDocList(condition string, pars []interface{}, startSize, pageSize int) (items []*HelpDocItem, err error) {
  127. o := orm.NewOrm()
  128. sql := `SELECT * FROM help_doc WHERE 1=1 `
  129. if condition != "" {
  130. sql += condition
  131. }
  132. sql += `ORDER BY create_time DESC LIMIT ?,?`
  133. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  134. return
  135. }
  136. type HelpDocListResp struct {
  137. List []*HelpDocResp
  138. ClassifyName string
  139. Paging *paging.PagingItem `description:"分页数据"`
  140. }
  141. type PublishReq struct {
  142. DocId int
  143. Status int `description:"状态:1:未发布,2:已发布"`
  144. }
  145. // 发布报告
  146. func PublishHelpDocById(reportId, status int) (err error) {
  147. o := orm.NewOrm()
  148. sql := ``
  149. if status == 1 {
  150. sql = `UPDATE help_doc SET status=1,publish_time=NULL,modify_time=NOW() WHERE id = ? `
  151. } else {
  152. sql = `UPDATE help_doc SET status=2,publish_time=now(),modify_time=NOW() WHERE id = ? `
  153. }
  154. _, err = o.Raw(sql, reportId).Exec()
  155. return
  156. }
  157. type DeleteReq struct {
  158. DocId int `description:"id"`
  159. }
  160. func DeleteHelpDoc(reportIds int) (err error) {
  161. o := orm.NewOrm()
  162. sql := ` DELETE FROM help_doc WHERE id =? `
  163. _, err = o.Raw(sql, reportIds).Exec()
  164. return
  165. }