From 7ea115318a5c70b5074cc15d82ca070b29d84fa8 Mon Sep 17 00:00:00 2001 From: Florian Eisenmenger Date: Mon, 12 Feb 2024 12:15:28 +0100 Subject: [PATCH] PartnerApi Sorting --- openapi.yaml | 42 +++++++++++++++++++++++++++++----- src/ApiResource/PartnerApi.php | 2 +- 2 files changed, 37 insertions(+), 7 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 046a64b..464096c 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -420,6 +420,32 @@ paths: style: form explode: false allowReserved: false + - + name: type + in: query + description: '' + required: false + deprecated: false + allowEmptyValue: true + schema: + type: string + style: form + explode: false + allowReserved: false + - + name: 'type[]' + in: query + description: '' + required: false + deprecated: false + allowEmptyValue: true + schema: + type: array + items: + type: string + style: form + explode: true + allowReserved: false - name: 'order[name]' in: query @@ -436,7 +462,7 @@ paths: explode: false allowReserved: false - - name: type + name: 'order[city]' in: query description: '' required: false @@ -444,22 +470,26 @@ paths: allowEmptyValue: true schema: type: string + enum: + - asc + - desc style: form explode: false allowReserved: false - - name: 'type[]' + name: 'order[website]' in: query description: '' required: false deprecated: false allowEmptyValue: true schema: - type: array - items: - type: string + type: string + enum: + - asc + - desc style: form - explode: true + explode: false allowReserved: false deprecated: false post: diff --git a/src/ApiResource/PartnerApi.php b/src/ApiResource/PartnerApi.php index 04cb54b..b25c8b0 100644 --- a/src/ApiResource/PartnerApi.php +++ b/src/ApiResource/PartnerApi.php @@ -50,8 +50,8 @@ use Symfony\Component\Validator\Constraints\NotBlank; processor: EntityClassDtoStateProcessor::class, stateOptions: new Options(entityClass: Partner::class) )] -#[ApiFilter(OrderFilter::class, properties: ['name'], arguments: ['orderParameterName' => 'order'])] #[ApiFilter(SearchFilter::class, properties: ['type' => 'exact'])] +#[ApiFilter(OrderFilter::class, properties: ['name', 'city', 'website'], arguments: ['orderParameterName' => 'order'])] class PartnerApi { #[ApiProperty(readable: false, writable: false, identifier: true)]