|
@@ -0,0 +1,146 @@
|
|
|
+package controller
|
|
|
+
|
|
|
+import (
|
|
|
+ "Panel_development/app/e"
|
|
|
+ "Panel_development/app/model"
|
|
|
+ "Panel_development/app/service"
|
|
|
+ "Panel_development/unity"
|
|
|
+ "github.com/gin-gonic/gin"
|
|
|
+ "github.com/go-playground/validator/v10"
|
|
|
+ "strconv"
|
|
|
+)
|
|
|
+
|
|
|
+var PageManage service.Page = &model.PageManage{}
|
|
|
+
|
|
|
+// GetPageManage 获取页面管理
|
|
|
+func GetPageManage(c *gin.Context) {
|
|
|
+ var page unity.QueryPageParams
|
|
|
+ uid := unity.GetUId(c)
|
|
|
+ err := c.ShouldBindJSON(&page)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if uid == 0 {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, "用户不存在")
|
|
|
+ return
|
|
|
+ } else if uid == 1 {
|
|
|
+ result, total, err := unity.PaginateWithCondition(page, model.PageManage{}, nil)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.PaginationFailed, e.PaginationFailed.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResPonsePage(c, result, total, page)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var manage model.PageManage
|
|
|
+ manage.UserId = uid
|
|
|
+ result, total, err := PageManage.GetPageManage(page, manage, nil)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.PaginationFailed, e.PaginationFailed.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResPonsePage(c, result, total, page)
|
|
|
+}
|
|
|
+
|
|
|
+// AddPageManage 添加页面管理
|
|
|
+func AddPageManage(c *gin.Context) {
|
|
|
+ var page model.PageManage
|
|
|
+ if err := c.ShouldBindJSON(&page); err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ validate := validator.New()
|
|
|
+ if err := validate.Struct(page); err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ id := unity.GetUId(c)
|
|
|
+ if id == 0 {
|
|
|
+ e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ page.UserId = id
|
|
|
+ page.PanelId = unity.RandomId()
|
|
|
+ add, err := unity.Add(&page)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResponseSuccess(c, add)
|
|
|
+}
|
|
|
+
|
|
|
+// UpdatePageManage 更新页面管理
|
|
|
+func UpdatePageManage(c *gin.Context) {
|
|
|
+ uid := unity.GetUId(c)
|
|
|
+ s := c.Query("id")
|
|
|
+ validate := validator.New()
|
|
|
+ err := validate.Var(s, "required,numeric")
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, "id不能为空")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ id, _ := strconv.Atoi(s)
|
|
|
+ var page model.PageManage
|
|
|
+ if err = c.ShouldBindJSON(&page); err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.JSONParsingFailed, e.JSONParsingFailed.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ page.ID = uint(id)
|
|
|
+ page.UserId = uid
|
|
|
+ v := validator.New()
|
|
|
+ if err = v.Struct(page); err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if uid == 0 {
|
|
|
+ e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
|
|
|
+ return
|
|
|
+ } else if uid == 1 {
|
|
|
+ _, err = unity.UpdateById(id, &page)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.UPDATEFAIL, e.UPDATEFAIL.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResponseSuccess(c, nil)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ err = PageManage.UpdatePageManage(page)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.UPDATEFAIL, e.UPDATEFAIL.GetMsg())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResponseSuccess(c, nil)
|
|
|
+}
|
|
|
+
|
|
|
+// DeletePageManage 删除页面管理
|
|
|
+func DeletePageManage(c *gin.Context) {
|
|
|
+ uid := unity.GetUId(c)
|
|
|
+ s := c.Query("id")
|
|
|
+ validate := validator.New()
|
|
|
+ err := validate.Var(s, "required,numeric")
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.ERROR, "id不能为空")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ atoi, _ := strconv.Atoi(s)
|
|
|
+ if uid == 0 {
|
|
|
+ e.ResponseWithMsg(c, e.TheUserIsEmpty, e.TheUserIsEmpty.GetMsg())
|
|
|
+ return
|
|
|
+ } else if uid == 1 {
|
|
|
+ _, err = unity.DeleteById(atoi, model.PageManage{})
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.DELETEFAIL, e.DELETEFAIL.GetMsg())
|
|
|
+ return
|
|
|
+ } else {
|
|
|
+ e.ResponseSuccess(c, nil)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ err = PageManage.DeletePageManageById(uid, atoi)
|
|
|
+ if err != nil {
|
|
|
+ e.ResponseWithMsg(c, e.DELETEFAIL, err.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ e.ResponseSuccess(c, nil)
|
|
|
+}
|