fix: unable to create a loan account when floating interest rate is used #1755 (#1761)

now we can create loan account when floating interest rate was used

Fixes: #1755
This commit is contained in:
pc_11
2023-05-29 22:20:54 +05:30
committed by GitHub
parent 8bee3f2f51
commit d9f06aa6ef
3 changed files with 31 additions and 9 deletions
@@ -126,7 +126,8 @@ export class LoansAccountTermsStepComponent implements OnInit, OnChanges {
'graceOnInterestCharged': this.loansAccountTermsData.graceOnInterestCharged,
'fixedEmiAmount': this.loansAccountTermsData.fixedEmiAmount,
'maxOutstandingLoanBalance': this.loansAccountTermsData.maxOutstandingLoanBalance,
'transactionProcessingStrategyCode': this.loansAccountTermsData.transactionProcessingStrategyCode
'transactionProcessingStrategyCode': this.loansAccountTermsData.transactionProcessingStrategyCode,
'interestRateDifferential':this.loansAccountTermsData.interestRateDifferential
});
this.multiDisburseLoan = this.loansAccountTermsData.multiDisburseLoan;
@@ -208,7 +209,8 @@ export class LoansAccountTermsStepComponent implements OnInit, OnChanges {
'graceOnInterestCharged': this.loansAccountTermsData.graceOnInterestCharged,
'fixedEmiAmount': this.loansAccountTermsData.fixedEmiAmount,
'maxOutstandingLoanBalance': this.loansAccountTermsData.maxOutstandingLoanBalance,
'transactionProcessingStrategyCode': this.loansAccountTermsData.transactionProcessingStrategyCode
'transactionProcessingStrategyCode': this.loansAccountTermsData.transactionProcessingStrategyCode,
'interestRateDifferential':this.loansAccountTermsData.interestRateDifferential
});
}
this.createloansAccountTermsForm();
@@ -269,6 +271,7 @@ export class LoansAccountTermsStepComponent implements OnInit, OnChanges {
'fixedEmiAmount': [''],
'isTopup': [''],
'maxOutstandingLoanBalance': [''],
'interestRateDifferential':[''],
'transactionProcessingStrategyCode': ['', Validators.required]
});
}
@@ -38,6 +38,7 @@ export class LoanProductSettingsStepComponent implements OnInit {
.subscribe((isLinkedToFloatingInterestRates: any) => {
if (isLinkedToFloatingInterestRates) {
this.loanProductSettingsForm.get('isInterestRecalculationEnabled').setValue(true);
this.loanProductSettingsForm.get('allowPartialPeriodInterestCalcualtion').setValue(true);
}
});
@@ -6,7 +6,10 @@
<mat-form-field fxFlex="31%">
<mat-label>Minimum</mat-label>
<input type="number" matInput formControlName="minPrincipal">
<input type="number" matInput formControlName="minPrincipal" [min]="0">
<mat-error>
Minimum Value must be <strong>greater equal to than 0</strong>
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="31%">
@@ -19,7 +22,10 @@
<mat-form-field fxFlex="31%">
<mat-label>Maximum</mat-label>
<input type="number" matInput formControlName="maxPrincipal">
<input type="number" matInput formControlName="maxPrincipal" [min]="0">
<mat-error>
Maximum Value must be <strong>greater equal to than 0</strong> and must be greater than <strong>Minimum Principal</strong>
</mat-error>
</mat-form-field>
<mat-checkbox fxFlex="31%" labelPosition="before" formControlName="allowApprovedDisbursedAmountsOverApplied">
@@ -44,7 +50,10 @@
<mat-form-field fxFlex="31%">
<mat-label>Minimum</mat-label>
<input type="number" matInput formControlName="minNumberOfRepayments">
<input type="number" matInput formControlName="minNumberOfRepayments" [min]="0">
<mat-error>
Minimum Value must be <strong>greater equal to than 0</strong>
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="31%">
@@ -57,7 +66,10 @@
<mat-form-field fxFlex="31%">
<mat-label>Maximum</mat-label>
<input type="number" matInput formControlName="maxNumberOfRepayments">
<input type="number" matInput formControlName="maxNumberOfRepayments" [min]="0">
<mat-error>
Maximum Value must be <strong>greater equal to than 0</strong> and must be greater than <strong>Minimum Principal</strong>
</mat-error>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
@@ -74,7 +86,10 @@
<mat-form-field fxFlex="23%">
<mat-label>Minimum</mat-label>
<input type="number" matInput formControlName="minInterestRatePerPeriod">
<input type="number" matInput formControlName="minInterestRatePerPeriod" [min]="0.1">
<mat-error>
Minimum Value must be <strong>greater than 0</strong>
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="23%">
@@ -87,7 +102,10 @@
<mat-form-field fxFlex="23%">
<mat-label>Maximum</mat-label>
<input type="number" matInput formControlName="maxInterestRatePerPeriod">
<input type="number" matInput formControlName="maxInterestRatePerPeriod" [min]="0.2">
<mat-error>
Maximum Value must be <strong>greater equal to than 0</strong> and must be greater than <strong>Minimum Principal</strong>
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="23%">
@@ -134,7 +152,7 @@
<mat-form-field fxFlex="31%">
<mat-label>Minimum</mat-label>
<input type="number" matInput formControlName="minDifferentialLendingRate" required>
<input type="number" matInput formControlName="minDifferentialLendingRate" [min]="0" required>
<mat-error>
Minimum interest rate is <strong>required</strong>
</mat-error>