some leaderboard
This commit is contained in:
parent
cb60e3d1ff
commit
7c4ccfd12c
3 changed files with 6 additions and 4 deletions
|
|
@ -27,7 +27,7 @@ leaderboardRoute.get('/highscore',
|
||||||
//endregion
|
//endregion
|
||||||
const highscoreLeaderboardRepo: HighscoreLeaderboardRepository = new HighscoreLeaderboardPgPromiseRepository;
|
const highscoreLeaderboardRepo: HighscoreLeaderboardRepository = new HighscoreLeaderboardPgPromiseRepository;
|
||||||
let highscoreLeaderboard: HighscoreLeaderboard;
|
let highscoreLeaderboard: HighscoreLeaderboard;
|
||||||
if (req.query.pagination) {
|
if (req.query.pagination == true) {
|
||||||
const entriesPerPage = req.query.entriesPerPage;
|
const entriesPerPage = req.query.entriesPerPage;
|
||||||
const page = req.query.page;
|
const page = req.query.page;
|
||||||
highscoreLeaderboard = await highscoreLeaderboardRepo.getPage(entriesPerPage, page);
|
highscoreLeaderboard = await highscoreLeaderboardRepo.getPage(entriesPerPage, page);
|
||||||
|
|
@ -53,6 +53,7 @@ leaderboardRoute.get('/totalplaytime',
|
||||||
*/
|
*/
|
||||||
async (req, res) => {
|
async (req, res) => {
|
||||||
try {
|
try {
|
||||||
|
console.log(req.query)
|
||||||
//region validate parameters
|
//region validate parameters
|
||||||
const errors = validationResult(req);
|
const errors = validationResult(req);
|
||||||
if (!errors.isEmpty()) {
|
if (!errors.isEmpty()) {
|
||||||
|
|
@ -61,7 +62,8 @@ leaderboardRoute.get('/totalplaytime',
|
||||||
//endregion
|
//endregion
|
||||||
const timeLeaderboardRepo: TimeLeaderboardRepository = new TimeLeaderboardPgPromiseRepository;
|
const timeLeaderboardRepo: TimeLeaderboardRepository = new TimeLeaderboardPgPromiseRepository;
|
||||||
let timeLeaderboard: TimeLeaderboard;
|
let timeLeaderboard: TimeLeaderboard;
|
||||||
if (req.query.pagination) {
|
console.log(req.query)
|
||||||
|
if (req.query.pagination == true) {
|
||||||
const entriesPerPage = req.query.entriesPerPage;
|
const entriesPerPage = req.query.entriesPerPage;
|
||||||
const page = req.query.page;
|
const page = req.query.page;
|
||||||
timeLeaderboard = await timeLeaderboardRepo.getPage(entriesPerPage, page);
|
timeLeaderboard = await timeLeaderboardRepo.getPage(entriesPerPage, page);
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ export class HighscoreLeaderboardPgPromiseRepository extends HighscoreLeaderboar
|
||||||
|
|
||||||
async getPage(entriesPerPage, page): Promise<HighscoreLeaderboard> {
|
async getPage(entriesPerPage, page): Promise<HighscoreLeaderboard> {
|
||||||
const raw: any = await Database.db.manyOrNone(
|
const raw: any = await Database.db.manyOrNone(
|
||||||
'SELECT * FROM lb_highscore INNER JOIN "user" ON user_id = id ORDER BY rank LIMIT $1 OFFSET $2;',
|
'SELECT * FROM lb_highscore INNER JOIN "user" ON user_id = id ORDER BY rank LIMIT $1 OFFSET $2*$1;',
|
||||||
[entriesPerPage, page * entriesPerPage]
|
[entriesPerPage, page * entriesPerPage]
|
||||||
);
|
);
|
||||||
return this.serialize(raw);
|
return this.serialize(raw);
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@ export class TimeLeaderboardPgPromiseRepository extends TimeLeaderboardRepositor
|
||||||
|
|
||||||
async getPage(entriesPerPage: number, page: number): Promise<TimeLeaderboard> {
|
async getPage(entriesPerPage: number, page: number): Promise<TimeLeaderboard> {
|
||||||
const raw: any = await Database.db.manyOrNone(
|
const raw: any = await Database.db.manyOrNone(
|
||||||
'SELECT * FROM lb_total_playtime INNER JOIN "user" ON user_id = id ORDER BY rank LIMIT $1 OFFSET $2;',
|
'SELECT * FROM lb_total_playtime INNER JOIN "user" ON user_id = id ORDER BY rank LIMIT $1 OFFSET $2*$1;',
|
||||||
[entriesPerPage, page * entriesPerPage]
|
[entriesPerPage, page * entriesPerPage]
|
||||||
);
|
);
|
||||||
return this.serialize(raw);
|
return this.serialize(raw);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue