WEB-213: Loan product config - buy down fees accounting
This commit is contained in:
+16
@@ -1042,6 +1042,14 @@
|
||||
[withTitle]="'47%'"
|
||||
>
|
||||
</mifosx-gl-account-display>
|
||||
<mifosx-gl-account-display
|
||||
class="flex-100"
|
||||
*ngIf="accountingMappings.incomeFromBuyDownAccount"
|
||||
[accountTitle]="'Income from Buy down fees'"
|
||||
[glAccount]="accountingMappings.incomeFromBuyDownAccount"
|
||||
[withTitle]="'47%'"
|
||||
>
|
||||
</mifosx-gl-account-display>
|
||||
|
||||
<h4 class="mat-h4 flex-100">{{ 'labels.heading.Expenses' | translate }}</h4>
|
||||
|
||||
@@ -1076,6 +1084,14 @@
|
||||
[withTitle]="'47%'"
|
||||
>
|
||||
</mifosx-gl-account-display>
|
||||
<mifosx-gl-account-display
|
||||
class="flex-100"
|
||||
*ngIf="accountingMappings.buyDownExpenseAccount"
|
||||
[accountTitle]="'Buy down fee Expense'"
|
||||
[glAccount]="accountingMappings.buyDownExpenseAccount"
|
||||
[withTitle]="'47%'"
|
||||
>
|
||||
</mifosx-gl-account-display>
|
||||
|
||||
<h4 class="mat-h4 flex-fill">{{ 'labels.heading.Liabilities' | translate }}</h4>
|
||||
<mifosx-gl-account-display
|
||||
|
||||
+5
@@ -202,11 +202,16 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
|
||||
this.loanProduct.incomeFromCapitalizationAccountId,
|
||||
incomeAccountData
|
||||
),
|
||||
incomeFromBuyDownAccount: this.glAccountLookUp(
|
||||
this.loanProduct.incomeFromBuyDownAccountId,
|
||||
incomeAccountData
|
||||
),
|
||||
|
||||
writeOffAccount: this.glAccountLookUp(this.loanProduct.writeOffAccountId, expenseAccountData),
|
||||
goodwillCreditAccount: this.glAccountLookUp(this.loanProduct.goodwillCreditAccountId, expenseAccountData),
|
||||
chargeOffExpenseAccount: this.glAccountLookUp(this.loanProduct.writeOffAccountId, expenseAccountData),
|
||||
chargeOffFraudExpenseAccount: this.glAccountLookUp(this.loanProduct.writeOffAccountId, expenseAccountData),
|
||||
buyDownExpenseAccount: this.glAccountLookUp(this.loanProduct.buyDownExpenseAccountId, expenseAccountData),
|
||||
|
||||
overpaymentLiabilityAccount: this.glAccountLookUp(
|
||||
this.loanProduct.overpaymentLiabilityAccountId,
|
||||
|
||||
+20
@@ -190,6 +190,16 @@
|
||||
>
|
||||
</mifosx-gl-account-selector>
|
||||
|
||||
<mifosx-gl-account-selector
|
||||
class="flex-48"
|
||||
*ngIf="deferredIncomeRecognition?.buyDownFee?.enableBuyDownFee"
|
||||
[inputFormControl]="loanProductAccountingForm.controls.incomeFromBuyDownAccountId"
|
||||
[glAccountList]="incomeAccountData"
|
||||
[required]="true"
|
||||
[inputLabel]="'Income from Buy down fees'"
|
||||
>
|
||||
</mifosx-gl-account-selector>
|
||||
|
||||
<mat-divider class="flex-98"></mat-divider>
|
||||
|
||||
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Expenses' | translate }}</h4>
|
||||
@@ -230,6 +240,16 @@
|
||||
>
|
||||
</mifosx-gl-account-selector>
|
||||
|
||||
<mifosx-gl-account-selector
|
||||
class="flex-48"
|
||||
*ngIf="deferredIncomeRecognition?.buyDownFee?.enableBuyDownFee"
|
||||
[inputFormControl]="loanProductAccountingForm.controls.buyDownExpenseAccountId"
|
||||
[glAccountList]="expenseAccountData"
|
||||
[required]="true"
|
||||
[inputLabel]="'Buy down fee Expense'"
|
||||
>
|
||||
</mifosx-gl-account-selector>
|
||||
|
||||
<mat-divider class="flex-98"></mat-divider>
|
||||
|
||||
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Liabilities' | translate }}</h4>
|
||||
|
||||
+19
@@ -155,6 +155,12 @@ export class LoanProductAccountingStepComponent implements OnInit, OnChanges {
|
||||
incomeFromCapitalizationAccountId: accountingMappings.incomeFromCapitalizationAccount.id
|
||||
});
|
||||
}
|
||||
if (this.deferredIncomeRecognition.buyDownFee.enableBuyDownFee) {
|
||||
this.loanProductAccountingForm.patchValue({
|
||||
buyDownExpenseAccountId: accountingMappings.buyDownExpenseAccount.id,
|
||||
incomeFromBuyDownAccountId: accountingMappings.incomeFromBuyDownAccount.id
|
||||
});
|
||||
}
|
||||
}
|
||||
/* falls through */
|
||||
case 2:
|
||||
@@ -607,6 +613,19 @@ export class LoanProductAccountingStepComponent implements OnInit, OnChanges {
|
||||
this.loanProductAccountingForm.removeControl('deferredIncomeLiabilityAccountId');
|
||||
this.loanProductAccountingForm.removeControl('incomeFromCapitalizationAccountId');
|
||||
}
|
||||
if (this.deferredIncomeRecognition.buyDownFee.enableBuyDownFee) {
|
||||
this.loanProductAccountingForm.addControl(
|
||||
'buyDownExpenseAccountId',
|
||||
new UntypedFormControl('', Validators.required)
|
||||
);
|
||||
this.loanProductAccountingForm.addControl(
|
||||
'incomeFromBuyDownAccountId',
|
||||
new UntypedFormControl('', Validators.required)
|
||||
);
|
||||
} else {
|
||||
this.loanProductAccountingForm.removeControl('buyDownExpenseAccountId');
|
||||
this.loanProductAccountingForm.removeControl('incomeFromBuyDownAccountId');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,8 +121,10 @@ export interface LoanProduct {
|
||||
// Accounting
|
||||
accountingRule: any;
|
||||
accountingMappings?: { [key: string]: AccountingMapping };
|
||||
buyDownExpenseAccountId?: number;
|
||||
fundSourceAccountId?: number;
|
||||
goodwillCreditAccountId?: number;
|
||||
incomeFromBuyDownAccountId?: number;
|
||||
incomeFromCapitalizationAccountId?: number;
|
||||
incomeFromChargeOffFeesAccountId?: number;
|
||||
incomeFromChargeOffInterestAccountId?: number;
|
||||
|
||||
Reference in New Issue
Block a user