diff --git a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/messaging/event/EventCheckHelper.java b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/messaging/event/EventCheckHelper.java index 710958559..ec1e1fcef 100644 --- a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/messaging/event/EventCheckHelper.java +++ b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/messaging/event/EventCheckHelper.java @@ -499,7 +499,7 @@ public class EventCheckHelper { } public void loanAccountDelinquencyPauseChangedBusinessEventCheck(Long loanId) throws IOException { - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "all", "", "").execute(); List delinquencyPausePeriodsActual = loanDetails.body().getDelinquent() .getDelinquencyPausePeriods(); diff --git a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanDelinquencyStepDef.java b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanDelinquencyStepDef.java index 504633f82..65d186c6e 100644 --- a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanDelinquencyStepDef.java +++ b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanDelinquencyStepDef.java @@ -94,7 +94,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); Integer loanStatus = loanDetails.body().getStatus().getId(); @@ -517,7 +517,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); List installmentLevelDelinquency = loanDetails.body().getDelinquent() .getInstallmentLevelDelinquency() == null ? null : loanDetails.body().getDelinquent().getInstallmentLevelDelinquency(); @@ -534,7 +534,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { String expectedDelinquencyRangeValue = expectedDelinquencyRange.getValue(); expectedValuesList.set(0, expectedDelinquencyRangeValue); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); String actualDelinquencyRangeValue = loanDetails.body().getDelinquencyRange() == null ? "NO_DELINQUENCY" : loanDetails.body().getDelinquencyRange().getClassification(); @@ -559,7 +559,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { String expectedDelinquencyRangeValue = expectedDelinquencyRange.getValue(); expectedValuesList.set(0, expectedDelinquencyRangeValue); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); String actualDelinquencyRangeValue = loanDetails.body().getDelinquencyRange() == null ? "NO_DELINQUENCY" @@ -581,7 +581,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); List installmentLevelDelinquency = loanDetails.body().getDelinquent() .getInstallmentLevelDelinquency(); @@ -612,7 +612,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { long loanId = loanResponse.body().getLoanId(); List> expectedData = table.asLists(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); List delinquencyPausePeriods = loanDetails.body().getDelinquent() @@ -639,7 +639,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); String actualDate = FORMATTER.format(loanDetails.body().getDelinquent().getNextPaymentDueDate()); @@ -669,7 +669,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); DelinquencyRangeData delinquencyRange = loanDetails.body().getDelinquencyRange(); GetLoansLoanIdDelinquencySummary delinquent = loanDetails.body().getDelinquent(); @@ -741,7 +741,7 @@ public class LoanDelinquencyStepDef extends AbstractStepDef { Response loanResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanResponse.body().getLoanId(); - Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); Double expectedLastRepaymentAmount1 = Double.valueOf(expectedLastRepaymentAmount); diff --git a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanStepDef.java b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanStepDef.java index 9b715b1d8..919344083 100644 --- a/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanStepDef.java +++ b/fineract-e2e-tests-core/src/test/java/org/apache/fineract/test/stepdef/loan/LoanStepDef.java @@ -2210,7 +2210,7 @@ public class LoanStepDef extends AbstractStepDef { Response loanCreateResponse = testContext().get(TestContextKey.LOAN_CREATE_RESPONSE); long loanId = loanCreateResponse.body().getLoanId(); - Response loanDetailsResponse = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + Response loanDetailsResponse = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetailsResponse); testContext().set(TestContextKey.LOAN_RESPONSE, loanDetailsResponse); @@ -3299,7 +3299,7 @@ public class LoanStepDef extends AbstractStepDef { assert loanResponse.body() != null; final long loanId = loanResponse.body().getLoanId(); - final Response loanDetails = loansApi.retrieveLoan(loanId, false, "", "", "").execute(); + final Response loanDetails = loansApi.retrieveLoan(loanId, false, "collection", "", "").execute(); ErrorHelper.checkSuccessfulApiCall(loanDetails); assert loanDetails.body() != null; diff --git a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResource.java b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResource.java index 5861a8d7a..7e9ca5252 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResource.java +++ b/fineract-provider/src/main/java/org/apache/fineract/portfolio/loanaccount/api/LoansApiResource.java @@ -1037,7 +1037,7 @@ public class LoansApiResource { List loanTermVariations = null; Collection loanCollateralManagements; Collection loanCollateralManagementData = new ArrayList<>(); - CollectionData collectionData = this.delinquencyReadPlatformService.calculateLoanCollectionData(resolvedLoanId); + CollectionData collectionData = null; final Set mandatoryResponseParameters = new HashSet<>(); final Set associationParameters = ApiParameterHelper.extractAssociationsForResponseIfProvided(uriInfo.getQueryParameters()); @@ -1062,6 +1062,11 @@ public class LoansApiResource { } } + if (associationParameters.contains(DataTableApiConstant.collectionAssociateParamName)) { + mandatoryResponseParameters.add(DataTableApiConstant.collectionAssociateParamName); + collectionData = this.delinquencyReadPlatformService.calculateLoanCollectionData(resolvedLoanId); + } + if (associationParameters.contains(DataTableApiConstant.transactionsAssociateParamName)) { mandatoryResponseParameters.add(DataTableApiConstant.transactionsAssociateParamName); loanRepayments = this.loanReadPlatformService.retrieveLoanTransactions(resolvedLoanId);