Files
rootandClaude Opus 5 8679200f41 Initial commit
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 13:57:10 +08:00

201 lines
6.1 KiB
Go

package statcenterctl
import (
"91porn-server/app/service/proxyser"
"91porn-server/app/service/walletser"
"91porn-server/common"
"91porn-server/common/stderr"
"github.com/gin-gonic/gin"
)
// UserInviteInfo
// @Tags 全名代理
// @Summary 获取账户信息
// @Description 获取账户信息
// @Accept json
// @Produce json
// @Success 200 {object} walletser.UserInviteAmountInfo
// @Success 400 {string} string "失败"
// @Router /userInvite/info [POST]
func UserInviteInfo(ctx *gin.Context) {
uid, err := common.GetUID(ctx) //当前用户uid
if err != nil {
common.ServeJSON(ctx, stderr.ErrNoToken, err.Error())
return
}
resp, err := walletser.GetUserAmount(uid)
if err != nil {
common.ServeJSON(ctx, stderr.Failure, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// @Tags 全名代理
// @Summary 获取视频收益详情
// @Description
// @Accept json
// @Produce json
// @Param param body VideoIncomeListReq true "参数"
// @Success 200 {string} string "成功"
// @Success 400 {string} string "失败"
// @Router /userInvite/videolist [POST]
func UserVideoList(ctx *gin.Context) {
uid, err := common.GetUID(ctx) //当前用户uid
if err != nil {
common.ServeJSON(ctx, stderr.ErrNoToken, err.Error())
return
}
var request VideoIncomeListReq
if err = ctx.ShouldBind(&request); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
resp, err := walletser.GetVideoIncomelist(uid, request.PageNumber, request.PageSize)
if err != nil {
common.ServeJSON(ctx, stderr.Failure, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// UserInviteList
// @Tags 全名代理
// @Summary 邀请列表
// @Description 返回全民代理被邀请人列表
// @Accept json
// @Produce json
// @Param param body UserInviteUserListReq true "参数"
// @Success 200 {string} string "成功"
// @Success 400 {string} string "失败"
// @Router /userInvite/userlist [POST]
func UserInviteList(ctx *gin.Context) {
uid, err := common.GetUID(ctx) //当前用户uid
if err != nil {
common.ServeJSON(ctx, stderr.ErrNoToken, err.Error())
return
}
var request UserInviteUserListReq
if err = ctx.ShouldBind(&request); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
//查询
list, total, err := proxyser.GetInveUserList(uid, request.PageNumber, request.PageSize)
if err != nil {
common.ServeJSON(ctx, stderr.Failure, nil)
return
}
var resp UserInviteUserListRes
if uint64(total) > request.PageNumber*request.PageSize {
resp.HasNext = true
}
resp.Total = total
resp.List = make([]UserInviteUserInfo, len(list))
for i, l := range list {
resp.List[i] = UserInviteUserInfo{
UserId: l.Invitee,
Name: l.InviteeName,
Portrait: l.InviteePortrait,
CreateAt: l.CreatedAt,
}
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// NewUserInviteList
// @Tags 全名代理
// @Summary 新邀请列表
// @Description 返回全民代理被邀请人列表
// @Accept json
// @Produce json
// @Param param body UserInviteUserListReq true "参数"
// @Success 200 {string} string "成功"
// @Success 400 {string} string "失败"
// @Router /userInvite/userlist [POST]
func NewUserInviteList(ctx *gin.Context) {
uid, err := common.GetUID(ctx) //当前用户uid
if err != nil {
common.ServeJSON(ctx, stderr.ErrNoToken, err.Error())
return
}
var request UserInviteUserListReq
if err = ctx.ShouldBind(&request); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
//查询
list, total, err := proxyser.GetInveUserList(uid, request.PageNumber, request.PageSize)
if err != nil {
common.ServeJSON(ctx, stderr.Failure, nil)
return
}
var resp UserInviteUserListRes
if uint64(total) > request.PageNumber*request.PageSize {
resp.HasNext = true
}
resp.Total = total
resp.List = make([]UserInviteUserInfo, len(list))
for i, l := range list {
resp.List[i] = UserInviteUserInfo{
UserId: l.Invitee,
Name: l.InviteeName,
Portrait: l.InviteePortrait,
CreateAt: l.CreatedAt,
}
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// UserInviteIncomeList
// @Tags 全名代理
// @Summary 收益详情
// @Description 返回用户收益详情
// @Accept json
// @Produce json
// @Param param body UserInviteIncomeListReq true "参数"
// @Success 200 {object} UserInviteIncomeListRes "成功"
// @Success 400 {string} string "失败"
// @Router /api/app/userinvite/incomelist [POST]
func UserInviteIncomeList(ctx *gin.Context) {
uid, err := common.GetUID(ctx) //当前用户uid
if err != nil {
common.ServeJSON(ctx, stderr.ErrNoToken, err.Error())
return
}
var request UserInviteIncomeListReq
if err = ctx.ShouldBind(&request); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
resp, err := walletser.GetInviteIncomelist(uid, request.PageNumber, request.PageSize)
if err != nil {
common.ServeJSON(ctx, stderr.Failure, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// StatcenterRechargeCallBack 充值回调
func StatcenterRechargeCallBack(ctx *gin.Context) {
var request struct {
UserId uint64 `form:"userId" json:"userId" binding:"required"`
InvitedUserId uint64 `form:"invitedUserId" json:"invitedUserId" binding:"required"`
IncomeAmount int64 `form:"incomeAmount" json:"incomeAmount" binding:"required"`
OrderId string `form:"orderId" json:"orderId" binding:"required"`
}
var resp struct {
OrderId string `json:"orderId"` //第三方平台id
Code int `json:"code"` //200正常 其他异常
Err string `json:"err"` //内部错误信息
Msg string `json:"msg"` //错误消息
}
if err := ctx.ShouldBind(&request); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
resp.Code = 200
common.ServeJSON(ctx, stderr.Success, resp)
}