From 570f44ac93f91ec61b515b7396a8ff4744f38030 Mon Sep 17 00:00:00 2001 From: Jose Alberto Hernandez Date: Mon, 30 Jun 2025 20:55:29 -0500 Subject: [PATCH] FINERACT-2181: Swagger enhancement for PostSavingsProductsRequest --- .../test/factory/SavingsProductRequestFactory.java | 6 +++--- .../api/SavingsProductsApiResourceSwagger.java | 12 +++++++++++- .../savings/base/BaseSavingsIntegrationTest.java | 7 ++++++- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/factory/SavingsProductRequestFactory.java b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/factory/SavingsProductRequestFactory.java index 54baa519b..cfa391438 100644 --- a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/factory/SavingsProductRequestFactory.java +++ b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/factory/SavingsProductRequestFactory.java @@ -18,8 +18,8 @@ */ package org.apache.fineract.test.factory; -import java.util.HashSet; -import java.util.Set; +import java.util.ArrayList; +import java.util.List; import org.apache.fineract.client.models.PostSavingsCharges; import org.apache.fineract.client.models.PostSavingsProductsRequest; @@ -43,7 +43,7 @@ public final class SavingsProductRequestFactory { private SavingsProductRequestFactory() {} public static PostSavingsProductsRequest defaultSavingsProductRequest() { - Set charges = new HashSet<>(); + List charges = new ArrayList<>(); return new PostSavingsProductsRequest().name(DEFAULT_SAVINGS_PRODUCT_NAME)// .shortName(DEFAULT_SAVINGS_PRODUCT_SHORT_NAME)// diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/api/SavingsProductsApiResourceSwagger.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/api/SavingsProductsApiResourceSwagger.java index 724a781d0..526ccb254 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/api/SavingsProductsApiResourceSwagger.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/savings/api/SavingsProductsApiResourceSwagger.java @@ -69,9 +69,19 @@ final class SavingsProductsApiResourceSwagger { public Integer interestCalculationDaysInYearType; @Schema(example = "1") public Integer accountingRule; - public Set charges; + public List charges; @Schema(example = "accountMappingForPayment") public String accountMappingForPayment; + @Schema(example = "false") + public Boolean withdrawalFeeForTransfers; + @Schema(example = "false") + public Boolean enforceMinRequiredBalance; + @Schema(example = "false") + public Boolean allowOverdraft; + @Schema(example = "false") + public Boolean withHoldTax; + @Schema(example = "false") + public Boolean isDormancyTrackingActive; } @Schema(description = "PostSavingsProductsResponse") diff --git a/integration-tests/src/test/java/org/apache/fineract/integrationtests/savings/base/BaseSavingsIntegrationTest.java b/integration-tests/src/test/java/org/apache/fineract/integrationtests/savings/base/BaseSavingsIntegrationTest.java index 95873fb26..9de4dbbea 100644 --- a/integration-tests/src/test/java/org/apache/fineract/integrationtests/savings/base/BaseSavingsIntegrationTest.java +++ b/integration-tests/src/test/java/org/apache/fineract/integrationtests/savings/base/BaseSavingsIntegrationTest.java @@ -119,7 +119,12 @@ public class BaseSavingsIntegrationTest extends IntegrationTest { .accountingRule(1) // none .interestCalculationDaysInYearType(DaysInYearType.DAYS_365).interestCompoundingPeriodType(InterestPeriodType.DAILY) .interestCalculationType(InterestCalculationType.AVERAGE_DAILY_BALANCE) // - .interestPostingPeriodType(InterestPeriodType.DAILY);// + .interestPostingPeriodType(InterestPeriodType.DAILY) // + .withdrawalFeeForTransfers(false) // + .enforceMinRequiredBalance(false) // + .allowOverdraft(false) // + .withHoldTax(false) // + .isDormancyTrackingActive(false); // } protected PostSavingsProductsResponse createProduct(PostSavingsProductsRequest productsRequest) {