diff --git a/src/app/products/saving-products/saving-product-stepper/saving-product-settings-step/saving-product-settings-step.component.html b/src/app/products/saving-products/saving-product-stepper/saving-product-settings-step/saving-product-settings-step.component.html
index a841cf83f..600a56977 100644
--- a/src/app/products/saving-products/saving-product-stepper/saving-product-settings-step/saving-product-settings-step.component.html
+++ b/src/app/products/saving-products/saving-product-stepper/saving-product-settings-step/saving-product-settings-step.component.html
@@ -16,40 +16,62 @@
-
+
-
- {{ 'labels.inputs.Lock-in Period' | translate }}
-
-
- {{ 'labels.inputs.Frequency' | translate }} {{ 'labels.commons.is' | translate }}
- {{ 'labels.commons.required' | translate }}
-
-
- {{ 'tooltips.Frequency must be greater than zero' | translate }}
-
-
- {{ 'tooltips.Frequency must be a positive integer' | translate }}
-
-
+
{{ 'labels.inputs.Lock-in Period' | translate }}
-
-
- @for (lockinPeriodFrequencyType of lockinPeriodFrequencyTypeData; track lockinPeriodFrequencyType) {
-
- {{ lockinPeriodFrequencyType.value | translateKey: 'catalogs' }}
-
- }
-
-
+
+ {{ 'labels.inputs.Enable Lock-in Period' | translate }}
+
+
+ @if (savingProductSettingsForm.value.enableLockinPeriod) {
+
+
+ {{ 'labels.inputs.Frequency' | translate }}
+
+
+ {{ 'labels.inputs.Frequency' | translate }} {{ 'labels.commons.is' | translate }}
+ {{ 'labels.commons.required' | translate }}
+
+
+ {{ 'tooltips.Frequency must be greater than zero' | translate }}
+
+
+ {{ 'tooltips.Frequency must be a positive integer' | translate }}
+
+
+
+
+ {{ 'labels.inputs.Type' | translate }}
+
+ @for (lockinPeriodFrequencyType of lockinPeriodFrequencyTypeData; track lockinPeriodFrequencyType) {
+
+ {{ lockinPeriodFrequencyType.value | translateKey: 'catalogs' }}
+
+ }
+
+
+ {{ 'labels.inputs.Type' | translate }} {{ 'labels.commons.is' | translate }}
+ {{ 'labels.commons.required' | translate }}
+
+
+
+ }
+
+
0;
+
this.savingProductSettingsForm.patchValue({
minRequiredOpeningBalance: this.savingProductsTemplate.minRequiredOpeningBalance,
- lockinPeriodFrequency: this.savingProductsTemplate.lockinPeriodFrequency,
- lockinPeriodFrequencyType:
- this.savingProductsTemplate.lockinPeriodFrequencyType &&
- this.savingProductsTemplate.lockinPeriodFrequencyType.id,
+ enableLockinPeriod: hasLockinPeriod,
withdrawalFeeForTransfers: this.savingProductsTemplate.withdrawalFeeForTransfers,
minBalanceForInterestCalculation: this.savingProductsTemplate.minBalanceForInterestCalculation,
enforceMinRequiredBalance: this.savingProductsTemplate.enforceMinRequiredBalance,
@@ -67,6 +67,15 @@ export class SavingProductSettingsStepComponent implements OnInit {
daysToDormancy: this.savingProductsTemplate.daysToDormancy,
daysToEscheat: this.savingProductsTemplate.daysToEscheat
});
+
+ if (hasLockinPeriod) {
+ this.savingProductSettingsForm.patchValue({
+ lockinPeriodFrequency: this.savingProductsTemplate.lockinPeriodFrequency,
+ lockinPeriodFrequencyType:
+ this.savingProductsTemplate.lockinPeriodFrequencyType &&
+ this.savingProductsTemplate.lockinPeriodFrequencyType.id
+ });
+ }
}
createSavingProductSettingsForm() {
@@ -75,15 +84,7 @@ export class SavingProductSettingsStepComponent implements OnInit {
'',
[Validators.min(0)]
],
- lockinPeriodFrequency: [
- '',
- [
- Validators.required,
- Validators.min(1),
- Validators.pattern('^[1-9]\\d*$')
- ]
- ],
- lockinPeriodFrequencyType: [''],
+ enableLockinPeriod: [false],
withdrawalFeeForTransfers: [false],
minBalanceForInterestCalculation: [''],
enforceMinRequiredBalance: [false],
@@ -95,6 +96,26 @@ export class SavingProductSettingsStepComponent implements OnInit {
}
setConditionalControls() {
+ this.savingProductSettingsForm.get('enableLockinPeriod').valueChanges.subscribe((enableLockinPeriod: any) => {
+ if (enableLockinPeriod) {
+ this.savingProductSettingsForm.addControl(
+ 'lockinPeriodFrequency',
+ new UntypedFormControl('', [
+ Validators.required,
+ Validators.min(1),
+ Validators.pattern('^[1-9]\\d*$')
+ ])
+ );
+ this.savingProductSettingsForm.addControl(
+ 'lockinPeriodFrequencyType',
+ new UntypedFormControl('', Validators.required)
+ );
+ } else {
+ this.savingProductSettingsForm.removeControl('lockinPeriodFrequency');
+ this.savingProductSettingsForm.removeControl('lockinPeriodFrequencyType');
+ }
+ });
+
this.savingProductSettingsForm.get('allowOverdraft').valueChanges.subscribe((allowOverdraft: any) => {
if (allowOverdraft) {
this.savingProductSettingsForm.addControl('minOverdraftForInterestCalculation', new UntypedFormControl(''));
@@ -131,6 +152,8 @@ export class SavingProductSettingsStepComponent implements OnInit {
}
get savingProductSettings() {
- return this.savingProductSettingsForm.value;
+ const formValue = { ...this.savingProductSettingsForm.value };
+ delete formValue.enableLockinPeriod;
+ return formValue;
}
}
diff --git a/src/assets/translations/cs-CS.json b/src/assets/translations/cs-CS.json
index 6997af827..94c5e1a70 100644
--- a/src/assets/translations/cs-CS.json
+++ b/src/assets/translations/cs-CS.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Povolit automatické splácení zálohy",
"Enable Dormancy Tracking": "Povolit sledování dormance",
"Enable Down Payment": "Povolit zálohu",
+ "Enable Lock-in Period": "Povolit zamykací období",
"Enable Multiple Disbursals": "Povolit vícenásobné výplaty",
"Enabled": "Povoleno",
"End Date": "Datum ukončení",
diff --git a/src/assets/translations/de-DE.json b/src/assets/translations/de-DE.json
index 9f74b504a..d11730e13 100644
--- a/src/assets/translations/de-DE.json
+++ b/src/assets/translations/de-DE.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Aktivieren Sie die automatische Rückzahlung für die Anzahlung",
"Enable Dormancy Tracking": "Aktivieren Sie die Ruheverfolgung",
"Enable Down Payment": "Anzahlung aktivieren",
+ "Enable Lock-in Period": "Sperrfrist aktivieren",
"Enable Multiple Disbursals": "Aktivieren Sie Mehrfachauszahlungen",
"Enabled": "Ermöglicht",
"End Date": "Endtermin",
diff --git a/src/assets/translations/en-US.json b/src/assets/translations/en-US.json
index a0766dc33..52080dea2 100644
--- a/src/assets/translations/en-US.json
+++ b/src/assets/translations/en-US.json
@@ -1602,6 +1602,7 @@
"Enable Auto Repayment for Down Payment": "Enable Auto Repayment for Down Payment",
"Enable Dormancy Tracking": "Enable Dormancy Tracking",
"Enable Down Payment": "Enable Down Payment",
+ "Enable Lock-in Period": "Enable Lock-in Period",
"Enable Multiple Disbursals": "Enable Multiple Disbursals",
"Allow full term for each tranche": "Allow full term for each tranche",
"Enabled": "Enabled",
diff --git a/src/assets/translations/es-CL.json b/src/assets/translations/es-CL.json
index 3fda5e405..cc779ef3d 100644
--- a/src/assets/translations/es-CL.json
+++ b/src/assets/translations/es-CL.json
@@ -1597,6 +1597,7 @@
"Enable Auto Repayment for Down Payment": "Habilitar el pago automático para el pago inicial",
"Enable Dormancy Tracking": "Habilitar seguimiento de inactividad",
"Enable Down Payment": "Habilitar Pago inicial",
+ "Enable Lock-in Period": "Habilitar período de bloqueo",
"Enable Multiple Disbursals": "Habilitar múltiples desembolsos",
"Enabled": "Activado",
"End Date": "Fecha final",
diff --git a/src/assets/translations/es-MX.json b/src/assets/translations/es-MX.json
index cfc68afae..7615a3f79 100644
--- a/src/assets/translations/es-MX.json
+++ b/src/assets/translations/es-MX.json
@@ -1597,6 +1597,7 @@
"Enable Auto Repayment for Down Payment": "Habilitar el pago automático para el pago inicial",
"Enable Dormancy Tracking": "Habilitar seguimiento de inactividad",
"Enable Down Payment": "Habilitar Pago inicial",
+ "Enable Lock-in Period": "Habilitar período de bloqueo",
"Enable Multiple Disbursals": "Habilitar múltiples desembolsos",
"Enabled": "Activado",
"End Date": "Fecha final",
diff --git a/src/assets/translations/fr-FR.json b/src/assets/translations/fr-FR.json
index ec43b1b58..b09bd55b1 100644
--- a/src/assets/translations/fr-FR.json
+++ b/src/assets/translations/fr-FR.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Activer le remboursement automatique pour l'acompte",
"Enable Dormancy Tracking": "Activer le suivi de la dormance",
"Enable Down Payment": "Activer l'acompte",
+ "Enable Lock-in Period": "Activer la période de blocage",
"Enable Multiple Disbursals": "Activer les décaissements multiples",
"Enabled": "Activé",
"End Date": "Date de fin",
diff --git a/src/assets/translations/it-IT.json b/src/assets/translations/it-IT.json
index 636781f93..94228d324 100644
--- a/src/assets/translations/it-IT.json
+++ b/src/assets/translations/it-IT.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Abilita il rimborso automatico per l'acconto",
"Enable Dormancy Tracking": "Abilita il monitoraggio della dormienza",
"Enable Down Payment": "Abilita l'acconto",
+ "Enable Lock-in Period": "Abilita periodo di blocco",
"Enable Multiple Disbursals": "Abilita esborsi multipli",
"Enabled": "Abilitato",
"End Date": "Data di fine",
diff --git a/src/assets/translations/ko-KO.json b/src/assets/translations/ko-KO.json
index 7c7ccd653..06829d066 100644
--- a/src/assets/translations/ko-KO.json
+++ b/src/assets/translations/ko-KO.json
@@ -1599,6 +1599,7 @@
"Enable Auto Repayment for Down Payment": "계약금 자동 상환 활성화",
"Enable Dormancy Tracking": "휴면 추적 활성화",
"Enable Down Payment": "계약금 활성화",
+ "Enable Lock-in Period": "잠금 기간 활성화",
"Enable Multiple Disbursals": "다중 지불 활성화",
"Enabled": "활성화됨",
"End Date": "종료일",
diff --git a/src/assets/translations/lt-LT.json b/src/assets/translations/lt-LT.json
index 37c9fbcc1..239c465f9 100644
--- a/src/assets/translations/lt-LT.json
+++ b/src/assets/translations/lt-LT.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Įgalinti automatinį pradinio įnašo grąžinimą",
"Enable Dormancy Tracking": "Įgalinti ramybės būsenos stebėjimą",
"Enable Down Payment": "Įgalinti pradinį įnašą",
+ "Enable Lock-in Period": "Įgalinti užrakinimo laikotarpį",
"Enable Multiple Disbursals": "Įgalinti kelias išmokas",
"Enabled": "Įjungtas",
"End Date": "Pabaigos data",
diff --git a/src/assets/translations/lv-LV.json b/src/assets/translations/lv-LV.json
index eaa6bd84b..3b531b7bf 100644
--- a/src/assets/translations/lv-LV.json
+++ b/src/assets/translations/lv-LV.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Iespējot pirmās iemaksas automātisko atmaksu",
"Enable Dormancy Tracking": "Iespējot miega režīma izsekošanu",
"Enable Down Payment": "Iespējot pirmo iemaksu",
+ "Enable Lock-in Period": "Iespējot bloķēšanas periodu",
"Enable Multiple Disbursals": "Iespējot vairākas izmaksas",
"Enabled": "Iespējots",
"End Date": "Beigu datums",
diff --git a/src/assets/translations/ne-NE.json b/src/assets/translations/ne-NE.json
index e79b3b94e..f6d98cc03 100644
--- a/src/assets/translations/ne-NE.json
+++ b/src/assets/translations/ne-NE.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "डाउन पेमेन्टको लागि स्वत: भुक्तानी सक्षम गर्नुहोस्",
"Enable Dormancy Tracking": "निष्क्रियता ट्र्याकिङ सक्षम गर्नुहोस्",
"Enable Down Payment": "डाउन पेमेन्ट सक्षम गर्नुहोस्",
+ "Enable Lock-in Period": "लक-इन अवधि सक्षम गर्नुहोस्",
"Enable Multiple Disbursals": "बहुविध वितरण सक्षम गर्नुहोस्",
"Enabled": "सक्षम गरियो",
"End Date": "अन्त्य मिति",
diff --git a/src/assets/translations/pt-PT.json b/src/assets/translations/pt-PT.json
index 22f8345c2..a98e6a69f 100644
--- a/src/assets/translations/pt-PT.json
+++ b/src/assets/translations/pt-PT.json
@@ -1598,6 +1598,7 @@
"Enable Auto Repayment for Down Payment": "Ativar reembolso automático para adiantamento",
"Enable Dormancy Tracking": "Habilitar rastreamento de dormência",
"Enable Down Payment": "Ativar adiantamento",
+ "Enable Lock-in Period": "Ativar período de bloqueio",
"Enable Multiple Disbursals": "Habilitar múltiplos desembolsos",
"Enabled": "Habilitado",
"End Date": "Data final",
diff --git a/src/assets/translations/sw-SW.json b/src/assets/translations/sw-SW.json
index e1266701b..7d7395ca3 100644
--- a/src/assets/translations/sw-SW.json
+++ b/src/assets/translations/sw-SW.json
@@ -1596,6 +1596,7 @@
"Enable Auto Repayment for Down Payment": "Washa Ulipaji Kiotomatiki kwa Malipo ya Chini",
"Enable Dormancy Tracking": "Washa Ufuatiliaji wa Malalamiko",
"Enable Down Payment": "Washa Malipo ya Chini",
+ "Enable Lock-in Period": "Washa Kipindi cha Kufunga",
"Enable Multiple Disbursals": "Washa Utoaji Nyingi",
"Enabled": "Imewashwa",
"End Date": "Tarehe ya mwisho",