forked from noxious/server
Almost finalised refactoring
This commit is contained in:
@ -1,12 +1,13 @@
|
||||
import { BaseRepository } from '#application/base/baseRepository'
|
||||
import { UUID } from '#application/types'
|
||||
import { Character } from '#entities/character'
|
||||
import { LoadHint, Populate } from '@mikro-orm/core'
|
||||
|
||||
class CharacterRepository extends BaseRepository {
|
||||
async getByUserId(userId: UUID): Promise<Character[]> {
|
||||
async getByUserId(userId: UUID, populate?: LoadHint<Character, '*'>): Promise<Character[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Character)
|
||||
return await repository.find({ user: userId })
|
||||
return await repository.find({ user: userId }, { populate: populate as Populate<Character> })
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get character by user ID: ${error instanceof Error ? error.message : String(error)}`)
|
||||
return []
|
||||
|
@ -19,7 +19,7 @@ class CharacterTypeRepository extends BaseRepository {
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
this.logger.error(`Failed to get all character types: ${error instanceof Error ? error.message : String(error)}`)
|
||||
return null
|
||||
return []
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1,22 +1,23 @@
|
||||
import { BaseRepository } from '#application/base/baseRepository'
|
||||
import { UUID } from '#application/types'
|
||||
import { MapObject } from '#entities/mapObject'
|
||||
|
||||
class MapObjectRepository extends BaseRepository {
|
||||
async getById(id: UUID): Promise<any> {
|
||||
async getById(id: UUID): Promise<MapObject | null> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Object)
|
||||
const repository = this.em.getRepository(MapObject)
|
||||
return await repository.findOne({ id })
|
||||
} catch (error: any) {
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
async getAll(): Promise<any> {
|
||||
async getAll(): Promise<MapObject[]> {
|
||||
try {
|
||||
const repository = this.em.getRepository(Object)
|
||||
const repository = this.em.getRepository(MapObject)
|
||||
return await repository.findAll()
|
||||
} catch (error: any) {
|
||||
return null
|
||||
return []
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user