30 lines
952 B
Go
30 lines
952 B
Go
package handler
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/go-kratos/kratos/v3/errors"
|
|
businessbiz "kra/internal/biz/business"
|
|
"kra/internal/service/business"
|
|
"kra/internal/service/dto"
|
|
)
|
|
|
|
type Ranking struct{ service *business.RankingService }
|
|
|
|
func NewRanking(service *business.RankingService) *Ranking { return &Ranking{service: service} }
|
|
func (h *Ranking) list(c *gin.Context, kind businessbiz.RankingKind) {
|
|
var req dto.RankingQuery
|
|
if c.ShouldBindQuery(&req) != nil {
|
|
Fail(c, "排行榜查询参数不正确")
|
|
return
|
|
}
|
|
data, err := h.service.List(c.Request.Context(), kind, &req)
|
|
if err != nil {
|
|
Fail(c, errors.FromError(err).Message)
|
|
return
|
|
}
|
|
OKWithData(c, data)
|
|
}
|
|
func (h *Ranking) Channel(c *gin.Context) { h.list(c, businessbiz.ChannelRanking) }
|
|
func (h *Ranking) Business(c *gin.Context) { h.list(c, businessbiz.BusinessRanking) }
|
|
func (h *Ranking) Game(c *gin.Context) { h.list(c, businessbiz.GameRanking) }
|