Krishna Mewara created FINERACT-2632:
----------------------------------------
Summary: Add missing fields to Clients Swagger spec for type-safe
Feign client generation
Key: FINERACT-2632
URL: https://issues.apache.org/jira/browse/FINERACT-2632
Project: Apache Fineract
Issue Type: Improvement
Reporter: Krishna Mewara
the Clients API Swagger spec in {{ClientsApiResourceSwagger.java}} is missing
several fields that the server accepts and returns. This causes the generated
Feign/Retrofit client models to lack these fields, forcing test code to fall
back to raw JSON construction via RestAssured instead of using type-safe
request objects.
Same class of issue fixed for Savings in FINERACT-2626.
*Missing fields*
{{PostClientsRequest}}
* {{submittedOnDate}} - the submission date used when creating a pending
client ({{{}active=false{}}}). Currently tests must repurpose
{{activationDate}} as a workaround.
{{PostClientsClientIdRequest}}
* {{withdrawalDate}} - required by the {{withdraw}} command
* {{withdrawalReasonId}} - required by the {{withdraw}} command
* {{reopenedDate}} - required by the {{undoRejection}} and {{undoWithdrawal}}
commands
{{PutClientsClientIdRequest}}
* {{firstname}} - the server accepts this field for client name updates
* {{lastname}} - the server accepts this field for client name updates
*Reference: how the server actually handles these fields*
The legacy {{ClientHelper.java}} integration test helper already uses all of
these fields via raw JSON ({{{}getWithdrawClientAsJSON{}}},
{{{}getUndoRejectClientAsJSON{}}}, etc.), and the static Retrofit-style methods
on {{ClientHelper}} (lines 155–182) accept them as typed request parameters.
The server-side command handlers ({{{}ClientsApiResource{}}},
{{{}ClientWritePlatformServiceJpaRepositoryImpl{}}}) process them correctly
only the Swagger spec is incomplete.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)