Commit 56a70811 authored by nanahira's avatar nanahira

Update src/tournament/tournament.service.ts

parent dd535a0a
Pipeline #40060 passed with stages
in 4 minutes and 26 seconds
...@@ -87,14 +87,14 @@ export class TournamentService extends CrudService(Tournament, { ...@@ -87,14 +87,14 @@ export class TournamentService extends CrudService(Tournament, {
id: number, id: number,
user: MycardUser | number, user: MycardUser | number,
noAnalytics = false, noAnalytics = false,
noCache = false,
) { ) {
// we check for permission first // we check for permission first
await this.findOne(id, (qb) => { await this.findOne(id, (qb) => {
Tournament.extraQueryForUser(user, qb, this.entityAliasName); Tournament.extraQueryForUser(user, qb, this.entityAliasName);
qb.select(`${this.entityAliasName}.id`); qb.select(`${this.entityAliasName}.id`);
}); });
const key = `tournament_cache2:${id}:${noAnalytics ? 1 : 0}`; const fetchTournament = async () => {
const res = await this.aragami.cache(TournamentCache, key, async () => {
const result = await this.findOne(id); const result = await this.findOne(id);
if (result.data) { if (result.data) {
if (result.data.status === TournamentStatus.Ready && !noAnalytics) { if (result.data.status === TournamentStatus.Ready && !noAnalytics) {
...@@ -106,7 +106,9 @@ export class TournamentService extends CrudService(Tournament, { ...@@ -106,7 +106,9 @@ export class TournamentService extends CrudService(Tournament, {
cache.noAnalytics = noAnalytics; cache.noAnalytics = noAnalytics;
cache.tournament = result.data; cache.tournament = result.data;
return cache; return cache;
}); };
const key = `tournament_cache2:${id}:${noAnalytics ? 1 : 0}`;
const res = await (noCache ? fetchTournament() : this.aragami.cache(TournamentCache, key, fetchTournament));
const tournament = res.tournament; const tournament = res.tournament;
tournament.wipeDeckBuf(user); tournament.wipeDeckBuf(user);
return new GenericReturnMessageDto(200, 'success', tournament); return new GenericReturnMessageDto(200, 'success', tournament);
...@@ -320,6 +322,8 @@ export class TournamentService extends CrudService(Tournament, { ...@@ -320,6 +322,8 @@ export class TournamentService extends CrudService(Tournament, {
const { data: tournament } = await this.getTournament( const { data: tournament } = await this.getTournament(
dto.tournamentId, dto.tournamentId,
user, user,
false,
true,
); );
participants = tournament.participants.map((p) => participants = tournament.participants.map((p) =>
Object.assign(new Participant(), { Object.assign(new Participant(), {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment