This repository has been archived on 2022-09-04. You can view files and clone it, but cannot push or open issues or pull requests.
api/graphql/resolvers/daily_player_stats.go
Kichiyaki 01fdd80f7f [WIP] - refactor limit, sort, offset
- rename middleware.MayExceedLimit to CanExceedLimit
- update the DailyTribeStats/DailyPlayerStats repository and usecase
- rename utils.SanitizeSort to utils.SanitizeSortExpression
- add two new utils - SanitizeSortExpressions and FindStringWithPrefix
2020-11-21 09:13:25 +01:00

46 lines
1008 B
Go

package resolvers
import (
"context"
"github.com/tribalwarshelp/api/dailyplayerstats"
"github.com/tribalwarshelp/api/graphql/generated"
"github.com/tribalwarshelp/shared/models"
)
func (r *dailyPlayerStatsRecordResolver) Player(ctx context.Context, obj *models.DailyPlayerStats) (*models.Player, error) {
if obj.Player != nil {
return obj.Player, nil
}
return getPlayer(ctx, obj.PlayerID), nil
}
func (r *queryResolver) DailyPlayerStats(ctx context.Context,
server string,
filter *models.DailyPlayerStatsFilter,
limit *int,
offset *int,
sort []string) (*generated.DailyPlayerStats, error) {
defLimit := 0
defOffset := 0
if limit == nil {
limit = &defLimit
}
if offset == nil {
offset = &defOffset
}
var err error
list := &generated.DailyPlayerStats{}
list.Items, list.Total, err = r.DailyPlayerStatsUcase.Fetch(ctx, dailyplayerstats.FetchConfig{
Server: server,
Filter: filter,
Sort: sort,
Limit: *limit,
Offset: *offset,
Count: true,
})
return list, err
}