pageManage.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. package controller
  2. import (
  3. "Panel_development/app/e"
  4. "Panel_development/app/model"
  5. "Panel_development/app/service"
  6. "Panel_development/unity"
  7. "github.com/gin-gonic/gin"
  8. "github.com/go-playground/validator/v10"
  9. "strconv"
  10. )
  11. var PageManage service.Page = &model.PageManage{}
  12. // GetPageManage 获取页面管理
  13. func GetPageManage(c *gin.Context) {
  14. var page unity.QueryPageParams
  15. uid := unity.GetUId(c)
  16. // 查询条件:查询name
  17. queryCond := "name like ?"
  18. page.Query = "%" + page.Query + "%"
  19. err := c.ShouldBindJSON(&page)
  20. if err != nil {
  21. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  22. return
  23. }
  24. if uid == 0 {
  25. e.ResponseWithMsg(c, e.ERROR, "用户不存在")
  26. return
  27. } else if uid == 1 {
  28. result, total, err := unity.PaginateWithCondition(page, model.PageManage{}, queryCond)
  29. if err != nil {
  30. e.ResponseWithMsg(c, e.PaginationFailed, e.PaginationFailed.GetMsg())
  31. return
  32. }
  33. e.ResPonsePage(c, result, total, page)
  34. return
  35. }
  36. var manage model.PageManage
  37. manage.UserId = uid
  38. result, total, err := PageManage.GetPageManage(page, manage, queryCond)
  39. if err != nil {
  40. e.ResponseWithMsg(c, e.PaginationFailed, e.PaginationFailed.GetMsg())
  41. return
  42. }
  43. e.ResPonsePage(c, result, total, page)
  44. }
  45. // GetPageManageById 获取页面详情
  46. func GetPageManageById(c *gin.Context) {
  47. uid := unity.GetUId(c)
  48. s := c.Query("id")
  49. validate := validator.New()
  50. err := validate.Var(s, "required,numeric")
  51. if err != nil {
  52. e.ResponseWithMsg(c, e.ERROR, "id不能为空")
  53. return
  54. }
  55. id, _ := strconv.Atoi(s)
  56. if uid == 0 {
  57. e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
  58. return
  59. } else if uid == 1 {
  60. result, err := unity.GetById(id, model.PageManage{})
  61. if err != nil {
  62. e.ResponseWithMsg(c, e.ERROR, err.Error())
  63. return
  64. }
  65. e.ResponseSuccess(c, result)
  66. return
  67. }
  68. byId, err := PageManage.GetPageManageById(uid, id)
  69. if err != nil {
  70. e.ResponseWithMsg(c, e.ERROR, err.Error())
  71. return
  72. }
  73. e.ResponseSuccess(c, byId)
  74. }
  75. // AddPageManage 添加页面管理
  76. func AddPageManage(c *gin.Context) {
  77. var page model.PageManage
  78. if err := c.ShouldBindJSON(&page); err != nil {
  79. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  80. return
  81. }
  82. validate := validator.New()
  83. if err := validate.Struct(page); err != nil {
  84. e.ResponseWithMsg(c, e.ERROR, err.Error())
  85. return
  86. }
  87. id := unity.GetUId(c)
  88. if id == 0 {
  89. e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
  90. return
  91. }
  92. page.UserId = id
  93. page.PanelId = unity.RandomId()
  94. add, err := unity.Add(&page)
  95. if err != nil {
  96. e.ResponseWithMsg(c, e.ERROR, err.Error())
  97. return
  98. }
  99. e.ResponseSuccess(c, add)
  100. }
  101. // UpdatePageManage 更新页面管理
  102. func UpdatePageManage(c *gin.Context) {
  103. uid := unity.GetUId(c)
  104. s := c.Query("id")
  105. validate := validator.New()
  106. err := validate.Var(s, "required,numeric")
  107. if err != nil {
  108. e.ResponseWithMsg(c, e.ERROR, "id不能为空")
  109. return
  110. }
  111. id, _ := strconv.Atoi(s)
  112. var page model.PageManage
  113. if err = c.ShouldBindJSON(&page); err != nil {
  114. e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
  115. return
  116. }
  117. page.ID = uint(id)
  118. page.UserId = uid
  119. v := validator.New()
  120. if err = v.Struct(page); err != nil {
  121. e.ResponseWithMsg(c, e.ERROR, err.Error())
  122. return
  123. }
  124. if uid == 0 {
  125. e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
  126. return
  127. } else if uid == 1 {
  128. page.UserId = 0
  129. _, err = unity.UpdateById(id, &page)
  130. if err != nil {
  131. e.ResponseWithMsg(c, e.UPDATEFAIL, e.UPDATEFAIL.GetMsg())
  132. return
  133. }
  134. e.ResponseSuccess(c, nil)
  135. return
  136. }
  137. err = PageManage.UpdatePageManage(page)
  138. if err != nil {
  139. e.ResponseWithMsg(c, e.UPDATEFAIL, e.UPDATEFAIL.GetMsg())
  140. return
  141. }
  142. e.ResponseSuccess(c, nil)
  143. }
  144. // DeletePageManage 删除页面管理
  145. func DeletePageManage(c *gin.Context) {
  146. uid := unity.GetUId(c)
  147. s := c.Query("id")
  148. validate := validator.New()
  149. err := validate.Var(s, "required,numeric")
  150. if err != nil {
  151. e.ResponseWithMsg(c, e.ERROR, "id不能为空")
  152. return
  153. }
  154. atoi, _ := strconv.Atoi(s)
  155. if uid == 0 {
  156. e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
  157. return
  158. } else if uid == 1 {
  159. _, err = unity.DeleteById(atoi, model.PageManage{})
  160. if err != nil {
  161. e.ResponseWithMsg(c, e.DELETEFAIL, e.DELETEFAIL.GetMsg())
  162. return
  163. } else {
  164. e.ResponseSuccess(c, nil)
  165. return
  166. }
  167. }
  168. err = PageManage.DeletePageManageById(uid, atoi)
  169. if err != nil {
  170. e.ResponseWithMsg(c, e.DELETEFAIL, err.Error())
  171. return
  172. }
  173. e.ResponseSuccess(c, nil)
  174. }