Merge pull request #2336 from logoutdhaval/fineract-1613
FINERACT-1613:Savings Interest Posting Job
This commit is contained in:
+4
@@ -121,6 +121,10 @@ public class SavingsAccountSummaryData implements Serializable {
|
|||||||
return this.availableBalance;
|
return this.availableBalance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public BigDecimal getAccountBalance() {
|
||||||
|
return accountBalance;
|
||||||
|
}
|
||||||
|
|
||||||
public BigDecimal getTotalOverdraftInterestDerived() {
|
public BigDecimal getTotalOverdraftInterestDerived() {
|
||||||
return this.totalOverdraftInterestDerived;
|
return this.totalOverdraftInterestDerived;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -302,7 +302,7 @@ public class SavingsSchedularInterestPoster implements Callable<Void> {
|
|||||||
savingsAccountSummaryData.getTotalWithdrawals(), savingsAccountSummaryData.getTotalInterestEarned(),
|
savingsAccountSummaryData.getTotalWithdrawals(), savingsAccountSummaryData.getTotalInterestEarned(),
|
||||||
savingsAccountSummaryData.getTotalInterestPosted(), savingsAccountSummaryData.getTotalWithdrawalFees(),
|
savingsAccountSummaryData.getTotalInterestPosted(), savingsAccountSummaryData.getTotalWithdrawalFees(),
|
||||||
savingsAccountSummaryData.getTotalFeeCharge(), savingsAccountSummaryData.getTotalPenaltyCharge(),
|
savingsAccountSummaryData.getTotalFeeCharge(), savingsAccountSummaryData.getTotalPenaltyCharge(),
|
||||||
savingsAccountSummaryData.getTotalAnnualFees(), savingsAccountSummaryData.getAvailableBalance(),
|
savingsAccountSummaryData.getTotalAnnualFees(), savingsAccountSummaryData.getAccountBalance(),
|
||||||
savingsAccountSummaryData.getTotalOverdraftInterestDerived(), savingsAccountSummaryData.getTotalWithholdTax(),
|
savingsAccountSummaryData.getTotalOverdraftInterestDerived(), savingsAccountSummaryData.getTotalWithholdTax(),
|
||||||
Date.from(savingsAccountSummaryData.getLastInterestCalculationDate().atStartOfDay(DateUtils.getDateTimeZoneOfTenant())
|
Date.from(savingsAccountSummaryData.getLastInterestCalculationDate().atStartOfDay(DateUtils.getDateTimeZoneOfTenant())
|
||||||
.toInstant()),
|
.toInstant()),
|
||||||
|
|||||||
+26
@@ -65,6 +65,32 @@ public class SavingsInterestPostingJobIntegrationTest {
|
|||||||
this.scheduleJobHelper = new SchedulerJobHelper(requestSpec);
|
this.scheduleJobHelper = new SchedulerJobHelper(requestSpec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testSavingsBalanceCheckAfterDailyInterestPostingJob() {
|
||||||
|
// client activation, savings activation and 1st transaction date
|
||||||
|
final String startDate = "10 April 2022";
|
||||||
|
final String jobName = "Post Interest For Savings";
|
||||||
|
final Integer clientID = ClientHelper.createClient(this.requestSpec, this.responseSpec, startDate);
|
||||||
|
Assertions.assertNotNull(clientID);
|
||||||
|
|
||||||
|
final Integer savingsId = createSavingsAccountDailyPosting(clientID, startDate);
|
||||||
|
|
||||||
|
this.savingsAccountHelper.depositToSavingsAccount(savingsId, "10000", startDate, CommonConstants.RESPONSE_RESOURCE_ID);
|
||||||
|
|
||||||
|
/***
|
||||||
|
* Runs Post interest posting job and verify the new account created with accounting configuration set as none
|
||||||
|
* is picked up by job
|
||||||
|
*/
|
||||||
|
this.scheduleJobHelper.executeAndAwaitJob(jobName);
|
||||||
|
Object transactionObj = this.savingsAccountHelper.getSavingsDetails(savingsId, "transactions");
|
||||||
|
ArrayList<HashMap<String, Object>> transactions = (ArrayList<HashMap<String, Object>>) transactionObj;
|
||||||
|
HashMap<String, Object> interestPostingTransaction = transactions.get(transactions.size() - 48);
|
||||||
|
for (Map.Entry<String, Object> entry : interestPostingTransaction.entrySet()) {
|
||||||
|
LOG.info("{} - {}", entry.getKey(), entry.getValue().toString());
|
||||||
|
}
|
||||||
|
assertEquals("10129.582", interestPostingTransaction.get("runningBalance").toString(), "Equality check for Balance");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testSavingsDailyInterestPostingJob() {
|
public void testSavingsDailyInterestPostingJob() {
|
||||||
// client activation, savings activation and 1st transaction date
|
// client activation, savings activation and 1st transaction date
|
||||||
|
|||||||
Reference in New Issue
Block a user