feature(database-connection): Add routing for dynamic seasons

This commit is contained in:
2021-01-11 15:46:09 +01:00
parent ff1c56c791
commit 29b6974714
17 changed files with 699 additions and 166 deletions

View File

@@ -1,26 +1,46 @@
import TableEntry from "../models/TableEntry";
import UserStatsService from "../services/UserStatsService";
import UserStatsResponse from "../models/UserStatsResponse";
export default class UserStatsMockService extends UserStatsService {
private readonly entries: TableEntry[];
private readonly mocks: UserStatsResponse[] = [
{
seasonId: "1",
dates: {
start: new Date(2019, 12, 5),
end: new Date()
},
stats: [
{ name: "Humen", rank: "Overwatch Noob 2", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Random Rank 3 4", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Kas is cool 5", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Bremsspu 6r", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "127 3", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "ok343", onlineTime: "0d 1h 0m 0s" }
]
},
{
seasonId: "2",
dates: {
start: new Date(new Date().getFullYear(), 0, 1),
end: new Date()
},
stats: [
{ name: "Humen", rank: "Overwatch Noob", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Random Rank 3", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Kas is cool", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Bremsspur", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "12", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "ok", onlineTime: "0d 1h 0m 0s" }
]
}
]
constructor() {
super();
this.entries = [
{ name: "Humen", rank: "Overwatch Noob", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Random Rank 3", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Kas is cool", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "Bremsspur", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "12", onlineTime: "0d 1h 0m 0s" },
{ name: "Humen", rank: "ok", onlineTime: "0d 1h 0m 0s" }
];
async getStats(seasonId: string): Promise<UserStatsResponse> {
return Promise.resolve(this.mocks[Number(seasonId) - 1])
}
async getStats(): Promise<TableEntry[]> {
return Promise.resolve(this.entries);
}
getStatsWithoutPromise(): TableEntry[] {
return this.entries;
getStatsWithoutPromise(seasonId: string): UserStatsResponse {
return this.mocks[Number(seasonId) - 1]
}
}