forked from noxious/server
OOP is my passion ( ͡° ͜ʖ ͡°)
This commit is contained in:
@ -5,7 +5,7 @@ import { CharacterHair } from '#entities/characterHair'
|
||||
class CharacterHairRepository extends BaseRepository {
|
||||
async getFirst() {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterHair)
|
||||
const repository = this.getEntityManager().getRepository(CharacterHair)
|
||||
return await repository.findOne({ id: { $exists: true } })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get first character hair: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -15,7 +15,7 @@ class CharacterHairRepository extends BaseRepository {
|
||||
|
||||
async getAll(): Promise<CharacterHair[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterHair)
|
||||
const repository = this.getEntityManager().getRepository(CharacterHair)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all character hair: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -25,7 +25,7 @@ class CharacterHairRepository extends BaseRepository {
|
||||
|
||||
async getAllSelectable(populate?: any): Promise<CharacterHair[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterHair)
|
||||
const repository = this.getEntityManager().getRepository(CharacterHair)
|
||||
return await repository.find({ isSelectable: true }, { populate })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get selectable character hair: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -35,7 +35,7 @@ class CharacterHairRepository extends BaseRepository {
|
||||
|
||||
async getById(id: UUID): Promise<CharacterHair | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterHair)
|
||||
const repository = this.getEntityManager().getRepository(CharacterHair)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character hair by ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -44,4 +44,4 @@ class CharacterHairRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new CharacterHairRepository()
|
||||
export default CharacterHairRepository
|
||||
|
@ -3,20 +3,20 @@ import { UUID } from '#application/types'
|
||||
import { Character } from '#entities/character'
|
||||
|
||||
class CharacterRepository extends BaseRepository {
|
||||
async getByUserId(userId: UUID, populate?: any): Promise<Character[]> {
|
||||
async getByUserId(userId: UUID): Promise<Character[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Character)
|
||||
return await repository.find({ user: userId }, { populate })
|
||||
const repository = this.getEntityManager().getRepository(Character)
|
||||
return await repository.find({ user: userId })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character by user ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
return []
|
||||
}
|
||||
}
|
||||
|
||||
async getByUserAndId(userId: UUID, characterId: UUID, populate?: any): Promise<Character | null> {
|
||||
async getByUserAndId(userId: UUID, characterId: UUID): Promise<Character | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Character)
|
||||
return await repository.findOne({ user: userId, id: characterId }, { populate })
|
||||
const repository = this.getEntityManager().getRepository(Character)
|
||||
return await repository.findOne({ user: userId, id: characterId })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character by user ID and character ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
return null
|
||||
@ -25,7 +25,7 @@ class CharacterRepository extends BaseRepository {
|
||||
|
||||
async getById(id: UUID, populate?: any): Promise<Character | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Character)
|
||||
const repository = this.getEntityManager().getRepository(Character)
|
||||
return await repository.findOne({ id }, { populate })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character by ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -35,7 +35,7 @@ class CharacterRepository extends BaseRepository {
|
||||
|
||||
async getByName(name: string, populate?: any): Promise<Character | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Character)
|
||||
const repository = this.getEntityManager().getRepository(Character)
|
||||
return await repository.findOne({ name }, { populate })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character by name: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -44,4 +44,4 @@ class CharacterRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new CharacterRepository()
|
||||
export default CharacterRepository
|
||||
|
@ -5,7 +5,7 @@ import { CharacterType } from '#entities/characterType'
|
||||
class CharacterTypeRepository extends BaseRepository {
|
||||
async getFirst() {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterType)
|
||||
const repository = this.getEntityManager().getRepository(CharacterType)
|
||||
return await repository.findOne({ id: { $exists: true } })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get first character type: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -15,7 +15,7 @@ class CharacterTypeRepository extends BaseRepository {
|
||||
|
||||
async getAll() {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterType)
|
||||
const repository = this.getEntityManager().getRepository(CharacterType)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all character types: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -25,7 +25,7 @@ class CharacterTypeRepository extends BaseRepository {
|
||||
|
||||
async getById(id: UUID) {
|
||||
try {
|
||||
const repository = this.em.getRepository(CharacterType)
|
||||
const repository = this.getEntityManager().getRepository(CharacterType)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character type by ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -34,4 +34,4 @@ class CharacterTypeRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new CharacterTypeRepository()
|
||||
export default CharacterTypeRepository
|
||||
|
@ -5,7 +5,7 @@ import { Chat } from '#entities/chat'
|
||||
class ChatRepository extends BaseRepository {
|
||||
async getById(id: UUID): Promise<Chat[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Chat)
|
||||
const repository = this.getEntityManager().getRepository(Chat)
|
||||
return await repository.find({
|
||||
id
|
||||
})
|
||||
@ -17,7 +17,7 @@ class ChatRepository extends BaseRepository {
|
||||
|
||||
async getAll(): Promise<Chat[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Chat)
|
||||
const repository = this.getEntityManager().getRepository(Chat)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all chats: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -27,7 +27,7 @@ class ChatRepository extends BaseRepository {
|
||||
|
||||
async getByCharacterId(characterId: UUID): Promise<Chat[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Chat)
|
||||
const repository = this.getEntityManager().getRepository(Chat)
|
||||
return await repository.find({ character: characterId })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get chats by character ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -37,7 +37,7 @@ class ChatRepository extends BaseRepository {
|
||||
|
||||
async getByMapId(mapId: UUID): Promise<Chat[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Chat)
|
||||
const repository = this.getEntityManager().getRepository(Chat)
|
||||
return await repository.find({ map: mapId })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get chats by map ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -46,4 +46,4 @@ class ChatRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new ChatRepository()
|
||||
export default ChatRepository
|
||||
|
@ -5,7 +5,7 @@ import { Item } from '#entities/item'
|
||||
class ItemRepository extends BaseRepository {
|
||||
async getById(id: UUID): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Item)
|
||||
const repository = this.getEntityManager().getRepository(Item)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get item by ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -15,7 +15,7 @@ class ItemRepository extends BaseRepository {
|
||||
|
||||
async getByIds(ids: UUID[]): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Item)
|
||||
const repository = this.getEntityManager().getRepository(Item)
|
||||
return await repository.find({
|
||||
id: ids
|
||||
})
|
||||
@ -27,7 +27,7 @@ class ItemRepository extends BaseRepository {
|
||||
|
||||
async getAll(): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Item)
|
||||
const repository = this.getEntityManager().getRepository(Item)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all items: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -36,4 +36,4 @@ class ItemRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new ItemRepository()
|
||||
export default ItemRepository
|
||||
|
@ -5,7 +5,7 @@ import { MapEventTile } from '#entities/mapEventTile'
|
||||
class MapEventTileRepository extends BaseRepository {
|
||||
async getAll(id: UUID): Promise<MapEventTile[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapEventTile)
|
||||
const repository = this.getEntityManager().getRepository(MapEventTile)
|
||||
return await repository.find({
|
||||
map: id
|
||||
})
|
||||
@ -17,7 +17,7 @@ class MapEventTileRepository extends BaseRepository {
|
||||
|
||||
async getEventTileByMapIdAndPosition(mapId: UUID, positionX: number, positionY: number) {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapEventTile)
|
||||
const repository = this.getEntityManager().getRepository(MapEventTile)
|
||||
return await repository.findOne({
|
||||
map: mapId,
|
||||
positionX: positionX,
|
||||
@ -30,4 +30,4 @@ class MapEventTileRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new MapEventTileRepository()
|
||||
export default MapEventTileRepository
|
||||
|
@ -5,7 +5,7 @@ import { MapObject } from '#entities/mapObject'
|
||||
class MapObjectRepository extends BaseRepository {
|
||||
async getById(id: UUID): Promise<MapObject | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapObject)
|
||||
const repository = this.getEntityManager().getRepository(MapObject)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
return null
|
||||
@ -14,7 +14,7 @@ class MapObjectRepository extends BaseRepository {
|
||||
|
||||
async getAll(): Promise<MapObject[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapObject)
|
||||
const repository = this.getEntityManager().getRepository(MapObject)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
return []
|
||||
@ -22,4 +22,4 @@ class MapObjectRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new MapObjectRepository()
|
||||
export default MapObjectRepository
|
||||
|
@ -7,7 +7,7 @@ import { MapObject } from '#entities/mapObject'
|
||||
class MapRepository extends BaseRepository {
|
||||
async getFirst(): Promise<Map | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Map)
|
||||
const repository = this.getEntityManager().getRepository(Map)
|
||||
return await repository.findOne({ id: { $exists: true } })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get first map: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -17,7 +17,7 @@ class MapRepository extends BaseRepository {
|
||||
|
||||
async getAll(): Promise<Map[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Map)
|
||||
const repository = this.getEntityManager().getRepository(Map)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all map: ${error.message}`)
|
||||
@ -27,7 +27,7 @@ class MapRepository extends BaseRepository {
|
||||
|
||||
async getById(id: UUID) {
|
||||
try {
|
||||
const repository = this.em.getRepository(Map)
|
||||
const repository = this.getEntityManager().getRepository(Map)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get map by id: ${error.message}`)
|
||||
@ -37,7 +37,7 @@ class MapRepository extends BaseRepository {
|
||||
|
||||
async getEventTiles(id: UUID): Promise<MapEventTile[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapEventTile)
|
||||
const repository = this.getEntityManager().getRepository(MapEventTile)
|
||||
return await repository.find({ map: id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get map event tiles: ${error.message}`)
|
||||
@ -47,7 +47,7 @@ class MapRepository extends BaseRepository {
|
||||
|
||||
async getFirstEventTile(mapId: UUID, positionX: number, positionY: number): Promise<MapEventTile | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapEventTile)
|
||||
const repository = this.getEntityManager().getRepository(MapEventTile)
|
||||
return await repository.findOne({
|
||||
map: mapId,
|
||||
positionX: positionX,
|
||||
@ -61,7 +61,7 @@ class MapRepository extends BaseRepository {
|
||||
|
||||
async getMapObjects(id: UUID): Promise<MapObject[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(MapObject)
|
||||
const repository = this.getEntityManager().getRepository(MapObject)
|
||||
return await repository.find({ map: id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get map objects: ${error.message}`)
|
||||
@ -70,4 +70,4 @@ class MapRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new MapRepository()
|
||||
export default MapRepository
|
||||
|
@ -5,7 +5,7 @@ import { PasswordResetToken } from '#entities/passwordResetToken'
|
||||
class PasswordResetTokenRepository extends BaseRepository {
|
||||
async getById(id: UUID): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(PasswordResetToken)
|
||||
const repository = this.getEntityManager().getRepository(PasswordResetToken)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
// Handle error
|
||||
@ -15,7 +15,7 @@ class PasswordResetTokenRepository extends BaseRepository {
|
||||
|
||||
async getByUserId(userId: UUID): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(PasswordResetToken)
|
||||
const repository = this.getEntityManager().getRepository(PasswordResetToken)
|
||||
return await repository.findOne({
|
||||
user: userId
|
||||
})
|
||||
@ -27,7 +27,7 @@ class PasswordResetTokenRepository extends BaseRepository {
|
||||
|
||||
async getByToken(token: string): Promise<any> {
|
||||
try {
|
||||
const repository = this.em.getRepository(PasswordResetToken)
|
||||
const repository = this.getEntityManager().getRepository(PasswordResetToken)
|
||||
return await repository.findOne({ token })
|
||||
} catch (error: any) {
|
||||
// Handle error
|
||||
@ -36,4 +36,4 @@ class PasswordResetTokenRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new PasswordResetTokenRepository()
|
||||
export default PasswordResetTokenRepository
|
||||
|
@ -5,7 +5,7 @@ import { Sprite } from '#entities/sprite'
|
||||
class SpriteRepository extends BaseRepository {
|
||||
async getById(id: UUID, populate?: any) {
|
||||
try {
|
||||
const repository = this.em.getRepository(Sprite)
|
||||
const repository = this.getEntityManager().getRepository(Sprite)
|
||||
return await repository.findOne({ id }, { populate })
|
||||
} catch (error: any) {
|
||||
return null
|
||||
@ -14,7 +14,7 @@ class SpriteRepository extends BaseRepository {
|
||||
|
||||
async getAll(populate?: any): Promise<Sprite[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Sprite)
|
||||
const repository = this.getEntityManager().getRepository(Sprite)
|
||||
return await repository.findAll({ populate })
|
||||
} catch (error: any) {
|
||||
return []
|
||||
@ -22,4 +22,4 @@ class SpriteRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new SpriteRepository()
|
||||
export default SpriteRepository
|
||||
|
@ -3,14 +3,14 @@ import { FilterValue } from '@mikro-orm/core'
|
||||
import { BaseRepository } from '#application/base/baseRepository'
|
||||
import { UUID } from '#application/types'
|
||||
import { unduplicateArray } from '#application/utilities'
|
||||
import { Tile } from '#entities/tile'
|
||||
import { Map } from '#entities/map'
|
||||
import { Tile } from '#entities/tile'
|
||||
import MapService from '#services/mapService'
|
||||
|
||||
class TileRepository extends BaseRepository {
|
||||
async getById(id: UUID) {
|
||||
try {
|
||||
const repository = this.em.getRepository(Tile)
|
||||
const repository = this.getEntityManager().getRepository(Tile)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
return null
|
||||
@ -19,7 +19,7 @@ class TileRepository extends BaseRepository {
|
||||
|
||||
async getByIds(ids: UUID[]) {
|
||||
try {
|
||||
const repository = this.em.getRepository(Tile)
|
||||
const repository = this.getEntityManager().getRepository(Tile)
|
||||
return await repository.find({
|
||||
id: ids
|
||||
})
|
||||
@ -30,7 +30,7 @@ class TileRepository extends BaseRepository {
|
||||
|
||||
async getAll() {
|
||||
try {
|
||||
const repository = this.em.getRepository(Tile)
|
||||
const repository = this.getEntityManager().getRepository(Tile)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
return []
|
||||
@ -39,8 +39,8 @@ class TileRepository extends BaseRepository {
|
||||
|
||||
async getByMapId(mapId: UUID) {
|
||||
try {
|
||||
const repository = this.em.getRepository(Map)
|
||||
const tileRepository = this.em.getRepository(Tile)
|
||||
const repository = this.getEntityManager().getRepository(Map)
|
||||
const tileRepository = this.getEntityManager().getRepository(Tile)
|
||||
|
||||
const map = await repository.findOne({ id: mapId })
|
||||
if (!map) return []
|
||||
@ -56,4 +56,4 @@ class TileRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new TileRepository()
|
||||
export default TileRepository
|
||||
|
@ -5,7 +5,7 @@ import { User } from '#entities/user'
|
||||
class UserRepository extends BaseRepository {
|
||||
async getById(id: UUID) {
|
||||
try {
|
||||
const repository = this.em.getRepository(User)
|
||||
const repository = this.getEntityManager().getRepository(User)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get user by ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -15,7 +15,7 @@ class UserRepository extends BaseRepository {
|
||||
|
||||
async getByUsername(username: string) {
|
||||
try {
|
||||
const repository = this.em.getRepository(User)
|
||||
const repository = this.getEntityManager().getRepository(User)
|
||||
return await repository.findOne({ username })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get user by username: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -25,7 +25,7 @@ class UserRepository extends BaseRepository {
|
||||
|
||||
async getByEmail(email: string) {
|
||||
try {
|
||||
const repository = this.em.getRepository(User)
|
||||
const repository = this.getEntityManager().getRepository(User)
|
||||
return await repository.findOne({ email })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get user by email: ${error instanceof Error ? error.message : String(error)}`)
|
||||
@ -34,4 +34,4 @@ class UserRepository extends BaseRepository {
|
||||
}
|
||||
}
|
||||
|
||||
export default new UserRepository()
|
||||
export default UserRepository
|
||||
|
@ -1,16 +1,15 @@
|
||||
import { BaseRepository } from '#application/base/baseRepository'
|
||||
import { gameLogger } from '#application/logger'
|
||||
import { World } from '#entities/world'
|
||||
|
||||
class WorldRepository extends BaseRepository {
|
||||
async getFirst() {
|
||||
try {
|
||||
const repository = this.em.getRepository(World)
|
||||
const repository = this.getEntityManager().getRepository(World)
|
||||
return await repository.findOne({ date: { $exists: true } })
|
||||
} catch (error: any) {
|
||||
gameLogger.error(`Failed to get first world: ${error instanceof Error ? error.message : String(error)}`)
|
||||
this.logger.error(`Failed to get first world: ${error instanceof Error ? error.message : String(error)}`)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default new WorldRepository()
|
||||
export default WorldRepository
|
||||
|
Reference in New Issue
Block a user