From cee57c525ee5660ebf190b7047f067deb0c873ee Mon Sep 17 00:00:00 2001 From: Jose Alberto Hernandez Date: Sun, 29 Oct 2023 20:57:20 -0600 Subject: [PATCH] Loan Product repayment due event values set by default from global configurations --- .../loan-product-preview-step.component.html | 7 +++- .../loan-product-settings-step.component.html | 19 +++++------ .../loan-product-settings-step.component.ts | 33 +++++++++++-------- .../general-tab/general-tab.component.html | 7 +++- src/assets/env.js | 8 ++--- 5 files changed, 43 insertions(+), 31 deletions(-) diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-preview-step/loan-product-preview-step.component.html b/src/app/products/loan-products/loan-product-stepper/loan-product-preview-step/loan-product-preview-step.component.html index 47471c9f7..0856f1a1b 100644 --- a/src/app/products/loan-products/loan-product-stepper/loan-product-preview-step/loan-product-preview-step.component.html +++ b/src/app/products/loan-products/loan-product-stepper/loan-product-preview-step/loan-product-preview-step.component.html @@ -569,11 +569,16 @@

Event Settings

+ Use the Global Configurations values to the Repayment Event (notifications): + {{ loanProduct.useDueForRepaymentsConfigurations | yesNo }} +
+ +
Due days for repayment event: {{ loanProduct.dueDaysForRepaymentEvent | number }}
-
+
OverDue days for repayment event: {{ loanProduct.overDueDaysForRepaymentEvent | number }}
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.html b/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.html index 19ba0b918..92283a8c9 100644 --- a/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.html +++ b/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.html @@ -458,24 +458,21 @@

Event Settings

-
+ + + Use the Global Configurations values to the Repayment Event (notifications) + + +
Due days for repayment event - - - {{item.label}} - - + OverDue days for repayment event - - - {{item.label}} - - +
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.ts b/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.ts index 0440c1208..386c55108 100644 --- a/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.ts +++ b/src/app/products/loan-products/loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component.ts @@ -132,10 +132,9 @@ export class LoanProductSettingsStepComponent implements OnInit { 'multiDisburseLoan': this.loanProductsTemplate.multiDisburseLoan, 'maxTrancheCount': this.loanProductsTemplate.maxTrancheCount, 'outstandingLoanBalance': this.loanProductsTemplate.outstandingLoanBalance, - 'dueDaysForRepaymentEvent': this.loanProductsTemplate.dueDaysForRepaymentEvent, - 'overDueDaysForRepaymentEvent': this.loanProductsTemplate.overDueDaysForRepaymentEvent, 'enableDownPayment': this.loanProductsTemplate.enableDownPayment, - 'enableInstallmentLevelDelinquency': this.loanProductsTemplate.enableInstallmentLevelDelinquency + 'enableInstallmentLevelDelinquency': this.loanProductsTemplate.enableInstallmentLevelDelinquency, + 'useDueForRepaymentsConfigurations': this.loanProductsTemplate.useDueForRepaymentsConfigurations }); if (this.loanProductsTemplate.delinquencyBucket) { @@ -239,10 +238,9 @@ export class LoanProductSettingsStepComponent implements OnInit { 'graceOnArrearsAgeing': [true] }), 'delinquencyBucketId': ['', Validators.required], - 'dueDaysForRepaymentEvent': [''], - 'overDueDaysForRepaymentEvent': [''], 'enableDownPayment': [false], - 'enableInstallmentLevelDelinquency': [false] + 'enableInstallmentLevelDelinquency': [false], + 'useDueForRepaymentsConfigurations': [false] }); } @@ -432,14 +430,17 @@ export class LoanProductSettingsStepComponent implements OnInit { } }); - this.loanProductSettingsForm.get('dueDaysForRepaymentEvent').valueChanges - .subscribe((dueDaysForRepaymentEvent: number) => { - this.setStyleDaysForRepayment(this.DAYS_BEFORE_REPAYMENT_IS_DUE, dueDaysForRepaymentEvent); - }); - - this.loanProductSettingsForm.get('overDueDaysForRepaymentEvent').valueChanges - .subscribe((overDueDaysForRepaymentEvent: number) => { - this.setStyleDaysForRepayment(this.DAYS_AFTER_REPAYMENT_IS_OVERDUE, overDueDaysForRepaymentEvent); + this.loanProductSettingsForm.get('useDueForRepaymentsConfigurations').valueChanges + .subscribe((useDueForRepaymentsConfigurations: boolean) => { + if (useDueForRepaymentsConfigurations) { + this.loanProductSettingsForm.removeControl('dueDaysForRepaymentEvent'); + this.loanProductSettingsForm.removeControl('overDueDaysForRepaymentEvent'); + } else { + this.loanProductSettingsForm.addControl('dueDaysForRepaymentEvent', + new UntypedFormControl(this.loanProductsTemplate.dueDaysForRepaymentEvent, [Validators.required, rangeValidator(1, 100) ])); + this.loanProductSettingsForm.addControl('overDueDaysForRepaymentEvent', + new UntypedFormControl(this.loanProductsTemplate.overDueDaysForRepaymentEvent, [Validators.required, rangeValidator(1, 100) ])); + } }); } @@ -482,6 +483,10 @@ export class LoanProductSettingsStepComponent implements OnInit { if (!this.loanProductSettingsForm.value.multiDisburseLoan) { delete productSettings['disableScheduleExtensionForDownPayment']; } + if (this.loanProductSettingsForm.value.useDueForRepaymentsConfigurations) { + delete productSettings['dueDaysForRepaymentEvent']; + delete productSettings['overDueDaysForRepaymentEvent']; + } return productSettings; } diff --git a/src/app/products/loan-products/view-loan-product/general-tab/general-tab.component.html b/src/app/products/loan-products/view-loan-product/general-tab/general-tab.component.html index f0e185184..ac3381523 100644 --- a/src/app/products/loan-products/view-loan-product/general-tab/general-tab.component.html +++ b/src/app/products/loan-products/view-loan-product/general-tab/general-tab.component.html @@ -562,11 +562,16 @@

Event Settings

+ Use the Global Configurations values to the Repayment Event (notifications): + {{ loanProduct.useDueForRepaymentsConfigurations | yesNo }} +
+ +
Due days for repayment event: {{ loanProduct.dueDaysForRepaymentEvent | number }}
-
+
OverDue days for repayment event: {{ loanProduct.overDueDaysForRepaymentEvent | number }}
diff --git a/src/assets/env.js b/src/assets/env.js index 32bd74f61..3e92cd5b0 100644 --- a/src/assets/env.js +++ b/src/assets/env.js @@ -2,14 +2,14 @@ window["env"] = window["env"] || {}; // BackEnd Environment variables - window["env"]["fineractApiUrls"] = 'https://ps-test.dev.alluvial.cloud'; - window["env"]["fineractApiUrl"] = 'https://ps-test.dev.alluvial.cloud'; + window["env"]["fineractApiUrls"] = ''; + window["env"]["fineractApiUrl"] = ''; window["env"]["apiProvider"] = ''; window["env"]["apiVersion"] = ''; - window["env"]["fineractPlatformTenantId"] = 'pstest'; - window["env"]["fineractPlatformTenantIds"] = 'pstest'; + window["env"]["fineractPlatformTenantId"] = ''; + window["env"]["fineractPlatformTenantIds"] = ''; // Language Environment variables window["env"]["defaultLanguage"] = '';