41 lines
1.0 KiB
Go
41 lines
1.0 KiB
Go
package web_coin
|
|
|
|
import (
|
|
"videoweb/pub/common"
|
|
"videoweb/pub/common/srvdef"
|
|
"videoweb/web/service/srv_cointrans"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
// @Tags 金币管理
|
|
// @Summary 查询金币交易记录
|
|
// @Description 分页查询金币收支流水,支持按用户、收支方向、交易类型、时间范围筛选
|
|
// @Accept json
|
|
// @Produce json
|
|
// @Param param body srv_cointrans.CoinTransReq true "查询参数"
|
|
// @Success 200 {object} srv_cointrans.CoinTransResp "成功"
|
|
// @Failure 400 {string} string "参数错误"
|
|
// @Security ApiKeyAuth
|
|
// @Router /api/web/coin/trans [POST]
|
|
func GetCoinTrans(ctx *gin.Context) {
|
|
var req srv_cointrans.CoinTransReq
|
|
if err := ctx.ShouldBindJSON(&req); err != nil {
|
|
common.ServerJSON(ctx, srvdef.ErrParamError, nil)
|
|
return
|
|
}
|
|
if req.PageNum < 1 {
|
|
req.PageNum = 1
|
|
}
|
|
if req.PageSize < 1 || req.PageSize > 100 {
|
|
req.PageSize = 20
|
|
}
|
|
|
|
resp, serr := srv_cointrans.GetCoinTrans(ctx, &req)
|
|
if serr != nil {
|
|
common.ServerJSON(ctx, serr.Code, serr.Tips)
|
|
return
|
|
}
|
|
common.ServerJSON(ctx, srvdef.Success, resp)
|
|
}
|