diff --git a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
index 13853b5173..c805bae826 100644
--- a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
+++ b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
@@ -372,6 +372,13 @@
{{ 'labels.inputs.Loan Schedule' | translate}}
+ 0">
+ {{ 'labels.inputs.SUPPORTED INTEREST REFUND TYPES' | translate}}:
+
+ {{mapHumanReadableValueStringEnumOptionDataList(supportedInterestRefundTypes)}}
+
+
+
{{ 'labels.inputs.Down Payments' | translate}}
diff --git a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
index c282051103..54654224dc 100644
--- a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
+++ b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
@@ -3,7 +3,7 @@ import { DelinquencyBucket, LoanProduct } from '../../models/loan-product.model'
import { AccountingMapping, Charge, ChargeToIncomeAccountMapping, GLAccount, PaymentChannelToFundSourceMapping, PaymentType, PaymentTypeOption } from '../../../../shared/models/general.model';
import { AdvancePaymentAllocationData, CreditAllocation, PaymentAllocation } from '../../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
import { LoanProducts } from '../../loan-products';
-import { CodeName, OptionData } from '../../../../shared/models/option-data.model';
+import { CodeName, OptionData, StringEnumOptionData } from '../../../../shared/models/option-data.model';
import { Accounting } from 'app/core/utils/accounting';
@Component({
@@ -19,6 +19,7 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
@Input() useDueForRepaymentsConfigurations: boolean;
@Input() paymentAllocations: PaymentAllocation | null;
@Input() creditAllocations: CreditAllocation | null;
+ @Input() supportedInterestRefundTypes: StringEnumOptionData[] | null;
variationsDisplayedColumns: string[] = ['valueConditionType', 'borrowerCycleNumber', 'minValue', 'defaultValue', 'maxValue'];
chargesDisplayedColumns: string[] = ['name', 'chargeCalculationType', 'amount', 'chargeTimeType'];
@@ -331,4 +332,8 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
return this.accounting.getAccountRuleName(value.toUpperCase());
}
+ mapHumanReadableValueStringEnumOptionDataList(incomingParameter: StringEnumOptionData[]): string[] {
+ return incomingParameter.map(v => v.value);
+ }
+
}
diff --git a/src/app/products/loan-products/create-loan-product/create-loan-product.component.html b/src/app/products/loan-products/create-loan-product/create-loan-product.component.html
index 5d2b433e74..d16ce52e66 100644
--- a/src/app/products/loan-products/create-loan-product/create-loan-product.component.html
+++ b/src/app/products/loan-products/create-loan-product/create-loan-product.component.html
@@ -51,6 +51,15 @@
+
+ {{'labels.inputs.INTEREST REFUND' | translate}}
+
+
+
+
{{'labels.inputs.PAYMENT ALLOCATION' | translate}}
diff --git a/src/app/products/loan-products/create-loan-product/create-loan-product.component.ts b/src/app/products/loan-products/create-loan-product/create-loan-product.component.ts
index 7a7cf7f50f..4e8e99a8b7 100644
--- a/src/app/products/loan-products/create-loan-product/create-loan-product.component.ts
+++ b/src/app/products/loan-products/create-loan-product/create-loan-product.component.ts
@@ -9,12 +9,14 @@ import { LoanProductTermsStepComponent } from '../loan-product-stepper/loan-prod
import { LoanProductSettingsStepComponent } from '../loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component';
import { LoanProductChargesStepComponent } from '../loan-product-stepper/loan-product-charges-step/loan-product-charges-step.component';
import { LoanProductAccountingStepComponent } from '../loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component';
+import { LoanProductInterestRefundStepComponent } from '../loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component';
/** Custom Services */
import { ProductsService } from 'app/products/products.service';
import { LoanProducts } from '../loan-products';
import { AdvancedPaymentAllocation, AdvancedPaymentStrategy, PaymentAllocation } from '../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
import { Accounting } from 'app/core/utils/accounting';
+import { StringEnumOptionData } from '../../../shared/models/option-data.model';
@Component({
selector: 'mifosx-create-loan-product',
@@ -25,6 +27,7 @@ export class CreateLoanProductComponent implements OnInit {
@ViewChild(LoanProductDetailsStepComponent, { static: true }) loanProductDetailsStep: LoanProductDetailsStepComponent;
@ViewChild(LoanProductCurrencyStepComponent, { static: true }) loanProductCurrencyStep: LoanProductCurrencyStepComponent;
+ @ViewChild(LoanProductInterestRefundStepComponent, {static: true}) loanProductInterestRefundStep: LoanProductInterestRefundStepComponent;
@ViewChild(LoanProductTermsStepComponent, { static: true }) loanProductTermsStep: LoanProductTermsStepComponent;
@ViewChild(LoanProductSettingsStepComponent, { static: true }) loanProductSettingsStep: LoanProductSettingsStepComponent;
@ViewChild(LoanProductChargesStepComponent, { static: true }) loanProductChargesStep: LoanProductChargesStepComponent;
@@ -37,6 +40,7 @@ export class CreateLoanProductComponent implements OnInit {
isAdvancedPaymentStrategy = false;
paymentAllocation: PaymentAllocation[] = [];
creditAllocation: PaymentAllocation[] = [];
+ supportedInterestRefundTypes: StringEnumOptionData[] = [];
advancedPaymentAllocations: AdvancedPaymentAllocation[] = [];
advancedCreditAllocations: AdvancedPaymentAllocation[] = [];
@@ -79,6 +83,12 @@ export class CreateLoanProductComponent implements OnInit {
}
}
+ get loanProductInterestRefundForm() {
+ if (this.loanProductInterestRefundStep != null) {
+ return this.loanProductInterestRefundStep.loanProductInterestRefundForm;
+ }
+ }
+
get loanProductTermsForm() {
return this.loanProductTermsStep.loanProductTermsForm;
}
@@ -99,6 +109,10 @@ export class CreateLoanProductComponent implements OnInit {
this.creditAllocation = paymentAllocation;
}
+ setSupportedInterestRefundTypes(supportedInterestRefundTypes: StringEnumOptionData[]): void {
+ this.supportedInterestRefundTypes = supportedInterestRefundTypes;
+ }
+
get loanProductSettingsForm() {
return this.loanProductSettingsStep.loanProductSettingsForm;
}
@@ -129,6 +143,7 @@ export class CreateLoanProductComponent implements OnInit {
if (this.isAdvancedPaymentStrategy) {
loanProduct['paymentAllocation'] = this.paymentAllocation;
loanProduct['creditAllocation'] = this.creditAllocation;
+ loanProduct['supportedInterestRefundTypes'] = this.supportedInterestRefundTypes;
}
return loanProduct;
}
@@ -139,6 +154,7 @@ export class CreateLoanProductComponent implements OnInit {
loanProduct['dueDaysForRepaymentEvent'] = null;
loanProduct['overDueDaysForRepaymentEvent'] = null;
}
+ loanProduct['supportedInterestRefundTypes'] = this.mapStringEnumOptionToIdList(loanProduct['supportedInterestRefundTypes']);
delete loanProduct['useDueForRepaymentsConfigurations'];
this.productsService.createLoanProduct(loanProduct)
@@ -147,4 +163,7 @@ export class CreateLoanProductComponent implements OnInit {
});
}
+ mapStringEnumOptionToIdList(incomingValues: StringEnumOptionData[]): string[] {
+ return incomingValues.map(v => v.id);
+ }
}
diff --git a/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.html b/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.html
index cf9629de81..5100411115 100644
--- a/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.html
+++ b/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.html
@@ -51,6 +51,15 @@
+
+ {{'labels.inputs.INTEREST REFUND' | translate}}
+
+
+
+
{{'labels.inputs.PAYMENT ALLOCATION' | translate}}
diff --git a/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.ts b/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.ts
index ae890b0c9c..d485bd40e8 100644
--- a/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.ts
+++ b/src/app/products/loan-products/edit-loan-product/edit-loan-product.component.ts
@@ -14,8 +14,10 @@ import { LoanProductAccountingStepComponent } from '../loan-product-stepper/loan
import { ProductsService } from 'app/products/products.service';
import { GlobalConfiguration } from 'app/system/configurations/global-configurations-tab/configuration.model';
import { LoanProducts } from '../loan-products';
-import { AdvancedCreditAllocation, AdvancedPaymentAllocation, AdvancedPaymentStrategy, CreditAllocation, PaymentAllocation, PaymentAllocationOrder, PaymentAllocationTransactionTypes } from '../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
+import { AdvancedCreditAllocation, AdvancedPaymentAllocation, AdvancedPaymentStrategy, CreditAllocation, PaymentAllocation } from '../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
import { Accounting } from 'app/core/utils/accounting';
+import { LoanProductInterestRefundStepComponent } from '../loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component';
+import { StringEnumOptionData } from '../../../shared/models/option-data.model';
@Component({
selector: 'mifosx-edit-loan-product',
@@ -26,6 +28,7 @@ export class EditLoanProductComponent implements OnInit {
@ViewChild(LoanProductDetailsStepComponent, { static: true }) loanProductDetailsStep: LoanProductDetailsStepComponent;
@ViewChild(LoanProductCurrencyStepComponent, { static: true }) loanProductCurrencyStep: LoanProductCurrencyStepComponent;
+ @ViewChild(LoanProductInterestRefundStepComponent, { static: true }) loanProductInterestRefundStep: LoanProductInterestRefundStepComponent;
@ViewChild(LoanProductTermsStepComponent, { static: true }) loanProductTermsStep: LoanProductTermsStepComponent;
@ViewChild(LoanProductSettingsStepComponent, { static: true }) loanProductSettingsStep: LoanProductSettingsStepComponent;
@ViewChild(LoanProductChargesStepComponent, { static: true }) loanProductChargesStep: LoanProductChargesStepComponent;
@@ -41,6 +44,7 @@ export class EditLoanProductComponent implements OnInit {
creditAllocation: CreditAllocation[] = [];
advancedPaymentAllocations: AdvancedPaymentAllocation[] = [];
advancedCreditAllocations: AdvancedCreditAllocation[] = [];
+ supportedInterestRefundTypes: StringEnumOptionData[] = [];
/**
* @param {ActivatedRoute} route Activated Route.
@@ -77,6 +81,7 @@ export class EditLoanProductComponent implements OnInit {
if (this.isAdvancedPaymentStrategy) {
this.paymentAllocation = this.loanProductAndTemplate.paymentAllocation;
this.creditAllocation = this.loanProductAndTemplate.creditAllocation;
+ this.supportedInterestRefundTypes = this.loanProductAndTemplate.supportedInterestRefundTypes;
}
}
@@ -96,6 +101,12 @@ export class EditLoanProductComponent implements OnInit {
return this.loanProductSettingsStep.loanProductSettingsForm;
}
+ get loanProductInterestRefundForm() {
+ if (this.loanProductInterestRefundStep != null) {
+ return this.loanProductInterestRefundStep.loanProductInterestRefundForm;
+ }
+ }
+
advancePaymentStrategy(value: string): void {
this.isAdvancedPaymentStrategy = LoanProducts.isAdvancedPaymentAllocationStrategy(value);
}
@@ -115,6 +126,10 @@ export class EditLoanProductComponent implements OnInit {
this.wasPaymentAllocationChanged = true;
}
+ setSupportedInterestRefundTypes(supportedInterestRefundTypes: StringEnumOptionData[]): void {
+ this.supportedInterestRefundTypes = supportedInterestRefundTypes;
+ }
+
paymentAllocationChanged(value: boolean): void {
this.wasPaymentAllocationChanged = value;
}
@@ -154,9 +169,11 @@ export class EditLoanProductComponent implements OnInit {
// Default empty array
loanProduct['paymentAllocation'] = [];
loanProduct['creditAllocation'] = [];
+ loanProduct['supportedInterestRefundTypes'] = [];
if (this.isAdvancedPaymentStrategy) {
loanProduct['paymentAllocation'] = this.paymentAllocation;
loanProduct['creditAllocation'] = this.creditAllocation;
+ loanProduct['supportedInterestRefundTypes'] = this.supportedInterestRefundTypes;
}
return loanProduct;
}
@@ -167,6 +184,7 @@ export class EditLoanProductComponent implements OnInit {
loanProduct['dueDaysForRepaymentEvent'] = null;
loanProduct['overDueDaysForRepaymentEvent'] = null;
}
+ loanProduct['supportedInterestRefundTypes'] = this.mapStringEnumOptionToIdList(loanProduct['supportedInterestRefundTypes']);
delete loanProduct['useDueForRepaymentsConfigurations'];
this.productsService.updateLoanProduct(this.loanProductAndTemplate.id, loanProduct)
@@ -175,4 +193,8 @@ export class EditLoanProductComponent implements OnInit {
});
}
+ mapStringEnumOptionToIdList(incomingValues: StringEnumOptionData[]): string[] {
+ return incomingValues.map(v => v.id);
+ }
+
}
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.html b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.html
new file mode 100644
index 0000000000..3d22299147
--- /dev/null
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.html
@@ -0,0 +1,14 @@
+
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.scss b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.scss
new file mode 100644
index 0000000000..aa8d23226f
--- /dev/null
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.scss
@@ -0,0 +1,3 @@
+.margin-t {
+ margin-top: 1em;
+}
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.spec.ts b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.spec.ts
new file mode 100644
index 0000000000..15fd377aa3
--- /dev/null
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.spec.ts
@@ -0,0 +1,25 @@
+import { async, ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { LoanProductInterestRefundStepComponent } from './loan-product-interest-refund-step.component';
+
+describe('LoanProductInterestRefundStepComponent', () => {
+ let component: LoanProductInterestRefundStepComponent;
+ let fixture: ComponentFixture;
+
+ beforeEach(async(() => {
+ TestBed.configureTestingModule({
+ declarations: [ LoanProductInterestRefundStepComponent ]
+ })
+ .compileComponents();
+ }));
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(LoanProductInterestRefundStepComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.ts b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.ts
new file mode 100644
index 0000000000..727c80ad2c
--- /dev/null
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component.ts
@@ -0,0 +1,54 @@
+import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
+import { UntypedFormBuilder, UntypedFormGroup} from '@angular/forms';
+import { StringEnumOptionData } from '../../../../shared/models/option-data.model';
+
+@Component({
+ selector: 'mifosx-loan-product-interest-refund-step',
+ templateUrl: './loan-product-interest-refund-step.component.html',
+ styleUrls: ['./loan-product-interest-refund-step.component.scss']
+})
+export class LoanProductInterestRefundStepComponent implements OnInit {
+
+ @Input() loanProductsTemplate: any;
+ @Output() supportedInterestRefundTypes = new EventEmitter();
+
+ loanProductInterestRefundForm: UntypedFormGroup;
+
+ supportedInterestRefundTypesOptions: StringEnumOptionData[];
+
+ constructor(private formBuilder: UntypedFormBuilder) {
+ this.createLoanProductInterestRefundForm();
+ this.setConditionalControls();
+ }
+
+ ngOnInit() {
+ this.supportedInterestRefundTypesOptions = this.loanProductsTemplate.supportedInterestRefundTypesOptions;
+ const values: StringEnumOptionData[] = this.loanProductsTemplate.supportedInterestRefundTypes;
+ const supportedInterestRefundTypes: string[] = this.mapStringEnumOptionToIdList(values);
+ this.loanProductInterestRefundForm.patchValue({
+ 'supportedInterestRefundTypes': supportedInterestRefundTypes
+ });
+ this.supportedInterestRefundTypes.emit(values);
+ }
+
+ createLoanProductInterestRefundForm() {
+ this.loanProductInterestRefundForm = this.formBuilder.group({
+ 'supportedInterestRefundTypes': ''
+ });
+ }
+
+ setConditionalControls() {
+ this.loanProductInterestRefundForm.get('supportedInterestRefundTypes').valueChanges
+ .subscribe(value => {
+ this.supportedInterestRefundTypes.emit(this.mapIdToStringEnumOptionList(value, this.loanProductsTemplate.supportedInterestRefundTypesOptions));
+ });
+ }
+
+ mapStringEnumOptionToIdList(incomingValues: StringEnumOptionData[]): string[] {
+ return incomingValues.map(v => v.id);
+ }
+
+ mapIdToStringEnumOptionList(incomingValues: string[], options: StringEnumOptionData[]): StringEnumOptionData[] {
+ return options.filter(v => incomingValues.includes(v.id));
+ }
+}
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 84a1665a58..462de57ec8 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
@@ -6,6 +6,7 @@
[useDueForRepaymentsConfigurations]="loanProduct.useDueForRepaymentsConfigurations"
[paymentAllocations]="loanProduct.paymentAllocation"
[creditAllocations]="loanProduct.creditAllocation"
+[supportedInterestRefundTypes]="loanProduct.supportedInterestRefundTypes"
>
diff --git a/src/app/products/loan-products/models/loan-product.model.ts b/src/app/products/loan-products/models/loan-product.model.ts
index d415c10164..094ed0a11f 100644
--- a/src/app/products/loan-products/models/loan-product.model.ts
+++ b/src/app/products/loan-products/models/loan-product.model.ts
@@ -1,5 +1,5 @@
import { AccountingMapping, ChargeToIncomeAccountMapping, Currency, PaymentChannelToFundSourceMapping } from 'app/shared/models/general.model';
-import { OptionData } from 'app/shared/models/option-data.model';
+import { OptionData, StringEnumOptionData } from 'app/shared/models/option-data.model';
import { CreditAllocation, PaymentAllocation } from '../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
export interface LoanProduct {
@@ -125,6 +125,7 @@ export interface LoanProduct {
feeToIncomeAccountMappings?: ChargeToIncomeAccountMapping[];
penaltyToIncomeAccountMappings?: ChargeToIncomeAccountMapping[];
enableAccrualActivityPosting?: boolean;
+ supportedInterestRefundTypes?: StringEnumOptionData[];
}
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 5059d6368a..dce519fa01 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
@@ -18,5 +18,6 @@
[useDueForRepaymentsConfigurations]="useDueForRepaymentsConfigurations"
[paymentAllocations]="loanProduct.paymentAllocation"
[creditAllocations]="loanProduct.creditAllocation"
+[supportedInterestRefundTypes]="loanProduct.supportedInterestRefundTypes"
>
diff --git a/src/app/products/products.module.ts b/src/app/products/products.module.ts
index 35307d9e92..c60f459031 100644
--- a/src/app/products/products.module.ts
+++ b/src/app/products/products.module.ts
@@ -12,6 +12,7 @@ import { ProductsComponent } from './products.component';
import { LoanProductsComponent } from './loan-products/loan-products.component';
import { LoanProductDetailsStepComponent } from './loan-products/loan-product-stepper/loan-product-details-step/loan-product-details-step.component';
import { LoanProductCurrencyStepComponent } from './loan-products/loan-product-stepper/loan-product-currency-step/loan-product-currency-step.component';
+import { LoanProductInterestRefundStepComponent } from './loan-products/loan-product-stepper/loan-product-interest-refund-step/loan-product-interest-refund-step.component';
import { LoanProductTermsStepComponent } from './loan-products/loan-product-stepper/loan-product-terms-step/loan-product-terms-step.component';
import { LoanProductSettingsStepComponent } from './loan-products//loan-product-stepper/loan-product-settings-step/loan-product-settings-step.component';
import { LoanProductChargesStepComponent } from './loan-products/loan-product-stepper/loan-product-charges-step/loan-product-charges-step.component';
@@ -138,6 +139,7 @@ import { LoanProductSummaryComponent } from './loan-products/common/loan-product
LoanProductsComponent,
LoanProductDetailsStepComponent,
LoanProductCurrencyStepComponent,
+ LoanProductInterestRefundStepComponent,
LoanProductTermsStepComponent,
LoanProductSettingsStepComponent,
LoanProductPaymentStrategyStepComponent,
diff --git a/src/app/shared/models/option-data.model.ts b/src/app/shared/models/option-data.model.ts
index 0159694270..0b5fe737f2 100644
--- a/src/app/shared/models/option-data.model.ts
+++ b/src/app/shared/models/option-data.model.ts
@@ -8,3 +8,9 @@ export interface CodeName {
code: string;
name: string;
}
+
+export interface StringEnumOptionData {
+ id: string;
+ value: string;
+ code: string;
+}
diff --git a/src/assets/translations/cs-CS.json b/src/assets/translations/cs-CS.json
index dbd28e6122..4bc251228a 100644
--- a/src/assets/translations/cs-CS.json
+++ b/src/assets/translations/cs-CS.json
@@ -2388,7 +2388,9 @@
"to": "na",
"Down Payments": "Zálohy",
"Enable Down Payments": "Povolit zálohové platby",
- "valid": "platný"
+ "valid": "platný",
+ "INTEREST REFUND": "VRÁCENÍ ÚROKU",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Podporované typy vrácení úroků"
},
"links": {
"Community": "Společenství",
@@ -3373,6 +3375,7 @@
"Withdraw": "Ustoupit",
"Yes": "Ano",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Transakce s vrácením peněz, kde bude automaticky vypočítána refundace úroků"
}
}
diff --git a/src/assets/translations/de-DE.json b/src/assets/translations/de-DE.json
index b77b766f0f..5de2cf3305 100644
--- a/src/assets/translations/de-DE.json
+++ b/src/assets/translations/de-DE.json
@@ -2388,7 +2388,9 @@
"to": "Zu",
"Down Payments": "Anzahlungen",
"Enable Down Payments": "Anzahlungen aktivieren",
- "valid": "gültig"
+ "valid": "gültig",
+ "INTEREST REFUND": "ZINSRÜCKERSTATTUNG",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Unterstützte Zinsrückerstattungsarten"
},
"links": {
"Community": "Gemeinschaft",
@@ -3372,6 +3374,7 @@
"Withdraw": "Zurückziehen",
"Yes": "Ja",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Rückerstattungstransaktionen, bei denen die Zinsrückerstattung automatisch berechnet wird"
}
}
diff --git a/src/assets/translations/en-US.json b/src/assets/translations/en-US.json
index 4bb7e2143b..533d1c97df 100644
--- a/src/assets/translations/en-US.json
+++ b/src/assets/translations/en-US.json
@@ -2389,7 +2389,9 @@
"to": "to",
"Down Payments": "Down Payments",
"Enable Down Payments": "Enable Down Payments",
- "valid": "valid"
+ "valid": "valid",
+ "INTEREST REFUND": "INTEREST REFUND",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Supported interest refund types"
},
"links": {
"Community": "Community",
@@ -3374,6 +3376,7 @@
"Withdraw": "Withdraw",
"Yes": "Yes",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Refund transactions where interest refund will automatically be calculated"
}
}
diff --git a/src/assets/translations/es-MX.json b/src/assets/translations/es-MX.json
index 81971b0f91..3e754fb4fe 100644
--- a/src/assets/translations/es-MX.json
+++ b/src/assets/translations/es-MX.json
@@ -2387,7 +2387,9 @@
"to": "a",
"Down Payments": "Pago Inicial",
"Enable Down Payments": "Habilitar Pagos Iniciales",
- "valid": "válido"
+ "valid": "válido",
+ "INTEREST REFUND": "REEMBOLSO DE INTERESES",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de intereses admitidos"
},
"links": {
"Community": "Comunidad",
@@ -3372,6 +3374,7 @@
"Withdraw": "Retirar",
"Yes": "Sí",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Transacciones de reembolso en las que el reembolso de intereses se calculará automáticamente"
}
}
diff --git a/src/assets/translations/fr-FR.json b/src/assets/translations/fr-FR.json
index 1ee1c9e781..d5a38fc37b 100644
--- a/src/assets/translations/fr-FR.json
+++ b/src/assets/translations/fr-FR.json
@@ -2388,7 +2388,9 @@
"to": "à",
"Down Payments": "Acomptes",
"Enable Down Payments": "Activer les acomptes",
- "valid": "valide"
+ "valid": "valide",
+ "INTEREST REFUND": "REMBOURSEMENT DES INTÉRÊTS",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Types de remboursement d'intérêts pris en charge"
},
"links": {
"Community": "Communauté",
@@ -3373,6 +3375,7 @@
"Withdraw": "Retirer",
"Yes": "Oui",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Opérations de remboursement pour lesquelles le remboursement des intérêts sera automatiquement calculé"
}
}
diff --git a/src/assets/translations/it-IT.json b/src/assets/translations/it-IT.json
index 5d4cbfcec3..5b87989207 100644
--- a/src/assets/translations/it-IT.json
+++ b/src/assets/translations/it-IT.json
@@ -2388,7 +2388,9 @@
"to": "A",
"Down Payments": "Acconti",
"Enable Down Payments": "Abilita acconti",
- "valid": "valido"
+ "valid": "valido",
+ "INTEREST REFUND": "RIMBORSO DEGLI INTERESSI",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipi di rimborso degli interessi supportati"
},
"links": {
"Community": "Comunità",
@@ -3373,6 +3375,7 @@
"Withdraw": "Ritirare",
"Yes": "SÌ",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Transazioni di rimborso in cui il rimborso degli interessi verrà calcolato automaticamente"
}
}
diff --git a/src/assets/translations/ko-KO.json b/src/assets/translations/ko-KO.json
index 182808e8d8..aa1b68c6ff 100644
--- a/src/assets/translations/ko-KO.json
+++ b/src/assets/translations/ko-KO.json
@@ -2389,7 +2389,9 @@
"to": "에게",
"Down Payments": "계약금",
"Enable Down Payments": "계약금 활성화",
- "valid": "유효한"
+ "valid": "유효한",
+ "INTEREST REFUND": "이자환급",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "지원되는 이자 환불 유형"
},
"links": {
"Community": "지역 사회",
@@ -3373,6 +3375,7 @@
"Withdraw": "철회하다",
"Yes": "예",
"loan product will be active and available to clients": "대출 상품이 활성화되어 고객에게 제공되는 날짜입니다. 비어 있으면 대출 상품이 생성되자마자 활성화됩니다.",
- "loan product will become inactive and unavailable to clients": "대출 상품이 비활성화되어 고객이 사용할 수 없게 되는 날짜입니다. 비어 있으면 로드 제품이 비활성화되지 않습니다."
+ "loan product will become inactive and unavailable to clients": "대출 상품이 비활성화되어 고객이 사용할 수 없게 되는 날짜입니다. 비어 있으면 로드 제품이 비활성화되지 않습니다.",
+ "Refund transactions where interest refund will automatically be calculated": "이자 환불이 자동으로 계산되는 환불 거래"
}
}
diff --git a/src/assets/translations/lt-LT.json b/src/assets/translations/lt-LT.json
index 687c4ffc77..a8286740bc 100644
--- a/src/assets/translations/lt-LT.json
+++ b/src/assets/translations/lt-LT.json
@@ -2388,7 +2388,9 @@
"to": "į",
"Down Payments": "Pradiniai mokėjimai",
"Enable Down Payments": "Įgalinti pradinius mokėjimus",
- "valid": "galioja"
+ "valid": "galioja",
+ "INTEREST REFUND": "PALŪKANŲ GRĄŽINIMAS",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Palaikomi palūkanų grąžinimo tipai"
},
"links": {
"Community": "bendruomenė",
@@ -3373,6 +3375,7 @@
"Withdraw": "Atsitraukti",
"Yes": "Taip",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Atmaksas darījumi, kuros procentu atmaksa tiks aprēķināta automātiski"
}
}
diff --git a/src/assets/translations/lv-LV.json b/src/assets/translations/lv-LV.json
index 50a9981722..513d11b5c9 100644
--- a/src/assets/translations/lv-LV.json
+++ b/src/assets/translations/lv-LV.json
@@ -2388,7 +2388,9 @@
"to": "uz",
"Down Payments": "Pirmās iemaksas",
"Enable Down Payments": "Iespējot pirmās iemaksas",
- "valid": "derīgs"
+ "valid": "derīgs",
+ "INTEREST REFUND": "PROCENTU ATMAKSĀŠANA",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Atbalstītie procentu atmaksas veidi"
},
"links": {
"Community": "kopiena",
@@ -3373,6 +3375,7 @@
"Withdraw": "Izņemt",
"Yes": "Jā",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Grąžinimo operacijos, kai palūkanų grąžinimas bus skaičiuojamas automatiškai"
}
}
diff --git a/src/assets/translations/ne-NE.json b/src/assets/translations/ne-NE.json
index bc5c3e5b99..0a083a4772 100644
--- a/src/assets/translations/ne-NE.json
+++ b/src/assets/translations/ne-NE.json
@@ -2388,7 +2388,9 @@
"to": "को",
"Down Payments": "तल भुक्तानीहरू",
"Enable Down Payments": "डाउन पेमेन्टहरू सक्षम गर्नुहोस्",
- "valid": "मान्य"
+ "valid": "मान्य",
+ "INTEREST REFUND": "व्याज परतावा",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "समर्थित व्याज परतावा प्रकार"
},
"links": {
"Community": "समुदाय",
@@ -3373,6 +3375,7 @@
"Withdraw": "निकाल्नु",
"Yes": "हो",
"loan product will be active and available to clients": "ऋण उत्पादन सक्रिय र ग्राहकहरूको लागि उपलब्ध हुने मिति। खाली भएमा, ऋण उत्पादन सिर्जना हुने बित्तिकै सक्रिय हुनेछ।",
- "loan product will become inactive and unavailable to clients": "ऋण उत्पादन निष्क्रिय र ग्राहकहरु को लागी अनुपलब्ध हुने मिति। यदि खाली छ भने, लोड उत्पादन कहिल्यै निष्क्रिय हुनेछैन।"
+ "loan product will become inactive and unavailable to clients": "ऋण उत्पादन निष्क्रिय र ग्राहकहरु को लागी अनुपलब्ध हुने मिति। यदि खाली छ भने, लोड उत्पादन कहिल्यै निष्क्रिय हुनेछैन।",
+ "Refund transactions where interest refund will automatically be calculated": "फिर्ता लेनदेन जहाँ ब्याज फिर्ता स्वतः गणना हुनेछ"
}
}
diff --git a/src/assets/translations/pt-PT.json b/src/assets/translations/pt-PT.json
index 6fdfc01a4d..6860444872 100644
--- a/src/assets/translations/pt-PT.json
+++ b/src/assets/translations/pt-PT.json
@@ -2388,7 +2388,9 @@
"to": "para",
"Down Payments": "Adiantamentos",
"Enable Down Payments": "Habilitar adiantamentos",
- "valid": "válido"
+ "valid": "válido",
+ "INTEREST REFUND": "REEMBOLSO DE JUROS",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de juros suportados"
},
"links": {
"Community": "Comunidade",
@@ -3373,6 +3375,7 @@
"Withdraw": "Retirar",
"Yes": "Sim",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Transações de reembolso em que o reembolso de juros será calculado automaticamente"
}
}
diff --git a/src/assets/translations/sw-SW.json b/src/assets/translations/sw-SW.json
index 7dc727dff3..541f08b3f6 100644
--- a/src/assets/translations/sw-SW.json
+++ b/src/assets/translations/sw-SW.json
@@ -2388,7 +2388,9 @@
"to": "kwa",
"Down Payments": "Malipo ya Chini",
"Enable Down Payments": "Washa Malipo ya Chini",
- "valid": "halali"
+ "valid": "halali",
+ "INTEREST REFUND": "MAREJESHO YA RIBA",
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Aina za kurejesha riba zinazotumika"
},
"links": {
"Community": "Jumuiya",
@@ -3373,6 +3375,7 @@
"Withdraw": "Kutoa",
"Yes": "Ndiyo",
"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."
+ "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.",
+ "Refund transactions where interest refund will automatically be calculated": "Shughuli za kurejesha pesa ambapo urejeshaji wa riba utahesabiwa kiotomatiki"
}
}