1
0
forked from noxious/server

OOP is my passion ( ͡° ͜ʖ ͡°)

This commit is contained in:
2025-01-04 18:35:53 +01:00
parent 0b4420f956
commit 067976c54a
46 changed files with 165 additions and 164 deletions

View File

@ -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