pageManage.go 4.3 KB

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