@@ -0,0 +1,209 @@
|
||||
package minectrl
|
||||
|
||||
import (
|
||||
"91porn-server/app/service/collectser"
|
||||
"91porn-server/app/service/mineser"
|
||||
"91porn-server/common"
|
||||
"91porn-server/common/log"
|
||||
"91porn-server/common/stderr"
|
||||
"91porn-server/models/commod"
|
||||
"91porn-server/models/v/collectmod"
|
||||
"91porn-server/models/v/followmod"
|
||||
"91porn-server/models/v/userResourcemod"
|
||||
"fmt"
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
// Follow doc
|
||||
// @Summary 关注或者取消关注
|
||||
// @Description 关注或者取消关注
|
||||
// @Tags 关注
|
||||
// @Accept mpfd,json
|
||||
// @Produce json,html
|
||||
// @Param followUID formData number true "关注的用户uid"
|
||||
// @Param isShort formData bool true "是否是短视频用户"
|
||||
// @Param isFollow formData bool true "true则是关注,false则是取消关注"
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /api/mine/follow [post]
|
||||
func Follow(ctx *gin.Context) {
|
||||
uid, err := common.GetUID(ctx)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrNoToken, nil)
|
||||
return
|
||||
}
|
||||
param := followmod.UserFollowReq{}
|
||||
err = ctx.ShouldBind(¶m)
|
||||
if err != nil {
|
||||
log.Error(fmt.Sprintf("mine follow param error:%v,uid:%v", err, uid))
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
||||
return
|
||||
}
|
||||
if param.FollowUID <= 0 {
|
||||
log.Error(fmt.Sprintf("mine follow param followUid err param:%+v,uid:%v", param, uid))
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, nil)
|
||||
return
|
||||
}
|
||||
code, data := mineser.Follow(uid, param.FollowUID, param.IsFollow, param.IsShort)
|
||||
if code != stderr.Success {
|
||||
log.Error(fmt.Sprintf("mine follow mineser Follow err:%+v,uid:%v", data, uid))
|
||||
}
|
||||
common.ServeJSON(ctx, code, data)
|
||||
}
|
||||
|
||||
// UserDownload doc
|
||||
// @Summary 使用下载次数
|
||||
// @Description 使用下载次数
|
||||
// @Tags 我的
|
||||
// @Accept mpfd,json
|
||||
// @Produce json,html
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /app/mine/download/use [post]
|
||||
func UserDownload(ctx *gin.Context) {
|
||||
uid, err := common.GetUID(ctx)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrNoToken, nil)
|
||||
return
|
||||
}
|
||||
|
||||
code, data := mineser.UseDownloadCount(uid)
|
||||
if code != stderr.Success {
|
||||
common.ServeJSON(ctx, code, data)
|
||||
return
|
||||
}
|
||||
common.ServeJSON(ctx, stderr.Success, stderr.Success.Msg())
|
||||
}
|
||||
|
||||
// Collect doc
|
||||
// @Summary 用户模块 - 用户收藏信息
|
||||
// @Description 保存用户一条收藏信息
|
||||
// @Tags mine
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param q body collectmod.DoCollectReqInfo true "参数"
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /app/mine/collect [post]
|
||||
func Collect(ctx *gin.Context) {
|
||||
uid, err := common.GetUID(ctx)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrNoToken, err)
|
||||
return
|
||||
}
|
||||
param := collectmod.DoCollectReqInfo{}
|
||||
err = ctx.ShouldBind(¶m)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, err)
|
||||
return
|
||||
}
|
||||
ua, _ := common.GetUA(ctx)
|
||||
ip := common.GetIP(ctx)
|
||||
code, err := collectser.DoCollect(uid, param.Type, param.ObjID, param.IsCollect, ua, ip)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, code, err)
|
||||
return
|
||||
}
|
||||
common.ServeJSON(ctx, code, nil)
|
||||
}
|
||||
|
||||
// BatchCancelCollect doc
|
||||
// @Summary 用户模块 - 批量取消收藏
|
||||
// @Description 用户模块 - 批量取消收藏
|
||||
// @Tags mine
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param objIds formData []string true "数组-收藏对象ID合集"
|
||||
// @Param type formData string true "收藏类型 SP-长视频 SHORT-短视频 COVER-图文帖子 PIC-图集帖子 SEED_LINK-种子/黄油帖子"
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /app/mine/collect/batch/cancel [post]
|
||||
func BatchCancelCollect(ctx *gin.Context) {
|
||||
uid, err := common.GetUID(ctx)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrNoToken, err)
|
||||
return
|
||||
}
|
||||
param := collectmod.DoBatchCancelCollectReq{}
|
||||
err = ctx.ShouldBind(¶m)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, err)
|
||||
return
|
||||
}
|
||||
ua, _ := common.GetUA(ctx)
|
||||
ip := common.GetIP(ctx)
|
||||
code, err := collectser.DoBatchCancelCollect(uid, param.Type, param.ObjIDs, ua, ip)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, code, err)
|
||||
return
|
||||
}
|
||||
common.ServeJSON(ctx, code, nil)
|
||||
}
|
||||
|
||||
// InfoList doc
|
||||
// @Summary 用户模块 - 用户收藏详情列表
|
||||
// @Description 视频/地点/话题 列表
|
||||
// @Tags mine
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param type formData string true "收藏类型 video:视频 tag:专题 location:地点"
|
||||
// @Param pageNumber formData integer true "页数"
|
||||
// @Param pageSize formData integer true "每页条数"
|
||||
// @Param uid formData integer true "用户uid"
|
||||
// @Success 200 {object} commod.ListResp
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /app/mine/collect/infoList [get]
|
||||
func InfoList(ctx *gin.Context) {
|
||||
type Info struct {
|
||||
Type string `form:"type" json:"type" binding:"required"`
|
||||
UID uint64 `form:"uid" json:"uid" binding:"required"`
|
||||
Page commod.Page
|
||||
}
|
||||
param := Info{}
|
||||
err := ctx.ShouldBind(¶m)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, "api mine collect InfoList ShouldBind err"+err.Error())
|
||||
return
|
||||
}
|
||||
code, hasNext, data, err := collectser.GetInfoList(param.UID, param.Type, param.Page)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, code, "api mine collect InfoList GetInfoList err"+err.Error())
|
||||
return
|
||||
}
|
||||
common.ServeJSON(ctx, code, commod.ListResp{HasNext: hasNext, List: data})
|
||||
}
|
||||
|
||||
// UserResourceList doc
|
||||
// @Summary 用户资源列表
|
||||
// @Description 用户资源列表
|
||||
// @Tags mine
|
||||
// @Accept json
|
||||
// @Produce json
|
||||
// @Param type formData string true "收藏类型 video:视频 tag:专题 location:地点"
|
||||
// @Param pageNumber formData integer true "页数"
|
||||
// @Param pageSize formData integer true "每页条数"
|
||||
// @Param uid formData integer true "用户uid"
|
||||
// @Success 200 {object} commod.ListResp
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /api/mine/userResource/list [get]
|
||||
func UserResourceList(ctx *gin.Context) {
|
||||
type Info struct {
|
||||
Type string `form:"type" json:"type" binding:"required"`
|
||||
Page commod.Page
|
||||
}
|
||||
param := Info{}
|
||||
err := ctx.ShouldBind(¶m)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, "api mine collect InfoList ShouldBind err"+err.Error())
|
||||
return
|
||||
}
|
||||
data, total, err := userResourcemod.GetUserResource(int(param.Page.PageNumber), int(param.Page.PageSize), param.Type)
|
||||
if err != nil {
|
||||
common.ServeJSON(ctx, stderr.Failure, err)
|
||||
return
|
||||
}
|
||||
common.ServeJSON(ctx, stderr.Success, gin.H{
|
||||
"list": data,
|
||||
"total": total,
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user