Loan account Contract Termination transaction

This commit is contained in:
Jose Alberto Hernandez
2025-05-25 12:28:11 -05:00
parent 8fe04b08a3
commit 28dfe561b8
30 changed files with 4977 additions and 3071 deletions
@@ -1,3 +1,5 @@
import { OptionData } from 'app/shared/models/option-data.model';
/** Recurring Deposits Account Buttons Configuration */
export class LoansAccountButtonConfiguration {
optionArray: {
@@ -16,8 +18,8 @@ export class LoansAccountButtonConfiguration {
taskPermissionName?: string;
}[];
constructor(status: string) {
this.setOptions(status);
constructor(status: string, substatus: OptionData) {
this.setOptions(status, substatus);
this.setButtons(status);
}
@@ -154,7 +156,7 @@ export class LoansAccountButtonConfiguration {
}
}
setOptions(status: string) {
setOptions(status: string, substatus: OptionData) {
switch (status) {
case 'Active':
this.optionArray = [
@@ -199,6 +201,12 @@ export class LoansAccountButtonConfiguration {
taskPermissionName: 'SALE_LOAN'
}
];
if (!this.isContractTermination(substatus)) {
this.optionArray.push({
name: 'Contract Termination',
taskPermissionName: 'CONTRACT_TERMINATION_LOAN'
});
}
this.optionPaymentArray = [
{
name: 'Goodwill Credit',
@@ -281,4 +289,11 @@ export class LoansAccountButtonConfiguration {
addButton(option: { name: string; icon: string; taskPermissionName?: string }) {
this.buttonsArray.push(option);
}
private isContractTermination(substatus: OptionData): boolean {
if (substatus == null) {
return false;
}
return substatus.code === 'loanSubStatus.loanSubStatusType.contractTermination';
}
}