From 28578d3aa823354e1ab7c83d8a9ea63f32f15c7a Mon Sep 17 00:00:00 2001 From: Gabriel Rosa Date: Wed, 15 Feb 2023 16:46:32 -0300 Subject: [PATCH] FIX: better query params on catalog get all --- docsfera.external.json | 25 +++++++++++++++++++++++-- src/modules/catalog/dtos/index.ts | 27 +++++++++++++++++++++++---- 2 files changed, 46 insertions(+), 6 deletions(-) diff --git a/docsfera.external.json b/docsfera.external.json index 4804bf0..2251d18 100644 --- a/docsfera.external.json +++ b/docsfera.external.json @@ -816,11 +816,32 @@ "type": "string" } }, + { + "name": "size", + "required": false, + "in": "query", + "description": "Número de registros a ser retornado", + "schema": { + "minimum": 1, + "maximum": 10000, + "type": "number" + } + }, + { + "name": "page", + "required": false, + "in": "query", + "description": "Usado para paginação, em conjunto com `size`", + "schema": { + "minimum": 1, + "type": "number" + } + }, { "name": "sort_by", "required": false, "in": "query", - "description": "Data Asset field to sort", + "description": "Campo do data asset para usar na ordenação. Padrão: `created_at`", "schema": { "type": "string" } @@ -829,7 +850,7 @@ "name": "order", "required": false, "in": "query", - "description": "Tipo de ordenação - asc: crescente; desc: decrescente ", + "description": "Tipo de ordenação - `asc`: crescente; `desc`: decrescente ", "schema": { "default": "asc", "enum": [ diff --git a/src/modules/catalog/dtos/index.ts b/src/modules/catalog/dtos/index.ts index 129cbd7..ffccab0 100644 --- a/src/modules/catalog/dtos/index.ts +++ b/src/modules/catalog/dtos/index.ts @@ -117,15 +117,34 @@ export class IDeleteComment { } export class ICatalogAllRequest { + @ApiPropertyOptional({ + description: 'Texto usado para filtrar os ativos no catálogo.', + }) search; - page: string; - size: string; - @ApiPropertyOptional({ description: 'Data Asset field to sort' }) + + @ApiPropertyOptional({ + description: 'Número de registros a ser retornado', + maximum: 10000, + minimum: 1, + }) + size: number; + + @ApiPropertyOptional({ + description: 'Usado para paginação, em conjunto com `size`', + minimum: 1, + }) + page: number; + + @ApiPropertyOptional({ + description: + 'Campo do data asset para usar na ordenação. Padrão: `created_at`', + }) sort_by: string; + @ApiPropertyOptional({ enum: OrderEnum, default: OrderEnum.asc, - description: 'Tipo de ordenação - asc: crescente; desc: decrescente ', + description: 'Tipo de ordenação - `asc`: crescente; `desc`: decrescente ', }) order?: OrderEnum; }