Skip to content

Commit

Permalink
Rename LAST_SEEN collection to PLAYERS
Browse files Browse the repository at this point in the history
  • Loading branch information
csuvajit committed Jan 1, 2024
1 parent 3077f11 commit 8435e90
Show file tree
Hide file tree
Showing 14 changed files with 79 additions and 27 deletions.
6 changes: 3 additions & 3 deletions apps/service-clans/src/service-clans.service.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Collections, Tokens } from '@app/constants';
import { LastSeenEntity } from '@app/entities';
import { PlayersEntity } from '@app/entities';
import { MongoDbService, TrackedClanList } from '@app/mongodb';
import { RedisClient, RedisService } from '@app/redis';
import RestHandler from '@app/rest/rest.module';
Expand All @@ -17,8 +17,8 @@ export class ClansService {
private redisService: RedisService,
private mongoDbService: MongoDbService,

@Inject(Collections.LAST_SEEN)
private lastSeenCollection: Collection<LastSeenEntity>,
@Inject(Collections.PLAYERS)
private lastSeenCollection: Collection<PlayersEntity>,
) {}

getHello(): string {
Expand Down
6 changes: 3 additions & 3 deletions apps/service-players/src/service-players.service.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Collections, Tokens } from '@app/constants';
import { LastSeenEntity } from '@app/entities';
import { PlayersEntity } from '@app/entities';
import { MongoDbService, TrackedClanList } from '@app/mongodb';
import { RedisClient, RedisService } from '@app/redis';
import RestHandler from '@app/rest/rest.module';
Expand All @@ -17,8 +17,8 @@ export class PlayersService {
private redisService: RedisService,
private mongoDbService: MongoDbService,

@Inject(Collections.LAST_SEEN)
private lastSeenCollection: Collection<LastSeenEntity>,
@Inject(Collections.PLAYERS)
private lastSeenCollection: Collection<PlayersEntity>,
) {}

getHello(): string {
Expand Down
6 changes: 3 additions & 3 deletions apps/service-ranking/src/service-ranking.service.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Collections, Tokens } from '@app/constants';
import { LastSeenEntity } from '@app/entities';
import { PlayersEntity } from '@app/entities';
import { MongoDbService, TrackedClanList } from '@app/mongodb';
import { RedisClient, RedisService } from '@app/redis';
import RestHandler from '@app/rest/rest.module';
Expand All @@ -17,8 +17,8 @@ export class RankingService {
private redisService: RedisService,
private mongoDbService: MongoDbService,

@Inject(Collections.LAST_SEEN)
private lastSeenCollection: Collection<LastSeenEntity>,
@Inject(Collections.PLAYERS)
private lastSeenCollection: Collection<PlayersEntity>,
) {}

getHello(): string {
Expand Down
3 changes: 2 additions & 1 deletion apps/service-wars/src/service-wars.module.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { MongoDbModule } from '@app/mongodb';
import { RedisModule } from '@app/redis';
import * as repositories from '@app/repositories';
import { RestModule } from '@app/rest';
import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
Expand All @@ -9,6 +10,6 @@ import { WarsService } from './service-wars.service';
@Module({
imports: [ConfigModule.forRoot({ isGlobal: true }), MongoDbModule, RedisModule, RestModule],
controllers: [ServiceWarsController],
providers: [WarsService],
providers: [WarsService, ...Object.values(repositories)],
})
export class ServiceWarsModule {}
10 changes: 3 additions & 7 deletions apps/service-wars/src/service-wars.service.ts
Original file line number Diff line number Diff line change
@@ -1,18 +1,14 @@
import { Collections } from '@app/constants';
import { LastSeenEntity } from '@app/entities';
import { MongoDbService, TrackedClanList } from '@app/mongodb';
import { Inject, Injectable, Logger } from '@nestjs/common';
import { PlayersRepository } from '@app/repositories';
import { Injectable, Logger } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { Collection } from 'mongodb';

@Injectable()
export class WarsService {
constructor(
private configService: ConfigService,
private mongoDbService: MongoDbService,

@Inject(Collections.LAST_SEEN)
private lastSeenCollection: Collection<LastSeenEntity>,
private playersRepository: PlayersRepository,
) {}

getHello(): string {
Expand Down
6 changes: 4 additions & 2 deletions libs/constants/src/constants.values.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ export enum Collections {

PATRONS = 'Patrons',
SETTINGS = 'Settings',
LAST_SEEN = 'LastSeen',
CLAN_WARS = 'ClanWars',
CLAN_GAMES = 'ClanGames',
CWL_WAR_TAGS = 'CWLWarTags',
Expand All @@ -57,10 +56,13 @@ export enum Collections {
CAPITAL_RAID_SEASONS = 'CapitalRaidSeasons',
CLAN_GAMES_POINTS = 'ClanGamesPoints',

PLAYERS = 'Players',
/** a.k.a LAST_SEEN */
PLAYERS = 'LastSeen',
CLANS = 'Clans',
WARS = 'Wars',

PLAYER_ACTIVITIES = 'PlayerActivities',

PLAYER_RANKS = 'PlayerRanks',
CAPITAL_RANKS = 'CapitalRanks',
CLAN_RANKS = 'ClanRanks',
Expand Down
1 change: 1 addition & 0 deletions libs/entities/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ export * from './clans.entity';
export * from './reminders.entity';
export * from './users.entity';
export * from './wars.entity';
export * from './players.entity';
27 changes: 27 additions & 0 deletions libs/entities/src/players.entity.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
export class PlayerActivitiesEntity {
/**
* Indexed
*/
playerTag: string;

/**
* Format: 2023-12-12T00:00
*
* Compound index with playerTag
*/
timestamp: string;

count: number;

createdAt: Date; // TTL Indexed
}

export class PlayerHistoriesEntity {
playerTag: string;

clanTag: string;

dateLastOut: Date;

dateFirstIn: Date;
}
4 changes: 2 additions & 2 deletions libs/entities/src/users.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ export class UsersEntity {
createdAt: Date;
}

export class LastSeenEntity {
export class PlayersEntity {
name: string;
tag: string;
clan: {
name: string;
tag: string;
};
lastSeen?: Date;
lastSeen: Date | null;
createdAt: Date;
}
6 changes: 3 additions & 3 deletions libs/mongodb/src/mongodb.service.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Collections, Tokens } from '@app/constants';
import { ClanStoresEntity } from '@app/entities';
import { LastSeenEntity } from '@app/entities/users.entity';
import { PlayersEntity } from '@app/entities/users.entity';
import { Inject, Injectable } from '@nestjs/common';
import { Util } from 'clashofclans.js';
import moment from 'moment';
Expand All @@ -11,8 +11,8 @@ export class MongoDbService {
constructor(
@Inject(Tokens.MONGODB) private readonly db: Db,

@Inject(Collections.LAST_SEEN)
private readonly lastSeenCollection: Collection<LastSeenEntity>,
@Inject(Collections.PLAYERS)
private readonly lastSeenCollection: Collection<PlayersEntity>,
@Inject(Collections.CLAN_STORES)
private readonly clanStoresCollection: Collection<ClanStoresEntity>,
) {}
Expand Down
2 changes: 1 addition & 1 deletion libs/repositories/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
export * from './capital-raid-seasons.repository';
export * from './clan-stores.repository';
export * from './repositories.module';
export * from './players.repository';
12 changes: 12 additions & 0 deletions libs/repositories/src/player-activities.repository.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { Collections } from '@app/constants';
import { PlayerActivitiesEntity } from '@app/entities';
import { Inject, Injectable } from '@nestjs/common';
import { Collection } from 'mongodb';

@Injectable()
export class PlayerActivitiesRepository {
constructor(
@Inject(Collections.PLAYER_ACTIVITIES)
public collection: Collection<PlayerActivitiesEntity>,
) {}
}
12 changes: 12 additions & 0 deletions libs/repositories/src/players.repository.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import { Collections } from '@app/constants';
import { PlayersEntity } from '@app/entities';
import { Inject, Injectable } from '@nestjs/common';
import { Collection } from 'mongodb';

@Injectable()
export class PlayersRepository {
constructor(
@Inject(Collections.PLAYERS)
public collection: Collection<PlayersEntity>,
) {}
}
5 changes: 3 additions & 2 deletions libs/repositories/src/repositories.module.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import { Module } from '@nestjs/common';
import * as repositories from './';

@Module({
providers: [],
exports: [],
providers: [...Object.values(repositories)],
exports: [...Object.values(repositories)],
})
export class RepositoryModule {}

0 comments on commit 8435e90

Please sign in to comment.