Rework default behaviour for pagination

This commit is contained in:
Toast 2025-02-02 17:48:21 +01:00
parent 02c2f37379
commit 46232de7f0
2 changed files with 3 additions and 6 deletions

View file

@ -6,10 +6,10 @@ export class PaginationDto {
@IsNumber() @IsNumber()
@Type(() => Number) @Type(() => Number)
@Min(1) @Min(1)
page?: number = 1; page?: number;
@IsOptional() @IsOptional()
@IsNumber() @IsNumber()
@Type(() => Number) @Type(() => Number)
@Min(1) @Min(1)
limit?: number = 1; limit?: number;
} }

View file

@ -14,11 +14,8 @@ export class ShowsService {
} }
async findAll(page: number, showsPerPage: number): Promise<any> { async findAll(page: number, showsPerPage: number): Promise<any> {
// Default value is 1 and I can't think any reason why you would want
// a single item per page, so if showsPerPage is 1 then just don't do
// any pagination at all
let shows; let shows;
if (showsPerPage != 1) { if (showsPerPage !== undefined) {
const skip = (page - 1) * showsPerPage; const skip = (page - 1) * showsPerPage;
shows = await this.showModel.find().skip(skip).limit(showsPerPage); shows = await this.showModel.find().skip(skip).limit(showsPerPage);
} else { } else {