Fixed Deposit account request with Maturity Instruction

This commit is contained in:
Jose Alberto Hernandez
2023-12-22 15:28:04 +01:00
committed by Adam Saghy
parent af97eba60b
commit 77814f03a1
22 changed files with 73 additions and 137 deletions
@@ -8,7 +8,6 @@ import { SettingsService } from 'app/settings/settings.service';
/** Custom Components */
import { FixedDepositAccountDetailsStepComponent } from '../fixed-deposit-account-stepper/fixed-deposit-account-details-step/fixed-deposit-account-details-step.component';
import { FixedDepositAccountCurrencyStepComponent } from '../fixed-deposit-account-stepper/fixed-deposit-account-currency-step/fixed-deposit-account-currency-step.component';
import { FixedDepositAccountTermsStepComponent } from '../fixed-deposit-account-stepper/fixed-deposit-account-terms-step/fixed-deposit-account-terms-step.component';
import { FixedDepositAccountSettingsStepComponent } from '../fixed-deposit-account-stepper/fixed-deposit-account-settings-step/fixed-deposit-account-settings-step.component';
import { FixedDepositAccountChargesStepComponent } from '../fixed-deposit-account-stepper/fixed-deposit-account-charges-step/fixed-deposit-account-charges-step.component';
@@ -27,8 +26,6 @@ export class EditFixedDepositAccountComponent {
/** Fixed Deposits Account Details Step */
@ViewChild(FixedDepositAccountDetailsStepComponent, { static: true }) fixedDepositsAccountDetailsStep: FixedDepositAccountDetailsStepComponent;
/** Fixed Deposits Account Currency Step */
@ViewChild(FixedDepositAccountCurrencyStepComponent, { static: true }) fixedDepositAccountCurrencyStep: FixedDepositAccountCurrencyStepComponent;
/** Fixed Deposits Account Terms Step */
@ViewChild(FixedDepositAccountTermsStepComponent, { static: true }) fixedDepositAccountTermsStep: FixedDepositAccountTermsStepComponent;
/** Fixed Deposits Account Settings Step */
@@ -77,13 +74,6 @@ export class EditFixedDepositAccountComponent {
return this.fixedDepositsAccountDetailsStep.fixedDepositAccountDetailsForm;
}
/**
* Retrieves Fixed Deposit Account Currency Form Data
*/
get fixedDepositAccountCurrencyForm() {
return this.fixedDepositAccountCurrencyStep.fixedDepositAccountCurrencyForm;
}
/**
* Retrieves Fixed Deposit Account Terms Form Data
*/
@@ -1,33 +0,0 @@
<form [formGroup]="fixedDepositAccountCurrencyForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="48%">
<mat-label>{{"labels.inputs.Currency" | translate }}</mat-label>
<input type="text" matInput formControlName="currencyCode" >
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-label>{{"labels.inputs.Decimal Places" | translate }}</mat-label>
<input type="number" matInput formControlName="decimalPlaces" >
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-label>{{"labels.inputs.Currency Multiple" | translate }}</mat-label>
<input type="number" matInput formControlName="currencyMultiple">
</mat-form-field>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{"labels.buttons.Previous" | translate }}
</button>
<button mat-raised-button matStepperNext>
{{"labels.buttons.Next" | translate }}
<fa-icon icon="arrow-right" class="m-l-10"></fa-icon>
</button>
</div>
</form>
@@ -1,25 +0,0 @@
import { async, ComponentFixture, TestBed } from '@angular/core/testing';
import { FixedDepositAccountCurrencyStepComponent } from './fixed-deposit-account-currency-step.component';
describe('FixedDepositAccountCurrencyStepComponent', () => {
let component: FixedDepositAccountCurrencyStepComponent;
let fixture: ComponentFixture<FixedDepositAccountCurrencyStepComponent>;
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [ FixedDepositAccountCurrencyStepComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(FixedDepositAccountCurrencyStepComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
@@ -1,53 +0,0 @@
/** Angular Imports */
import { Component, OnChanges, Input } from '@angular/core';
import { UntypedFormGroup, UntypedFormBuilder } from '@angular/forms';
/**
* Fixed Deposit Account Currency Step
*/
@Component({
selector: 'mifosx-fixed-deposit-account-currency-step',
templateUrl: './fixed-deposit-account-currency-step.component.html',
styleUrls: ['./fixed-deposit-account-currency-step.component.scss']
})
export class FixedDepositAccountCurrencyStepComponent implements OnChanges {
/** Fixed deposits account template */
@Input() fixedDepositsAccountTemplate: any;
/** Fixed deposits account and product template */
@Input() fixedDepositsAccountProductTemplate: any;
/** Fixed Deposit Account Currency Form */
fixedDepositAccountCurrencyForm: UntypedFormGroup;
/** Currency Data */
currencyData: any;
/**
* @param {FormBuilder} formBuilder Form Builder
*/
constructor(private formBuilder: UntypedFormBuilder) {
this.createFixedDepositAccountCurrencyForm();
}
ngOnChanges() {
if (this.fixedDepositsAccountProductTemplate) {
this.fixedDepositAccountCurrencyForm.patchValue({
'currencyCode': this.fixedDepositsAccountProductTemplate.currency.code,
'decimalPlaces': this.fixedDepositsAccountProductTemplate.currency.decimalPlaces,
'currencyMultiple': this.fixedDepositsAccountProductTemplate.currency.inMultiplesOf
});
}
}
/**
* Creates fd currency form.
*/
createFixedDepositAccountCurrencyForm() {
this.fixedDepositAccountCurrencyForm = this.formBuilder.group({
'currencyCode': [{ value: '', disabled: true}],
'decimalPlaces': [{ value: '', disabled: true }],
'currencyMultiple': [{ value: '', disabled: true }]
});
}
}
@@ -111,6 +111,11 @@
<span fxFlex="60%">{{ fixedDepositAccountData.linkAccountId | find:fixedDepositsAccountProductTemplate.savingsAccounts:'id':'accountNo' }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositAccountData.maturityInstructionId">
<span fxFlex="40%">{{"labels.inputs.Maturity Instructions" | translate }}</span>
<span fxFlex="60%">{{ fixedDepositAccountData.maturityInstructionId | find:fixedDepositsAccountProductTemplate.maturityInstructionOptions:'id':'value' }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{"labels.inputs.Apply Penal Interest (less)" | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.preClosurePenalApplicable ? 'Yes' : 'No' }}</span>
@@ -95,6 +95,29 @@
<mat-divider fxFlex="98%"></mat-divider>
<mat-form-field fxFlex="48%">
<mat-label>{{"labels.inputs.Maturity Instructions" | translate }}</mat-label>
<mat-select formControlName="maturityInstructionId">
<mat-option *ngFor="let maturityInstruction of maturityInstructionOptions" [value]="maturityInstruction.id">
{{ maturityInstruction.value }}
</mat-option>
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="48%" *ngIf="fixedDepositAccountSettingsForm.contains('transferToSavingsId')" class="margin-b">
<mat-label>{{"labels.inputs.Transfer to savings account" | translate }}</mat-label>
<mat-select formControlName="transferToSavingsId" required>
<mat-option *ngFor="let account of savingsAccountsData" [value]="account.id">
{{ account.accountNo }}
</mat-option>
</mat-select>
<mat-error>
{{"labels.inputs.Transfer to savings account" | translate }} {{ "labels.commons.is" |translate}} <strong>{{ "labels.commons.required" | translate}}</strong>
</mat-error>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<h4 fxFlex="23%" class="mat-h4">{{"labels.heading.For Pre-mature closure" | translate }}</h4>
<mat-checkbox fxFlex="73%" labelPosition="before" formControlName="preClosurePenalApplicable" class="margin-v">
@@ -2,6 +2,7 @@
import { Component, OnInit, Input, OnChanges } from '@angular/core';
import { UntypedFormGroup, UntypedFormBuilder, UntypedFormControl, Validators } from '@angular/forms';
import { SettingsService } from 'app/settings/settings.service';
import { OptionData } from 'app/shared/models/option-data.model';
/**
* Fixed Deposits Account Settings Step
@@ -33,6 +34,8 @@ export class FixedDepositAccountSettingsStepComponent implements OnInit, OnChang
/** Savings Accounts Data */
savingsAccountsData: any;
maturityInstructionOptions: OptionData;
/**
* @param {FormBuilder} formBuilder Form Builder
* @param {SettingsService} settingsService Settings Service
@@ -54,7 +57,8 @@ export class FixedDepositAccountSettingsStepComponent implements OnInit, OnChang
'maxDepositTermTypeId': this.fixedDepositsAccountProductTemplate.maxDepositTermType ? this.fixedDepositsAccountProductTemplate.maxDepositTermType.id : '',
'preClosurePenalApplicable': this.fixedDepositsAccountProductTemplate.preClosurePenalApplicable,
'preClosurePenalInterest': this.fixedDepositsAccountProductTemplate.preClosurePenalInterest,
'preClosurePenalInterestOnTypeId': this.fixedDepositsAccountProductTemplate.preClosurePenalInterestOnType ? this.fixedDepositsAccountProductTemplate.preClosurePenalInterestOnType.id : ''
'preClosurePenalInterestOnTypeId': this.fixedDepositsAccountProductTemplate.preClosurePenalInterestOnType ? this.fixedDepositsAccountProductTemplate.preClosurePenalInterestOnType.id : '',
'maturityInstructionId': this.fixedDepositsAccountProductTemplate.maturityInstructionId
});
if (this.fixedDepositsAccountProductTemplate.withHoldTax) {
this.fixedDepositAccountSettingsForm.addControl('withHoldTax', new UntypedFormControl(false));
@@ -101,7 +105,8 @@ export class FixedDepositAccountSettingsStepComponent implements OnInit, OnChang
'transferInterestToSavings': [false],
'preClosurePenalApplicable': [{ value: '', disabled: true }],
'preClosurePenalInterest': [{ value: '', disabled: true }],
'preClosurePenalInterestOnTypeId': [{ value: '', disabled: true }]
'preClosurePenalInterestOnTypeId': [{ value: '', disabled: true }],
'maturityInstructionId': ['']
});
}
@@ -117,6 +122,15 @@ export class FixedDepositAccountSettingsStepComponent implements OnInit, OnChang
this.fixedDepositAccountSettingsForm.removeControl('linkAccountId');
}
});
this.fixedDepositAccountSettingsForm.get('maturityInstructionId').valueChanges.subscribe((value: number) => {
console.log(value);
if (value > 100) {
this.fixedDepositAccountSettingsForm.addControl('transferToSavingsId', new UntypedFormControl('', Validators.required));
this.fixedDepositAccountSettingsForm.get('transferToSavingsId').patchValue(this.fixedDepositsAccountTemplate.transferToSavingsId && this.fixedDepositsAccountTemplate.transferToSavingsId.id);
} else {
this.fixedDepositAccountSettingsForm.removeControl('transferToSavingsId');
}
});
}
/**
@@ -127,6 +141,7 @@ export class FixedDepositAccountSettingsStepComponent implements OnInit, OnChang
this.periodFrequencyTypeData = this.fixedDepositsAccountProductTemplate.periodFrequencyTypeOptions;
this.savingsAccountsData = this.fixedDepositsAccountProductTemplate.savingsAccounts;
this.preClosurePenalInterestOnTypeData = this.fixedDepositsAccountProductTemplate.preClosurePenalInterestOnTypeOptions;
this.maturityInstructionOptions = this.fixedDepositsAccountProductTemplate.maturityInstructionOptions;
}
/**
@@ -40,6 +40,10 @@
<td>{{"labels.inputs.Tax Group" | translate }}</td>
<td>{{fixedDepositsAccountData.taxGroup.name}}</td>
</tr>
<tr *ngIf="fixedDepositsAccountData.onAccountClosure">
<td>{{"labels.inputs.Maturity Instructions" | translate }}</td>
<td>{{fixedDepositsAccountData.onAccountClosure.value}}</td>
</tr>
</tbody>
</table>
</div>
@@ -36,7 +36,6 @@ import { FixedDepositAccountChargesStepComponent } from './fixed-deposit-account
import { FixedDepositAccountSettingsStepComponent } from './fixed-deposit-account-stepper/fixed-deposit-account-settings-step/fixed-deposit-account-settings-step.component';
import { FixedDepositAccountInterestRateChartStepComponent } from './fixed-deposit-account-stepper/fixed-deposit-account-interest-rate-chart-step/fixed-deposit-account-interest-rate-chart-step.component';
import { FixedDepositAccountPreviewStepComponent } from './fixed-deposit-account-stepper/fixed-deposit-account-preview-step/fixed-deposit-account-preview-step.component';
import { FixedDepositAccountCurrencyStepComponent } from './fixed-deposit-account-stepper/fixed-deposit-account-currency-step/fixed-deposit-account-currency-step.component';
import { EditFixedDepositAccountComponent } from './edit-fixed-deposit-account/edit-fixed-deposit-account.component';
import { GeneralTabComponent } from './fixed-deposit-account-view/general-tab/general-tab.component';
@@ -75,7 +74,6 @@ import { GeneralTabComponent } from './fixed-deposit-account-view/general-tab/ge
FixedDepositAccountSettingsStepComponent,
FixedDepositAccountInterestRateChartStepComponent,
FixedDepositAccountPreviewStepComponent,
FixedDepositAccountCurrencyStepComponent,
EditFixedDepositAccountComponent,
GeneralTabComponent
],
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Částka splatnosti",
"Maturity Date": "Datum splatnosti",
"Max Age": "Maximální věk",
"Maturity Instructions": "Pokyny pro splatnost",
"Maximum Deposit Term": "Maximální doba vkladu",
"Maximum Overdraft Amount Limit": "Maximální výše limitu přečerpání",
"Maximum Tranche count": "Maximální počet tranší",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "Datum, kdy bude úvěrový produkt aktivní a dostupný klientům. Pokud nevyplníte, bude úvěrový produkt aktivní, jakmile bude vytvořen.",
"loan product will become inactive and unavailable to clients": "Datum, kdy se úvěrový produkt stane neaktivním a nedostupným pro klienty. Pokud je prázdné, produkt zatížení se nikdy nestane neaktivním."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Fälligkeitsbetrag",
"Maturity Date": "Fälligkeitstag",
"Max Age": "Maximales Alter",
"Maturity Instructions": "Reife Anweisungen",
"Maximum Deposit Term": "Maximale Einzahlungsdauer",
"Maximum Overdraft Amount Limit": "Maximaler Überziehungsbetrag",
"Maximum Tranche count": "Maximale Tranchenanzahl",
@@ -2934,4 +2935,4 @@
"loan product will be active and available to clients": "Das Datum, an dem das Kreditprodukt aktiv und für Kunden verfügbar sein wird. Wenn das Feld leer ist, ist das Kreditprodukt aktiv, sobald es erstellt wird.",
"loan product will become inactive and unavailable to clients": "Das Datum, an dem das Kreditprodukt inaktiv wird und für Kunden nicht mehr verfügbar ist. Wenn es leer ist, wird das Ladeprodukt niemals inaktiv."
}
}
}
+2 -1
View File
@@ -1521,6 +1521,7 @@
"Matures on": "Matures on",
"Maturity Amount": "Maturity Amount",
"Maturity Date": "Maturity Date",
"Maturity Instructions": "Maturity Instructions",
"Max Age": "Max Age",
"Maximum Deposit Term": "Maximum Deposit Term",
"Maximum Overdraft Amount Limit": "Maximum Overdraft Amount Limit",
@@ -2937,4 +2938,4 @@
"loan product will be active and available to clients": "The date that the loan product will be active and available to clients. If blank, the loan product will be active as soon as it is created.",
"loan product will become inactive and unavailable to clients": "The date that the loan product will become inactive and unavailable to clients. If blank, the load product will never become inactive."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Monto de vencimiento",
"Maturity Date": "Fecha de vencimiento",
"Max Age": "Edad máxima",
"Maturity Instructions": "Instrucciones al Vencimiento",
"Maximum Deposit Term": "Plazo máximo de depósito",
"Maximum Overdraft Amount Limit": "Límite máximo del monto de sobregiro",
"Maximum Tranche count": "Recuento máximo de tramos",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "La fecha en que el producto de Crédito estará activo y disponible para los clientes. Si está en blanco, el producto de Crédito estará activo tan pronto como se cree.",
"loan product will become inactive and unavailable to clients": "La fecha en que el producto de Crédito quedará inactivo y no estará disponible para los clientes. Si está en blanco, el producto de carga nunca quedará inactivo."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Montant à l'échéance",
"Maturity Date": "Date d'échéance",
"Max Age": "Âge maximum",
"Maturity Instructions": "Instructions de maturité",
"Maximum Deposit Term": "Durée de dépôt maximale",
"Maximum Overdraft Amount Limit": "Limite maximale du montant du découvert",
"Maximum Tranche count": "Nombre maximal de tranches",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "La date à laquelle le produit de prêt sera actif et disponible pour les clients. Si ce champ est vide, le produit de prêt sera actif dès sa création.",
"loan product will become inactive and unavailable to clients": "Date à laquelle le produit de prêt deviendra inactif et indisponible pour les clients. S'il est vide, le produit chargé ne deviendra jamais inactif."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Importo di scadenza",
"Maturity Date": "Data di scadenza",
"Max Age": "Età massima",
"Maturity Instructions": "Istruzioni di maturità",
"Maximum Deposit Term": "Durata massima del deposito",
"Maximum Overdraft Amount Limit": "Limite massimo dell'importo dello scoperto",
"Maximum Tranche count": "Conteggio massimo della tranche",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "La data in cui il prodotto di prestito sarà attivo e disponibile per i clienti. Se vuoto, il prodotto di prestito sarà attivo non appena verrà creato.",
"loan product will become inactive and unavailable to clients": "La data in cui il prodotto di prestito diventerà inattivo e non disponibile per i clienti. Se vuoto, il prodotto caricato non diventerà mai inattivo."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "만기금액",
"Maturity Date": "만기일",
"Max Age": "최대 연령",
"Maturity Instructions": "성숙 지침",
"Maximum Deposit Term": "최대 예금 기간",
"Maximum Overdraft Amount Limit": "최대 초과인출 금액 한도",
"Maximum Tranche count": "최대 트랜치 수",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "대출 상품이 활성화되어 고객에게 제공되는 날짜입니다. 비어 있으면 대출 상품이 생성되자마자 활성화됩니다.",
"loan product will become inactive and unavailable to clients": "대출 상품이 비활성화되어 고객이 사용할 수 없게 되는 날짜입니다. 비어 있으면 로드 제품이 비활성화되지 않습니다."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Termino suma",
"Maturity Date": "Galiojimo data",
"Max Age": "Maksimalus amžius",
"Maturity Instructions": "Brandos instrukcijos",
"Maximum Deposit Term": "Maksimalus indėlio terminas",
"Maximum Overdraft Amount Limit": "Maksimalus overdrafto sumos limitas",
"Maximum Tranche count": "Maksimalus dalių skaičius",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "Data, kada paskolos produktas bus aktyvus ir bus prieinamas klientams. Jei tuščia, paskolos produktas bus aktyvus, kai tik bus sukurtas.",
"loan product will become inactive and unavailable to clients": "Data, kai paskolos produktas taps neaktyvus ir nepasiekiamas klientams. Jei tuščia, įkėlimo produktas niekada netaps neaktyvus."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Termiņa summa",
"Maturity Date": "Derīguma termiņš",
"Max Age": "Maksimālais vecums",
"Maturity Instructions": "Brieduma instrukcijas",
"Maximum Deposit Term": "Maksimālais depozīta termiņš",
"Maximum Overdraft Amount Limit": "Maksimālais overdrafta summas limits",
"Maximum Tranche count": "Maksimālais daļu skaits",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "Datums, kad aizdevuma produkts būs aktīvs un pieejams klientiem. Ja lauks ir tukšs, aizdevuma produkts būs aktīvs, tiklīdz tas tiks izveidots.",
"loan product will become inactive and unavailable to clients": "Datums, kad aizdevuma produkts kļūs neaktīvs un klientiem nebūs pieejams. Ja lauks ir tukšs, ielādes produkts nekad nekļūs neaktīvs."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "परिपक्वता रकम",
"Maturity Date": "परिपक्वता मिति",
"Max Age": "अधिकतम उमेर",
"Maturity Instructions": "परिपक्वता निर्देशनहरू",
"Maximum Deposit Term": "अधिकतम जम्मा अवधि",
"Maximum Overdraft Amount Limit": "अधिकतम ओभरड्राफ्ट रकम सीमा",
"Maximum Tranche count": "अधिकतम किस्ता गणना",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "ऋण उत्पादन सक्रिय र ग्राहकहरूको लागि उपलब्ध हुने मिति। खाली भएमा, ऋण उत्पादन सिर्जना हुने बित्तिकै सक्रिय हुनेछ।",
"loan product will become inactive and unavailable to clients": "ऋण उत्पादन निष्क्रिय र ग्राहकहरु को लागी अनुपलब्ध हुने मिति। यदि खाली छ भने, लोड उत्पादन कहिल्यै निष्क्रिय हुनेछैन।"
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Valor de vencimento",
"Maturity Date": "Data de Vencimento",
"Max Age": "Idade máxima",
"Maturity Instructions": "Instruções de vencimento",
"Maximum Deposit Term": "Prazo máximo de depósito",
"Maximum Overdraft Amount Limit": "Limite máximo do valor do cheque especial",
"Maximum Tranche count": "Contagem máxima de parcelas",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "A data em que o produto de empréstimo estará ativo e disponível para os clientes. Se estiver em branco, o produto de empréstimo estará ativo assim que for criado.",
"loan product will become inactive and unavailable to clients": "A data em que o produto de empréstimo ficará inativo e indisponível para os clientes. Se estiver em branco, o produto de carregamento nunca ficará inativo."
}
}
}
+2 -1
View File
@@ -1523,6 +1523,7 @@
"Maturity Amount": "Kiasi cha Ukomavu",
"Maturity Date": "Tarehe ya Kukomaa",
"Max Age": "Umri wa Max",
"Maturity Instructions": "Maagizo ya ukomavu",
"Maximum Deposit Term": "Muda wa Juu wa Amana",
"Maximum Overdraft Amount Limit": "Kikomo cha juu cha Kiasi cha Overdraft",
"Maximum Tranche count": "Idadi ya juu ya Tranche",
@@ -2935,4 +2936,4 @@
"loan product will be active and available to clients": "Tarehe ambayo bidhaa ya mkopo itaanza kutumika na inapatikana kwa wateja. Ikiwa tupu, bidhaa ya mkopo itaanza kutumika mara tu itakapoundwa.",
"loan product will become inactive and unavailable to clients": "Tarehe ambayo bidhaa ya mkopo itaacha kutumika na haitapatikana kwa wateja. Ikiwa tupu, bidhaa ya kupakia haitafanya kazi kamwe."
}
}
}