DDS: Agent settlement (Agent Tran), Close Party account, reports (Supplementary-DDS/Master Data Export/Close Register), Party-Savings link, product category field
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-1) (push) Canceled after 0s
Fineract Build & Cucumber tests (without E2E tests) / verify (main, build-core) (push) Canceled after 0s
Fineract Build & Cucumber tests (without E2E tests) / verify (main, cucumber) (push) Canceled after 0s
Fineract Build & Cucumber tests (without E2E tests) / verify (progressive-loan, build-progressive-loan) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 5 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 6 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 7 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 8 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 9 of 10) (push) Canceled after 0s
Fineract Docker Builds / build (false, docker-compose-postgresql.yml, postgresql) (push) Canceled after 0s
Fineract Docker Builds / build (true, docker-compose.yml, mariadb) (push) Canceled after 0s
Fineract Documentation build / build (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 1 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 10 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 2 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 3 of 10) (push) Canceled after 0s
Fineract E2E Tests / E2E Tests (Shard 4 of 10) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MariaDB / test (test-core-5) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-1) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - MySQL / test (test-core-5) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-1) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-2) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-3) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-4) (push) Canceled after 0s
Fineract Cargo & Unit- & Integration tests - PostgreSQL / test (test-core-5) (push) Canceled after 0s
Fineract Liquibase Only mode - PostgreSQL / test (push) Canceled after 0s
Fineract Messaging Smoke Tests / Smoke Test with ActiveMQ (push) Canceled after 0s
Fineract Messaging Smoke Tests / Smoke Test with Kafka (push) Canceled after 0s

This commit is contained in:
tarunmalviya
2026-08-25 10:33:37 +05:30
parent 9eac40bb5c
commit 37c961f713
101 changed files with 8305 additions and 1 deletions
@@ -495,6 +495,7 @@ public final class FixedDepositProductData extends DepositProductData {
private Boolean allowDebitTxnAfterDueDate;
private Boolean accountClosedZeroBalanceInDayClosing;
private String balanceFrequency;
private String productCategory;
private Boolean isPendingApproval;
// Template option setters
@@ -542,6 +543,7 @@ public final class FixedDepositProductData extends DepositProductData {
public void setAllowDebitTxnAfterDueDate(Boolean v) { this.allowDebitTxnAfterDueDate = v; }
public void setAccountClosedZeroBalanceInDayClosing(Boolean v) { this.accountClosedZeroBalanceInDayClosing = v; }
public void setBalanceFrequency(String v) { this.balanceFrequency = v; }
public void setProductCategory(String v) { this.productCategory = v; }
public void setIsPendingApproval(Boolean v) { this.isPendingApproval = v; }
// CBS field getters
@@ -604,6 +606,7 @@ public final class FixedDepositProductData extends DepositProductData {
this.allowDebitTxnAfterDueDate = src.allowDebitTxnAfterDueDate;
this.accountClosedZeroBalanceInDayClosing = src.accountClosedZeroBalanceInDayClosing;
this.balanceFrequency = src.balanceFrequency;
this.productCategory = src.productCategory;
this.withdrawalFeeForTransfers = src.withdrawalFeeForTransfers;
}
@@ -83,6 +83,7 @@ public final class RecurringDepositProductData extends DepositProductData {
private Boolean enableLockinPeriod;
private String balanceFrequency;
private Boolean accountClosedZeroBalanceInDayClosing;
private String productCategory;
private Boolean balanceSwapOption;
private Boolean msme;
private Boolean autoDebitFacility;
@@ -126,6 +127,7 @@ public final class RecurringDepositProductData extends DepositProductData {
public void setEnableLockinPeriod(Boolean v) { this.enableLockinPeriod = v; }
public void setBalanceFrequency(String v) { this.balanceFrequency = v; }
public void setAccountClosedZeroBalanceInDayClosing(Boolean v) { this.accountClosedZeroBalanceInDayClosing = v; }
public void setProductCategory(String v) { this.productCategory = v; }
public void setBalanceSwapOption(Boolean v) { this.balanceSwapOption = v; }
public void setMsme(Boolean v) { this.msme = v; }
public void setAutoDebitFacility(Boolean v) { this.autoDebitFacility = v; }
@@ -167,6 +169,7 @@ public final class RecurringDepositProductData extends DepositProductData {
this.enableLockinPeriod = src.enableLockinPeriod;
this.balanceFrequency = src.balanceFrequency;
this.accountClosedZeroBalanceInDayClosing = src.accountClosedZeroBalanceInDayClosing;
this.productCategory = src.productCategory;
this.balanceSwapOption = src.balanceSwapOption;
this.msme = src.msme;
this.autoDebitFacility = src.autoDebitFacility;
@@ -124,7 +124,7 @@ public class SavingsProductDataValidator {
SavingsApiConstants.depositLimitKycParamName,
// Additional custom fields
SavingsApiConstants.balanceFrequencyParamName, SavingsApiConstants.accountClosedZeroBalanceInDayClosingParamName,
SavingsApiConstants.glAccountIdParamName));
SavingsApiConstants.glAccountIdParamName, SavingsApiConstants.productCategoryParamName));
public void validateForCreate(final String json) {
@@ -297,6 +297,9 @@ public class SavingsProduct extends AbstractPersistableCustom<Long> {
@Column(name = "account_closed_zero_balance_in_day_closing")
private Boolean accountClosedZeroBalanceInDayClosing = false;
@Column(name = "product_category", length = 50)
private String productCategory;
// RD-specific flags
@Column(name = "balance_swap_option")
private boolean balanceSwapOption = false;
@@ -894,6 +897,13 @@ public class SavingsProduct extends AbstractPersistableCustom<Long> {
this.accountClosedZeroBalanceInDayClosing = newValue;
}
// Update productCategory
if (command.isChangeInStringParameterNamed("productCategory", this.productCategory)) {
final String newValue = command.stringValueOfParameterNamed("productCategory");
actualChanges.put("productCategory", newValue);
this.productCategory = newValue;
}
// Update RD-specific flags (0270 migration fields)
if (command.isChangeInBooleanParameterNamed("balanceSwapOption", this.balanceSwapOption)) {
this.balanceSwapOption = command.booleanPrimitiveValueOfParameterNamed("balanceSwapOption");
@@ -1276,6 +1286,14 @@ public class SavingsProduct extends AbstractPersistableCustom<Long> {
this.accountClosedZeroBalanceInDayClosing = accountClosedZeroBalanceInDayClosing;
}
public String getProductCategory() {
return productCategory;
}
public void setProductCategory(String productCategory) {
this.productCategory = productCategory;
}
public boolean isBalanceSwapOption() { return balanceSwapOption; }
public void setBalanceSwapOption(boolean v) { this.balanceSwapOption = v; }
@@ -282,6 +282,9 @@ public class SavingsProductAssembler {
if (command.parameterExists("accountClosedZeroBalanceInDayClosing")) {
product.setAccountClosedZeroBalanceInDayClosing(command.booleanObjectValueOfParameterNamed("accountClosedZeroBalanceInDayClosing"));
}
if (command.parameterExists("productCategory")) {
product.setProductCategory(command.stringValueOfParameterNamed("productCategory"));
}
return product;
}