diff --git a/src/app/loans/loans-view/transactions-tab/transactions-tab.component.ts b/src/app/loans/loans-view/transactions-tab/transactions-tab.component.ts index aabcbf988..1e37a7769 100644 --- a/src/app/loans/loans-view/transactions-tab/transactions-tab.component.ts +++ b/src/app/loans/loans-view/transactions-tab/transactions-tab.component.ts @@ -335,6 +335,14 @@ export class TransactionsTabComponent implements OnInit { command = 'undo-charge-off'; operationDate = this.settingsService.businessDate; payload = {}; + } else if (this.isWriteOff(transaction.type)) { + command = 'undowriteoff'; + payload = { + transactionDate: this.dateUtils.formatDate(operationDate && new Date(operationDate), dateFormat), + transactionAmount: 0, + dateFormat, + locale + }; } else { payload = { transactionDate: this.dateUtils.formatDate(operationDate && new Date(operationDate), dateFormat), @@ -357,7 +365,7 @@ export class TransactionsTabComponent implements OnInit { undoTransactionAccountDialogRef.afterClosed().subscribe((response: { confirm: any }) => { if (response.confirm) { let transactionId = transaction.id; - if (this.isChargeOff(transaction.type)) { + if (this.isChargeOff(transaction.type) || command === 'undowriteoff' || this.isWriteOff(transaction.type)) { transactionId = null; } this.loansService @@ -399,6 +407,10 @@ export class TransactionsTabComponent implements OnInit { return transactionType.chargeoff || transactionType.code === 'loanTransactionType.chargeOff'; } + isWriteOff(transactionType: LoanTransactionType): boolean { + return transactionType.writeOff || transactionType.code === 'loanTransactionType.writeOff'; + } + private isDownPayment(transactionType: LoanTransactionType): boolean { return transactionType.downPayment || transactionType.code === 'loanTransactionType.downPayment'; } diff --git a/src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.ts b/src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.ts index 7065d5f61..576cc451c 100644 --- a/src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.ts +++ b/src/app/loans/loans-view/transactions/view-transaction/view-transaction.component.ts @@ -200,6 +200,10 @@ export class ViewTransactionComponent implements OnInit { return true; } + isWriteOff(transactionType: LoanTransactionType): boolean { + return transactionType.writeOff || transactionType.code === 'loanTransactionType.writeOff'; + } + /** * Undo the loans transaction */ @@ -267,8 +271,10 @@ export class ViewTransactionComponent implements OnInit { dateFormat, locale }; + const command = this.isWriteOff(this.transactionType) ? 'undowriteoff' : 'undo'; + const transactionId = command === 'undowriteoff' ? null : this.transactionData.id; this.loansService - .executeLoansAccountTransactionsCommand(accountId, 'undo', data, this.transactionData.id) + .executeLoansAccountTransactionsCommand(accountId, command, data, transactionId) .subscribe(() => { this.router.navigate(['../'], { relativeTo: this.route }); });