Um repositorio pode conhecer outro(s) repositorio(s)? Imagine que tenhamos algumas classes como Order e Item, sendo que o item possui o orderId, e eu queira realizar uma consulta para retornar o Order junto com seus Item.
Exemplo
{
order: {
id: 1,
items: [
{ name: 'ABC', price: 10, quantity: 1 },
{ name: 'DEF', price: 20, quantity: 2 },
{ name: 'GHI', price: 30, quantity: 3 },
]
}
}
Nesse caso, seria viavel a implementacao concreta de OrderRepository
conhecer ItemRepository
para retornar os dados?
Diante dessa duvida, algumas coisas me passaram pela cabeca, como:
- fazer os sql dentro da implementacao concreta de
OrderRepository
pegando tanto o order e depois seus items e retornar eles mapeados - pegar a order atraves da implementacao concreta de
OrderRepository
e passar o id dela para implementacao concreta deItemRepository
e depois fazer o mapeamento de ambos - usar
ItemRepository
dentro da implementacao concreta deOrderRepository
.