Ajusta endpoints
This commit is contained in:
@@ -7,11 +7,12 @@ import {
|
||||
Body,
|
||||
Query,
|
||||
} from '@nestjs/common';
|
||||
import { videos, Prisma, EVideoSituation } from 'generated/prisma';
|
||||
import { videos, Prisma, video_situation } from 'generated/prisma';
|
||||
|
||||
import { VideosService } from './videos.service';
|
||||
import { VideoResponseDto } from './dto/video-response.dto';
|
||||
import { PaginatedQueryDto, PaginatedResponse } from './dto/paginated.dto';
|
||||
import { EBooleanPipe } from './videos.pipe';
|
||||
|
||||
@Controller('videos')
|
||||
export class VideosController {
|
||||
@@ -20,13 +21,21 @@ export class VideosController {
|
||||
@Get()
|
||||
async list(
|
||||
@Query() query: PaginatedQueryDto,
|
||||
@Query('situation') situation?: EVideoSituation,
|
||||
): Promise<PaginatedResponse<VideoResponseDto>> {
|
||||
return this.videosService.listPaginated(
|
||||
query.page,
|
||||
query.perPage,
|
||||
situation,
|
||||
);
|
||||
@Query('situation') situation?: video_situation,
|
||||
@Query('pageable', new EBooleanPipe(true)) pageable: boolean = true,
|
||||
): Promise<PaginatedResponse<VideoResponseDto> | VideoResponseDto[]> {
|
||||
const situacao = situation?.toLocaleUpperCase() as video_situation;
|
||||
|
||||
if (pageable || query.page || query.perPage) {
|
||||
return this.videosService.listPaginated(
|
||||
Number(query.page ?? 1),
|
||||
Number(query.perPage ?? 10),
|
||||
query.direction as 'asc' | 'desc',
|
||||
situacao,
|
||||
);
|
||||
}
|
||||
|
||||
return this.videosService.list(situacao);
|
||||
}
|
||||
|
||||
@Get(':id')
|
||||
@@ -46,9 +55,4 @@ export class VideosController {
|
||||
async delete(@Param('id') id: string): Promise<videos> {
|
||||
return this.videosService.delete(Number(id));
|
||||
}
|
||||
|
||||
@Get('situation/:s')
|
||||
async listBySituation(@Param('s') s: EVideoSituation): Promise<videos[]> {
|
||||
return this.videosService.listBySituation(s);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user