added endpoint to get offers by crypto id

This commit is contained in:
Kevsl 2024-06-20 10:17:42 +02:00
parent 9cca2e1ede
commit 82549fdad2
2 changed files with 28 additions and 0 deletions

View File

@ -29,6 +29,10 @@ export class OfferController {
getAllOffers(@GetUser() user: User) { getAllOffers(@GetUser() user: User) {
return this.offerService.getOffers(user.id); return this.offerService.getOffers(user.id);
} }
@Get('/crypto/:id')
getOffersByCryptoId(@GetUser() user: User, @Param('id') cryptoId: string) {
return this.offerService.getOffersByCrypto(user.id, cryptoId);
}
@HttpCode(HttpStatus.CREATED) @HttpCode(HttpStatus.CREATED)
@Post('/create') @Post('/create')

View File

@ -31,6 +31,30 @@ export class OfferService {
}); });
} }
async getOffersByCrypto(userId: string, cryptoId: string) {
await checkUserHasAccount(userId);
return this.prisma.offer.findMany({
where: {
id_crypto: cryptoId,
},
orderBy: {
amount: 'desc',
},
select: {
id: true,
User: {
select: {
pseudo: true,
},
},
amount: true,
created_at: true,
id_user: true,
Crypto: true,
},
});
}
async createOffer(userId: string, dto: OfferDto) { async createOffer(userId: string, dto: OfferDto) {
await checkUserHasAccount(userId); await checkUserHasAccount(userId);