131 lines
4.4 KiB
Go
131 lines
4.4 KiB
Go
package userctrl
|
|
|
|
import (
|
|
"91porn-server/common"
|
|
"91porn-server/common/stderr"
|
|
"91porn-server/models/v/userrecomod"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
)
|
|
|
|
// GetUserRecoList doc
|
|
// @Summary 获取用户推荐列表
|
|
// @Description 获取用户推荐列表
|
|
// @Tags web-用户管理
|
|
// @Accept mpfd,json
|
|
// @Produce json,html
|
|
// @Param pageNumber formData integer true "查询页码"
|
|
// @Param pageSize formData integer true "页码大小"
|
|
// @Success 200 {string} json "{"msg": "操作成功"}"
|
|
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
|
// @Router /web/user/reco/list [get]
|
|
func GetUserRecoList(ctx *gin.Context) {
|
|
if _, err := common.GetAdminAct(ctx); err != nil {
|
|
common.ServeJSON(ctx, stderr.AdminIDErr, err.Error())
|
|
return
|
|
}
|
|
req := userrecomod.RecoListReq{}
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
infos, total, err := userrecomod.GetUserReco(req.PageNumber, req.PageSize, true)
|
|
if err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrDbQueryError, "")
|
|
return
|
|
}
|
|
common.ServeJSON(ctx, stderr.Success, userrecomod.RecoListResp{Infos: infos, Total: total})
|
|
}
|
|
|
|
// ModifyUserReco doc
|
|
// @Summary 修改用户推荐列表
|
|
// @Description 修改用户推荐列表
|
|
// @Tags web-用户管理
|
|
// @Accept mpfd,json
|
|
// @Produce json,html
|
|
// @Param pageNumber formData integer true "查询页码"
|
|
// @Param pageSize formData integer true "页码大小"
|
|
// @Success 200 {string} json "{"msg": "操作成功"}"
|
|
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
|
// @Router /web/user/reco/modify [post]
|
|
func ModifyUserReco(ctx *gin.Context) {
|
|
if _, err := common.GetAdminAct(ctx); err != nil {
|
|
common.ServeJSON(ctx, stderr.AdminIDErr, err.Error())
|
|
return
|
|
}
|
|
req := userrecomod.RecoModifyReq{}
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
oid, err := primitive.ObjectIDFromHex(req.ID)
|
|
if err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
_ = userrecomod.ModifyUserReco(oid, req.UID, req.SortKey, req.Active)
|
|
common.ServeJSON(ctx, stderr.Success, nil)
|
|
}
|
|
|
|
// AddUserReco doc
|
|
// @Summary 添加用户推荐列表
|
|
// @Description 添加用户推荐列表
|
|
// @Tags web-用户管理
|
|
// @Accept mpfd,json
|
|
// @Produce json,html
|
|
// @Param pageNumber formData integer true "查询页码"
|
|
// @Param pageSize formData integer true "页码大小"
|
|
// @Success 200 {string} json "{"msg": "操作成功"}"
|
|
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
|
// @Router /web/user/reco/add [post]
|
|
func AddUserReco(ctx *gin.Context) {
|
|
if _, err := common.GetAdminAct(ctx); err != nil {
|
|
common.ServeJSON(ctx, stderr.AdminIDErr, err.Error())
|
|
return
|
|
}
|
|
req := userrecomod.RecoAddReq{}
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
if err := userrecomod.AddUserReco(req.UID, req.SortKey, req.Active); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrDbInsertError, "")
|
|
return
|
|
}
|
|
common.ServeJSON(ctx, stderr.Success, nil)
|
|
}
|
|
|
|
// DelUserReco doc
|
|
// @Summary 删除用户推荐列表
|
|
// @Description 删除用户推荐列表
|
|
// @Tags web-用户管理
|
|
// @Accept mpfd,json
|
|
// @Produce json,html
|
|
// @Param pageNumber formData integer true "查询页码"
|
|
// @Param pageSize formData integer true "页码大小"
|
|
// @Success 200 {string} json "{"msg": "操作成功"}"
|
|
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
|
// @Router /web/user/reco/del [post]
|
|
func DelUserReco(ctx *gin.Context) {
|
|
if _, err := common.GetAdminAct(ctx); err != nil {
|
|
common.ServeJSON(ctx, stderr.AdminIDErr, err.Error())
|
|
return
|
|
}
|
|
req := userrecomod.RecoDelReq{}
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
oid, err := primitive.ObjectIDFromHex(req.ID)
|
|
if err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
|
return
|
|
}
|
|
if err = userrecomod.RemoveUserReco(oid); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrDbDeleteError, "")
|
|
return
|
|
}
|
|
common.ServeJSON(ctx, stderr.Success, nil)
|
|
}
|