help_doc.go 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192
  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. AnchorName string
  57. Child []AnchorList
  58. }
  59. type RecommendList struct {
  60. Name string
  61. Url string
  62. }
  63. func AddHelpDoc(item *HelpDoc) (lastId int64, err error) {
  64. o := orm.NewOrm()
  65. lastId, err = o.Insert(item)
  66. return
  67. }
  68. type EditHelpDocReq struct {
  69. Id int64 `description:"文章id"`
  70. ClassifyId int `description:"分类id"`
  71. Title string `description:"标题"`
  72. Author string `description:"作者"`
  73. Status int `description:"状态:1:未发布,2:已发布"`
  74. Content string `description:"内容"`
  75. AnchorData []AnchorList
  76. RecommendData []RecommendList
  77. }
  78. func EditHelpDoc(item *HelpDoc, reportId int64) (err error) {
  79. o := orm.NewOrm()
  80. sql := `UPDATE help_doc
  81. SET
  82. classify_id =?,
  83. title = ?,
  84. author = ?,
  85. content = ?,
  86. modify_time = ?,
  87. status = ?,
  88. publish_time = ?,
  89. anchor = ?,
  90. recommend = ?
  91. WHERE id = ? `
  92. _, err = o.Raw(sql, item.ClassifyId, item.Title, item.Author, item.Content, item.ModifyTime,
  93. item.Status, item.PublishTime, item.Anchor, item.Recommend, reportId).Exec()
  94. return
  95. }
  96. func GetHelpDocById(docId int) (item *HelpDocItem, err error) {
  97. o := orm.NewOrm()
  98. sql := `SELECT * FROM help_doc WHERE id=?`
  99. err = o.Raw(sql, docId).QueryRow(&item)
  100. return
  101. }
  102. type HelpDocResp struct {
  103. Id int `orm:"column(id);pk"`
  104. ClassifyId int // 分类id
  105. ClassifyName string // 分类路径
  106. Title string // 标题
  107. Author string // 作者
  108. CreateTime string // 创建时间
  109. ModifyTime string // 修改时间
  110. Status int // 1:未发布,2:已发布
  111. PublishTime string // 发布时间
  112. Content string // 内容
  113. AdminId int // 创建人
  114. AdminRealName string // 创建人姓名
  115. Anchor []AnchorList // 锚点
  116. Recommend []RecommendList // 推荐
  117. }
  118. func GetHelpDocListCount(condition string, pars []interface{}) (count int, err error) {
  119. o := orm.NewOrm()
  120. sql := `SELECT COUNT(1) AS count FROM help_doc WHERE 1=1 `
  121. if condition != "" {
  122. sql += condition
  123. }
  124. err = o.Raw(sql, pars).QueryRow(&count)
  125. return
  126. }
  127. func GetHelpDocList(condition string, pars []interface{}, startSize, pageSize int) (items []*HelpDocItem, err error) {
  128. o := orm.NewOrm()
  129. sql := `SELECT * FROM help_doc WHERE 1=1 `
  130. if condition != "" {
  131. sql += condition
  132. }
  133. sql += `ORDER BY create_time DESC LIMIT ?,?`
  134. _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
  135. return
  136. }
  137. type HelpDocListResp struct {
  138. List []*HelpDocResp
  139. ClassifyName string
  140. Paging *paging.PagingItem `description:"分页数据"`
  141. }
  142. type PublishReq struct {
  143. DocId int
  144. Status int `description:"状态:1:未发布,2:已发布"`
  145. }
  146. // 发布报告
  147. func PublishHelpDocById(reportId, status int) (err error) {
  148. o := orm.NewOrm()
  149. sql := ``
  150. if status == 1 {
  151. sql = `UPDATE help_doc SET status=1,publish_time=NULL,modify_time=NOW() WHERE id = ? `
  152. } else {
  153. sql = `UPDATE help_doc SET status=2,publish_time=now(),modify_time=NOW() WHERE id = ? `
  154. }
  155. _, err = o.Raw(sql, reportId).Exec()
  156. return
  157. }
  158. type DeleteReq struct {
  159. DocId int `description:"id"`
  160. }
  161. func DeleteHelpDoc(reportIds int) (err error) {
  162. o := orm.NewOrm()
  163. sql := ` DELETE FROM help_doc WHERE id =? `
  164. _, err = o.Raw(sql, reportIds).Exec()
  165. return
  166. }
  167. func GetAllHelpDoc() (items []*HelpDocItem, err error) {
  168. o := orm.NewOrm()
  169. sql := `SELECT * FROM help_doc `
  170. _, err = o.Raw(sql).QueryRows(&items)
  171. return
  172. }