Skip to content

Commit 7ccc409

Browse files
committed
fixes
1 parent c2e5a7f commit 7ccc409

9 files changed

+45
-22
lines changed

package.json

-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,6 @@
112112
"@types/web-push": "^3.6.4",
113113
"bignumber.js": "^9.0.1",
114114
"jest": "29.7.0",
115-
"k6": "^0.0.0",
116115
"openapi-typescript-codegen": "^0.5.3",
117116
"prettier": "^3.3.3",
118117
"supertest": "^7.0.0",

src/generated-api/gameserver/apis/PlayerApi.ts

+7-2
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ export interface PlayerControllerGetHeroPlayersRequest {
5353
export interface PlayerControllerLeaderboardRequest {
5454
page: number;
5555
perPage?: number;
56+
seasonId?: number;
5657
}
5758

5859
export interface PlayerControllerPlayerAchievementsRequest {
@@ -199,6 +200,10 @@ export class PlayerApi extends runtime.BaseAPI {
199200
queryParameters['per_page'] = requestParameters.perPage;
200201
}
201202

203+
if (requestParameters.seasonId !== undefined) {
204+
queryParameters['season_id'] = requestParameters.seasonId;
205+
}
206+
202207
const headerParameters: runtime.HTTPHeaders = {};
203208

204209
return {
@@ -211,8 +216,8 @@ export class PlayerApi extends runtime.BaseAPI {
211216

212217
/**
213218
*/
214-
playerControllerLeaderboard = async (page: number, perPage?: number): Promise<GameserverLeaderboardEntryPageDto> => {
215-
const response = await this.playerControllerLeaderboardRaw({ page: page, perPage: perPage });
219+
playerControllerLeaderboard = async (page: number, perPage?: number, seasonId?: number): Promise<GameserverLeaderboardEntryPageDto> => {
220+
const response = await this.playerControllerLeaderboardRaw({ page: page, perPage: perPage, seasonId: seasonId });
216221
return await response.value();
217222
}
218223

src/generated-api/gameserver/models/GameserverLeaderboardEntryDto.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -35,19 +35,19 @@ export class GameserverLeaderboardEntryDto {
3535
* @type {number}
3636
* @memberof GameserverLeaderboardEntryDto
3737
*/
38-
mmr: number;
38+
seasonId: number;
3939
/**
4040
*
4141
* @type {number}
4242
* @memberof GameserverLeaderboardEntryDto
4343
*/
44-
games: number;
44+
mmr: number;
4545
/**
4646
*
4747
* @type {number}
4848
* @memberof GameserverLeaderboardEntryDto
4949
*/
50-
seasonGames: number;
50+
games: number;
5151
/**
5252
*
5353
* @type {number}
@@ -92,9 +92,9 @@ export function GameserverLeaderboardEntryDtoFromJSONTyped(json: any, ignoreDisc
9292

9393
'rank': json['rank'],
9494
'steamId': json['steamId'],
95+
'seasonId': json['seasonId'],
9596
'mmr': json['mmr'],
9697
'games': json['games'],
97-
'seasonGames': json['seasonGames'],
9898
'wins': json['wins'],
9999
'kills': json['kills'],
100100
'deaths': json['deaths'],
@@ -114,9 +114,9 @@ export function GameserverLeaderboardEntryDtoToJSON(value?: GameserverLeaderboar
114114

115115
'rank': value.rank,
116116
'steamId': value.steamId,
117+
'seasonId': value.seasonId,
117118
'mmr': value.mmr,
118119
'games': value.games,
119-
'seasonGames': value.seasonGames,
120120
'wins': value.wins,
121121
'kills': value.kills,
122122
'deaths': value.deaths,

src/generated-api/gameserver/models/GameserverPlayerSummaryDto.ts

+5-5
Original file line numberDiff line numberDiff line change
@@ -47,19 +47,19 @@ export class GameserverPlayerSummaryDto {
4747
* @type {number}
4848
* @memberof GameserverPlayerSummaryDto
4949
*/
50-
mmr: number;
50+
seasonId: number;
5151
/**
5252
*
5353
* @type {number}
5454
* @memberof GameserverPlayerSummaryDto
5555
*/
56-
games: number;
56+
mmr: number;
5757
/**
5858
*
5959
* @type {number}
6060
* @memberof GameserverPlayerSummaryDto
6161
*/
62-
seasonGames: number;
62+
games: number;
6363
/**
6464
*
6565
* @type {number}
@@ -106,9 +106,9 @@ export function GameserverPlayerSummaryDtoFromJSONTyped(json: any, ignoreDiscrim
106106
'accessLevel': json['accessLevel'],
107107
'rank': json['rank'],
108108
'steamId': json['steamId'],
109+
'seasonId': json['seasonId'],
109110
'mmr': json['mmr'],
110111
'games': json['games'],
111-
'seasonGames': json['seasonGames'],
112112
'wins': json['wins'],
113113
'kills': json['kills'],
114114
'deaths': json['deaths'],
@@ -130,9 +130,9 @@ export function GameserverPlayerSummaryDtoToJSON(value?: GameserverPlayerSummary
130130
'accessLevel': value.accessLevel,
131131
'rank': value.rank,
132132
'steamId': value.steamId,
133+
'seasonId': value.seasonId,
133134
'mmr': value.mmr,
134135
'games': value.games,
135-
'seasonGames': value.seasonGames,
136136
'wins': value.wins,
137137
'kills': value.kills,
138138
'deaths': value.deaths,

src/rest/player/player.controller.ts

+11-2
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import {
1010
UseInterceptors,
1111
} from "@nestjs/common";
1212
import { CacheTTL } from "@nestjs/cache-manager";
13-
import { ApiBearerAuth, ApiTags } from "@nestjs/swagger";
13+
import { ApiBearerAuth, ApiQuery, ApiTags } from "@nestjs/swagger";
1414
import { PlayerApi } from "../../generated-api/gameserver";
1515
import { PlayerMapper } from "./player.mapper";
1616
import {
@@ -114,11 +114,20 @@ export class PlayerController {
114114
@CacheTTL(60 * 30)
115115
@Get("/leaderboard")
116116
@WithPagination()
117+
@ApiQuery({
118+
name: "season_id",
119+
required: false,
120+
})
117121
async leaderboard(
118122
@Query("page") page: number,
119123
@Query("per_page", NullableIntPipe) perPage: number = 25,
124+
@Query("season_id", NullableIntPipe) seasonId?: number,
120125
): Promise<LeaderboardEntryPageDto> {
121-
const rawPage = await this.ms.playerControllerLeaderboard(page, perPage);
126+
const rawPage = await this.ms.playerControllerLeaderboard(
127+
page,
128+
perPage,
129+
seasonId,
130+
);
122131

123132
return {
124133
data: await Promise.all(

src/rest/player/player.mapper.ts

+1
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ export class PlayerMapper {
8585
public mapPlayerSummary = async (
8686
it: GameserverPlayerSummaryDto,
8787
): Promise<PlayerSummaryDto> => {
88+
console.log(it)
8889
return {
8990
user: await this.userRepository.userDto(it.steamId),
9091
mmr: it.mmr,

src/rest/stats/dto/stats.dto.ts

+8
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,11 @@ export class PerModePlayersDto {
3030

3131
playerCount: number;
3232
}
33+
34+
35+
export class GameSeasonDto {
36+
id: number;
37+
startTimestamp: string;
38+
isActive: boolean;
39+
}
40+

src/rest/stats/stats.controller.ts

+8-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ import {
55
InfoApi,
66
} from "../../generated-api/gameserver";
77
import {
8-
CurrentOnlineDto,
8+
CurrentOnlineDto, GameSeasonDto,
99
MatchmakingInfo,
1010
PerModePlayersDto,
11-
} from "./dto/stats.dto";
11+
} from './dto/stats.dto';
1212
import { CacheTTL } from "@nestjs/cache-manager";
1313
import { ReqLoggingInterceptor } from "../../middleware/req-logging.interceptor";
1414
import { MatchmakingModes } from "../../gateway/shared-types/matchmaking-mode";
@@ -24,6 +24,12 @@ export class StatsController {
2424
return this.ms.infoControllerGamemodes();
2525
}
2626

27+
28+
@Get("/seasons")
29+
async getGameSeasons(): Promise<GameSeasonDto[]> {
30+
return this.ms.infoControllerGetSeasons();
31+
}
32+
2733
@Get("/servers")
2834
public async getServers(): Promise<string[]> {
2935
const servers = await this.ms.infoControllerGameServers();

yarn.lock

-5
Original file line numberDiff line numberDiff line change
@@ -7101,11 +7101,6 @@ jws@^4.0.0:
71017101
jwa "^2.0.0"
71027102
safe-buffer "^5.0.1"
71037103

7104-
k6@^0.0.0:
7105-
version "0.0.0"
7106-
resolved "https://registry.yarnpkg.com/k6/-/k6-0.0.0.tgz#8c923200be0a68c578e8f5a32be96b1d8065cc3b"
7107-
integrity sha512-GAQSWayS2+LjbH5bkRi+pMPYyP1JSp7o+4j58ANZ762N/RH/SdlAT3CHHztnn8s/xgg8kYNM24Gd2IPo9b5W+g==
7108-
71097104
kleur@^3.0.3:
71107105
version "3.0.3"
71117106
resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"

0 commit comments

Comments
 (0)