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) }