Manage Tax configurations views to use i18n

This commit is contained in:
Jose Alberto Hernandez
2024-04-16 16:27:29 -06:00
committed by Jose Alberto Hernandez
parent cdc9d74122
commit caf3d39719
26 changed files with 261 additions and 115 deletions
+1
View File
@@ -16,6 +16,7 @@ export class DateFormatPipe implements PipeTransform {
return ''; return '';
} }
let dateVal; let dateVal;
moment.locale(this.settingsService.language.code);
if (value instanceof Array) { if (value instanceof Array) {
dateVal = moment(value.join('-'), 'YYYY-MM-DD'); dateVal = moment(value.join('-'), 'YYYY-MM-DD');
} else { } else {
@@ -9,84 +9,75 @@
<div fxLayout="column"> <div fxLayout="column">
<mat-form-field> <mat-form-field>
<mat-label>Name</mat-label> <mat-label>{{'labels.inputs.Name' | translate}}</mat-label>
<input matInput required formControlName="name"> <input matInput required formControlName="name">
<mat-error *ngIf="taxComponentForm.controls.name.hasError('required')"> <mat-error *ngIf="taxComponentForm.controls.name.hasError('required')">
Name is <strong>required</strong> {{'labels.inputs.Name' | translate}} {{'labels.commons.is' | translate}}
<strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<mat-form-field> <mat-form-field>
<mat-label>Percentage</mat-label> <mat-label>{{'labels.inputs.Percentage' | translate}}</mat-label>
<input type="number" matInput required formControlName="percentage"> <input type="number" matInput required formControlName="percentage">
<mat-error *ngIf="taxComponentForm.controls.percentage.hasError('required')"> <mat-error *ngIf="taxComponentForm.controls.percentage.hasError('required')">
Percentage is <strong>required</strong> {{'labels.inputs.Percentage ' | translate}} {{'labels.commons.is' | translate}}
<strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
<mat-error *ngIf="taxComponentForm.controls.percentage.hasError('pattern') || <mat-error *ngIf="taxComponentForm.controls.percentage.hasError('pattern') ||
taxComponentForm.controls.percentage.hasError('max')"> taxComponentForm.controls.percentage.hasError('max')">
Percentage <strong>should</strong> be larger than 0 and at most 100 {{'labels.inputs.Percentage' | translate}} <strong>should</strong> be larger than 0 and at most 100
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<mat-form-field> <mat-form-field>
<mat-label>Debit Account Type</mat-label> <mat-label>{{'labels.inputs.Debit Account Type' | translate}}</mat-label>
<mat-select formControlName="debitAccountType"> <mat-select formControlName="debitAccountType">
<mat-option *ngFor="let debitAccountType of debitAccountTypeData" [value]="debitAccountType.id"> <mat-option *ngFor="let debitAccountType of debitAccountTypeData" [value]="debitAccountType.id">
{{ debitAccountType.value }} {{ 'labels.inputs.accounting.' + debitAccountType.value | translate }}
</mat-option> </mat-option>
</mat-select> </mat-select>
</mat-form-field> </mat-form-field>
<mat-form-field *ngIf="taxComponentForm.controls.debitAccountType.value"> <mifosx-gl-account-selector *ngIf="debitAccountData.length > 0"
<mat-label>Debit Account</mat-label> [inputFormControl]="taxComponentForm.controls.debitAcountId"
<mat-select required formControlName="debitAcountId"> [glAccountList]="debitAccountData" [required]="false" [inputLabel]="'Credit Account'">
<mat-option *ngFor="let debitAccount of debitAccountData" [value]="debitAccount.id"> </mifosx-gl-account-selector>
{{ debitAccount.name }}
</mat-option>
</mat-select>
<mat-error *ngIf="taxComponentForm.controls.debitAcountId.hasError('required')">
Debit account is <strong>required</strong>
</mat-error>
</mat-form-field>
<mat-form-field> <mat-form-field>
<mat-label>Credit Account Type</mat-label> <mat-label>{{'labels.inputs.Credit Account Type' | translate}}</mat-label>
<mat-select formControlName="creditAccountType"> <mat-select formControlName="creditAccountType">
<mat-option *ngFor="let creditAccountType of creditAccountTypeData" [value]="creditAccountType.id"> <mat-option *ngFor="let creditAccountType of creditAccountTypeData" [value]="creditAccountType.id">
{{ creditAccountType.value }} {{ 'labels.inputs.accounting.' + creditAccountType.value | translate }}
</mat-option> </mat-option>
</mat-select> </mat-select>
</mat-form-field> </mat-form-field>
<mat-form-field *ngIf="taxComponentForm.controls.creditAccountType.value"> <mifosx-gl-account-selector *ngIf="creditAccountData.length > 0"
<mat-label>Credit Account</mat-label> [inputFormControl]="taxComponentForm.controls.creditAcountId"
<mat-select required formControlName="creditAcountId"> [glAccountList]="creditAccountData" [required]="false" [inputLabel]="'Credit Account'">
<mat-option *ngFor="let creditAccount of creditAccountData" [value]="creditAccount.id"> </mifosx-gl-account-selector>
{{ creditAccount.name }}
</mat-option> <mat-form-field (click)="startDatePicker.open()">
</mat-select> <mat-label>{{'labels.inputs.Start Date' | translate}}</mat-label>
<mat-error *ngIf="taxComponentForm.controls.creditAcountId.hasError('required')"> <input matInput [min]="minDate" [max]="maxDate" [matDatepicker]="startDatePicker" required
Credit account is <strong>required</strong> formControlName="startDate">
<mat-datepicker-toggle matSuffix [for]="startDatePicker"></mat-datepicker-toggle>
<mat-datepicker #startDatePicker></mat-datepicker>
<mat-error *ngIf="taxComponentForm.controls.startDate.hasError('required')">
{{'labels.inputs.Start Date' | translate}} {{'labels.commons.is' | translate}}
<strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<mat-form-field (click)="startDatePicker.open()">
<mat-label>Start date</mat-label>
<input matInput [min]="minDate" [max]="maxDate" [matDatepicker]="startDatePicker" required formControlName="startDate">
<mat-datepicker-toggle matSuffix [for]="startDatePicker"></mat-datepicker-toggle>
<mat-datepicker #startDatePicker></mat-datepicker>
<mat-error *ngIf="taxComponentForm.controls.startDate.hasError('required')">
Start date is <strong>required</strong>
</mat-error>
</mat-form-field>
</div> </div>
</mat-card-content> </mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px"> <mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<button type="button" mat-raised-button [routerLink]="['../']">Cancel</button> <button type="button" mat-raised-button [routerLink]="['../']">{{'labels.buttons.Cancel' | translate}}</button>
<button mat-raised-button color="primary" [disabled]="!taxComponentForm.valid" *mifosxHasPermission="'CREATE_TAXCOMPONENT'">Submit</button> <button mat-raised-button color="primary" [disabled]="!taxComponentForm.valid"
*mifosxHasPermission="'CREATE_TAXCOMPONENT'">{{'labels.buttons.Submit' | translate}}</button>
</mat-card-actions> </mat-card-actions>
</form> </form>
@@ -29,11 +29,11 @@ export class CreateTaxComponentComponent implements OnInit {
/** Credit Account Type data. */ /** Credit Account Type data. */
creditAccountTypeData: any; creditAccountTypeData: any;
/** Credit Account data. */ /** Credit Account data. */
creditAccountData: any; creditAccountData: any[] = [];
/** Debit Account Type data. */ /** Debit Account Type data. */
debitAccountTypeData: any; debitAccountTypeData: any;
/** Debit Account data. */ /** Debit Account data. */
debitAccountData: any; debitAccountData: any[] = [];
/** /**
* Retrieves the tax Component template data from `resolve`. * Retrieves the tax Component template data from `resolve`.
@@ -9,38 +9,38 @@
<div fxLayout="column"> <div fxLayout="column">
<mat-form-field> <mat-form-field>
<mat-label>Name</mat-label> <mat-label>{{'labels.inputs.Name' | translate}}</mat-label>
<input matInput required formControlName="name"> <input matInput required formControlName="name">
<mat-error *ngIf="taxComponentForm.controls.name.hasError('required')"> <mat-error *ngIf="taxComponentForm.controls.name.hasError('required')">
Name is <strong>required</strong> {{'labels.inputs.Name' | translate}} {{'labels.commons.is' | translate}} <strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<mat-form-field> <mat-form-field>
<mat-label>Percentage</mat-label> <mat-label>{{'labels.inputs.Percentage' | translate}}</mat-label>
<input matInput required formControlName="percentage"> <input matInput required formControlName="percentage">
<mat-error *ngIf="taxComponentForm.controls.name.hasError('required')"> <mat-error *ngIf="taxComponentForm.controls.name.hasError('required')">
Percentage is <strong>required</strong> {{'labels.inputs.Percentage' | translate}} {{'labels.commons.is' | translate}} <strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<mat-form-field *ngIf="taxComponentData.creditAccountType.value"> <mat-form-field *ngIf="taxComponentData.creditAccountType.value">
<mat-label>Credit Account Type</mat-label> <mat-label>{{'labels.inputs.Credit Account Type' | translate}}</mat-label>
<input matInput formControlName="creditAccountType"> <input matInput formControlName="creditAccountType">
</mat-form-field> </mat-form-field>
<mat-form-field *ngIf="taxComponentData.creditAccount.name"> <mat-form-field *ngIf="taxComponentData.creditAccount.name">
<mat-label>Credit Account</mat-label> <mat-label>{{'labels.inputs.Credit Account' | translate}}</mat-label>
<input matInput formControlName="creditAccount"> <input matInput formControlName="creditAccount">
</mat-form-field> </mat-form-field>
<mat-form-field (click)="startDatePicker.open()"> <mat-form-field (click)="startDatePicker.open()">
<mat-label>Start Date</mat-label> <mat-label>{{'labels.inputs.Start Date' | translate}}</mat-label>
<input matInput [min]="minDate" [max]="maxDate" [matDatepicker]="startDatePicker" required formControlName="startDate"> <input matInput [min]="minDate" [max]="maxDate" [matDatepicker]="startDatePicker" required formControlName="startDate">
<mat-datepicker-toggle matSuffix [for]="startDatePicker"></mat-datepicker-toggle> <mat-datepicker-toggle matSuffix [for]="startDatePicker"></mat-datepicker-toggle>
<mat-datepicker #startDatePicker></mat-datepicker> <mat-datepicker #startDatePicker></mat-datepicker>
<mat-error *ngIf="taxComponentForm.controls.startDate.hasError('required')"> <mat-error *ngIf="taxComponentForm.controls.startDate.hasError('required')">
Start Date is <strong>required</strong> {{'labels.inputs.Start Date' | translate}} {{'labels.commons.is' | translate}} <strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
@@ -49,8 +49,8 @@
</mat-card-content> </mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px"> <mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<button type="button" mat-raised-button [routerLink]="['../']">Cancel</button> <button type="button" mat-raised-button [routerLink]="['../']">{{'labels.buttons.Cancel' | translate}}</button>
<button mat-raised-button color="primary" [disabled]="!taxComponentForm.valid" *mifosxHasPermission="'UPDATE_TAXCOMPONENT'">Submit</button> <button mat-raised-button color="primary" [disabled]="!taxComponentForm.valid" *mifosxHasPermission="'UPDATE_TAXCOMPONENT'">{{'labels.buttons.Submit' | translate}}</button>
</mat-card-actions> </mat-card-actions>
</form> </form>
@@ -7,6 +7,7 @@ import { Router, ActivatedRoute } from '@angular/router';
import { ProductsService } from '../../products.service'; import { ProductsService } from '../../products.service';
import { SettingsService } from 'app/settings/settings.service'; import { SettingsService } from 'app/settings/settings.service';
import { Dates } from 'app/core/utils/dates'; import { Dates } from 'app/core/utils/dates';
import { TranslateService } from '@ngx-translate/core';
/** /**
* Edit tax component. * Edit tax component.
@@ -41,7 +42,8 @@ export class EditTaxComponentComponent implements OnInit {
private route: ActivatedRoute, private route: ActivatedRoute,
private router: Router, private router: Router,
private dateUtils: Dates, private dateUtils: Dates,
private settingsService: SettingsService) { private settingsService: SettingsService,
private translateService: TranslateService) {
this.route.data.subscribe((data: { taxComponent: any }) => { this.route.data.subscribe((data: { taxComponent: any }) => {
this.taxComponentData = data.taxComponent; this.taxComponentData = data.taxComponent;
}); });
@@ -64,7 +66,7 @@ export class EditTaxComponentComponent implements OnInit {
'name': [this.taxComponentData.name, [Validators.required]], 'name': [this.taxComponentData.name, [Validators.required]],
'percentage': [this.taxComponentData.percentage, [Validators.required, Validators.pattern('^(0*[1-9][0-9]*(\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*)$'), Validators.max(100)]], 'percentage': [this.taxComponentData.percentage, [Validators.required, Validators.pattern('^(0*[1-9][0-9]*(\\.[0-9]+)?|0+\\.[0-9]*[1-9][0-9]*)$'), Validators.max(100)]],
'startDate': [this.taxComponentData.startDate && new Date(this.taxComponentData.startDate)], 'startDate': [this.taxComponentData.startDate && new Date(this.taxComponentData.startDate)],
'creditAccountType': [{ value: this.taxComponentData.creditAccountType.value, disabled: true }], 'creditAccountType': [{ value: this.translateService.instant('labels.inputs.accounting.' + this.taxComponentData.creditAccountType.value), disabled: true }],
'creditAccount': [{ value: this.taxComponentData.creditAccount.name, disabled: true }] 'creditAccount': [{ value: this.taxComponentData.creditAccount.name, disabled: true }]
}); });
} }
@@ -1,7 +1,7 @@
<div class="container m-b-20" fxLayout="row" fxLayoutAlign="end" fxLayoutGap="20px"> <div class="container m-b-20" fxLayout="row" fxLayoutAlign="end" fxLayoutGap="20px">
<button mat-raised-button color="primary" [routerLink]="['create']" *mifosxHasPermission="'CREATE_TAXCOMPONENT'"> <button mat-raised-button color="primary" [routerLink]="['create']" *mifosxHasPermission="'CREATE_TAXCOMPONENT'">
<fa-icon icon="plus" class="m-r-10"></fa-icon> <fa-icon icon="plus" class="m-r-10"></fa-icon>
Create Tax Component {{'labels.buttons.Create Tax Component' | translate}}
</button> </button>
</div> </div>
@@ -19,13 +19,23 @@
<table mat-table [dataSource]="dataSource" matSort> <table mat-table [dataSource]="dataSource" matSort>
<ng-container matColumnDef="name"> <ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Name </th> <th mat-header-cell *matHeaderCellDef mat-sort-header> {{'labels.inputs.Name' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.name }} </td> <td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.name }} </td>
</ng-container> </ng-container>
<ng-container matColumnDef="percentage"> <ng-container matColumnDef="percentage">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Percentage </th> <th mat-header-cell *matHeaderCellDef mat-sort-header> {{'labels.inputs.Percentage' | translate}} %</th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.percentage }} </td> <td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.percentage | formatNumber }} </td>
</ng-container>
<ng-container matColumnDef="startDate">
<th mat-header-cell *matHeaderCellDef mat-sort-header> {{'labels.inputs.Start Date' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.startDate | dateFormat }} </td>
</ng-container>
<ng-container matColumnDef="glAccount">
<th mat-header-cell *matHeaderCellDef mat-sort-header> {{'labels.inputs.Account' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> ({{ taxComponent.creditAccount.glCode }}) {{ taxComponent.creditAccount.name }} </td>
</ng-container> </ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
@@ -21,7 +21,7 @@ export class ManageTaxComponentsComponent implements OnInit {
/** Tax Components data. */ /** Tax Components data. */
taxComponentData: any; taxComponentData: any;
/** Columns to be displayed in tax component table. */ /** Columns to be displayed in tax component table. */
displayedColumns: string[] = ['name', 'percentage']; displayedColumns: string[] = ['name', 'percentage', 'startDate', 'glAccount'];
/** Data source for tax component table. */ /** Data source for tax component table. */
dataSource: MatTableDataSource<any>; dataSource: MatTableDataSource<any>;
@@ -1,7 +1,7 @@
<div class="container m-b-20" fxLayout="row" fxLayout.lt-md="column" fxLayoutAlign="end" fxLayoutGap="2%"> <div class="container m-b-20" fxLayout="row" fxLayout.lt-md="column" fxLayoutAlign="end" fxLayoutGap="2%">
<button mat-raised-button color="primary" [routerLink]="['edit']" *mifosxHasPermission="'UPDATE_TAXCOMPONENT'"> <button mat-raised-button color="primary" [routerLink]="['edit']" *mifosxHasPermission="'UPDATE_TAXCOMPONENT'">
<fa-icon icon="edit" class="m-r-10"></fa-icon> <fa-icon icon="edit" class="m-r-10"></fa-icon>
Edit {{'labels.buttons.Edit' | translate}}
</button> </button>
</div> </div>
@@ -14,7 +14,7 @@
<div fxLayout="row wrap" class="content"> <div fxLayout="row wrap" class="content">
<div fxFlex="50%" class="mat-body-strong"> <div fxFlex="50%" class="mat-body-strong">
Name {{ 'labels.inputs.Name' | translate}}
</div> </div>
<div fxFlex="50%"> <div fxFlex="50%">
@@ -22,7 +22,7 @@
</div> </div>
<div fxFlex="50%" class="mat-body-strong"> <div fxFlex="50%" class="mat-body-strong">
Percentage {{ 'labels.inputs.Percentage' | translate}}
</div> </div>
<div fxFlex="50%"> <div fxFlex="50%">
@@ -30,7 +30,7 @@
</div> </div>
<div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.debitAccountType"> <div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.debitAccountType">
Debit Account Type {{'labels.inputs.Debit Account Type' | translate }}
</div> </div>
<div fxFlex="50%" *ngIf="taxComponentData.debitAccountType"> <div fxFlex="50%" *ngIf="taxComponentData.debitAccountType">
@@ -38,31 +38,31 @@
</div> </div>
<div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.debitAccount"> <div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.debitAccount">
Debit Account {{ 'labels.inputs.Debit Account' | translate }}
</div> </div>
<div fxFlex="50%" *ngIf="taxComponentData.debitAccount"> <div fxFlex="50%" *ngIf="taxComponentData.debitAccount">
{{ taxComponentData.debitAccount.name}} ({{ 'labels.inputs.accounting.' + taxComponentData.debitAccount.glCode }}) {{ taxComponentData.debitAccount.name | translate }}
</div> </div>
<div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.creditAccountType"> <div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.creditAccountType">
Credit Account Type {{ 'labels.inputs.Credit Account Type' | translate }}
</div> </div>
<div fxFlex="50%" *ngIf="taxComponentData.creditAccountType"> <div fxFlex="50%" *ngIf="taxComponentData.creditAccountType">
{{ taxComponentData.creditAccountType.value }} {{ 'labels.inputs.accounting.' + taxComponentData.creditAccountType.value | translate }}
</div> </div>
<div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.creditAccount"> <div fxFlex="50%" class="mat-body-strong" *ngIf="taxComponentData.creditAccount">
Credit Account {{ 'labels.inputs.Credit Account' | translate }}
</div> </div>
<div fxFlex="50%" *ngIf="taxComponentData.creditAccount"> <div fxFlex="50%" *ngIf="taxComponentData.creditAccount">
{{ taxComponentData.creditAccount.name }} ({{ taxComponentData.creditAccount.glCode }}) {{ taxComponentData.creditAccount.name }}
</div> </div>
<div fxFlex="50%" class="mat-body-strong"> <div fxFlex="50%" class="mat-body-strong">
Start date {{ 'labels.inputs.Start Date' | translate }}
</div> </div>
<div fxFlex="50%"> <div fxFlex="50%">
@@ -74,7 +74,7 @@
</mat-card-content> </mat-card-content>
<div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="2%" fxLayout.lt-md="column"> <div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="2%" fxLayout.lt-md="column">
<button type="button" color="primary" mat-raised-button [routerLink]="['../']">Back</button> <button type="button" color="primary" mat-raised-button [routerLink]="['../']">{{'labels.buttons.Back' | translate}}</button>
</div> </div>
</mat-card> </mat-card>
@@ -12,8 +12,8 @@
<mat-icon matListIcon> <mat-icon matListIcon>
<fa-icon icon="building" size="sm"></fa-icon> <fa-icon icon="building" size="sm"></fa-icon>
</mat-icon> </mat-icon>
<h4 matLine>Manage Tax Components</h4> <h4 matLine>{{'labels.heading.Manage Tax Components' | translate}}</h4>
<p matLine>Define Tax components</p> <p matLine>{{'labels.heading.Define Tax Components' | translate}}</p>
</mat-list-item> </mat-list-item>
</mat-nav-list> </mat-nav-list>
@@ -28,8 +28,8 @@
<mat-icon matListIcon> <mat-icon matListIcon>
<fa-icon icon="building" size="sm"></fa-icon> <fa-icon icon="building" size="sm"></fa-icon>
</mat-icon> </mat-icon>
<h4 matLine>Manage Tax Groups</h4> <h4 matLine>{{'labels.heading.Manage Tax Groups' | translate}}</h4>
<p matLine>Define Tax Groups</p> <p matLine>{{'labels.heading.Define Tax Groups' | translate}}</p>
</mat-list-item> </mat-list-item>
</mat-nav-list> </mat-nav-list>
@@ -9,46 +9,43 @@
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column"> <div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="100%"> <mat-form-field fxFlex="100%">
<mat-label>Name</mat-label> <mat-label>{{'labels.inputs.Name' | translate}}</mat-label>
<input matInput required formControlName="name"> <input matInput required formControlName="name">
<mat-error *ngIf="taxGroupForm.controls.name.hasError('required')"> <mat-error *ngIf="taxGroupForm.controls.name.hasError('required')">
Name is <strong>required</strong> {{'labels.inputs.Name' | translate}} {{'labels.commons.is' | translate}} <strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<h3 fxFlex="40%" class="mat-h3">Tax Components</h3> <h3 fxFlex="40%" class="mat-h3">{{'labels.inputs.Tax Components' | translate}}</h3>
<div fxFlex="40%" fxLayout="row" fxLayoutAlign="start center"> <div fxFlex="40%" fxLayout="row" fxLayoutAlign="start center">
<button type="button" mat-raised-button color="primary" (click)="addTaxGroup()"> <button type="button" mat-raised-button color="primary" (click)="addTaxGroup()">
<fa-icon icon="plus" class="m-r-10"></fa-icon> <fa-icon icon="plus" class="m-r-10"></fa-icon>
Add {{'labels.buttons.Add' | translate}}
</button> </button>
</div> </div>
<table mat-table [dataSource]="taxComponentsDataSource" [hidden]="taxComponentsDataSource.length === 0"> <table mat-table [dataSource]="taxComponentsDataSource" [hidden]="taxComponentsDataSource.length === 0">
<ng-container matColumnDef="name"> <ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef> Name </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Name' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> <td mat-cell *matCellDef="let taxComponent">
{{ taxComponent.taxComponentId | find: taxComponentOptions:'id':'name'}} </td> {{ taxComponent.taxComponentId | find: taxComponentOptions:'id':'name'}} </td>
</ng-container> </ng-container>
<ng-container matColumnDef="startDate"> <ng-container matColumnDef="startDate">
<th mat-header-cell *matHeaderCellDef> Start Date </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Start Date' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.startDate | dateFormat }} <td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.startDate | dateFormat }}
</td> </td>
</ng-container> </ng-container>
<ng-container matColumnDef="actions"> <ng-container matColumnDef="actions">
<th mat-header-cell *matHeaderCellDef> Actions </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Actions' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent; let taxComponentIndex = index"> <td mat-cell *matCellDef="let taxComponent; let taxComponentIndex = index">
<button type="button" mat-icon-button color="primary" (click)="editTaxGroup(taxComponent, taxComponentIndex)" <button type="button" mat-icon-button color="primary" (click)="editTaxGroup(taxComponent, taxComponentIndex)">
matTooltip="Edit" matTooltipPosition="left">
<fa-icon icon="edit"></fa-icon> <fa-icon icon="edit"></fa-icon>
</button> </button>
<button type="button" mat-icon-button color="warn" <button type="button" mat-icon-button color="warn" (click)="delete(taxComponentIndex)" matTooltipPosition="left">
(click)="delete(taxComponentIndex)" matTooltip="Delete"
matTooltipPosition="left">
<fa-icon icon="trash"></fa-icon> <fa-icon icon="trash"></fa-icon>
</button> </button>
</td> </td>
@@ -64,8 +61,8 @@
</mat-card-content> </mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px"> <mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<button type="button" mat-raised-button [routerLink]="['../']">Cancel</button> <button type="button" mat-raised-button [routerLink]="['../']">{{'labels.buttons.Cancel' | translate}}</button>
<button mat-raised-button color="primary" [disabled]="!taxGroupForm.valid" *mifosxHasPermission="'CREATE_TAXGROUP'">Submit</button> <button mat-raised-button color="primary" [disabled]="!taxGroupForm.valid" *mifosxHasPermission="'CREATE_TAXGROUP'">{{'labels.buttons.Submit' | translate}}</button>
</mat-card-actions> </mat-card-actions>
</form> </form>
@@ -15,6 +15,7 @@ import { DatepickerBase } from 'app/shared/form-dialog/formfield/model/datepicke
import { FormDialogComponent } from 'app/shared/form-dialog/form-dialog.component'; import { FormDialogComponent } from 'app/shared/form-dialog/form-dialog.component';
import { DeleteDialogComponent } from 'app/shared/delete-dialog/delete-dialog.component'; import { DeleteDialogComponent } from 'app/shared/delete-dialog/delete-dialog.component';
import { Dates } from 'app/core/utils/dates'; import { Dates } from 'app/core/utils/dates';
import { TranslateService } from '@ngx-translate/core';
/** /**
* Create Tax Group component. * Create Tax Group component.
@@ -57,8 +58,9 @@ export class CreateTaxGroupComponent implements OnInit {
private route: ActivatedRoute, private route: ActivatedRoute,
private router: Router, private router: Router,
private dateUtils: Dates, private dateUtils: Dates,
public dialog: MatDialog, private dialog: MatDialog,
private settingsService: SettingsService) { private settingsService: SettingsService,
private translateService: TranslateService) {
this.route.data.subscribe((data: { taxGroupTemplate: any }) => { this.route.data.subscribe((data: { taxGroupTemplate: any }) => {
this.taxGroupTemplateData = data.taxGroupTemplate; this.taxGroupTemplateData = data.taxGroupTemplate;
this.taxComponentOptions = this.taxGroupTemplateData.taxComponents; this.taxComponentOptions = this.taxGroupTemplateData.taxComponents;
@@ -86,20 +88,20 @@ export class CreateTaxGroupComponent implements OnInit {
const formfields: FormfieldBase[] = [ const formfields: FormfieldBase[] = [
new SelectBase({ new SelectBase({
controlName: 'taxComponentId', controlName: 'taxComponentId',
label: 'Tax Component', label: this.translateService.instant('labels.inputs.Tax Component'),
options: { label: 'name', value: 'id', data: this.taxComponentOptions }, options: { label: 'name', value: 'id', data: this.taxComponentOptions },
order: 1 order: 1
}), }),
new DatepickerBase({ new DatepickerBase({
controlName: 'startDate', controlName: 'startDate',
label: 'Start Date', label: this.translateService.instant('labels.inputs.Start Date'),
minDate: this.minDate, minDate: this.minDate,
maxDate: this.maxDate, maxDate: this.maxDate,
order: 2 order: 2
}) })
]; ];
const data = { const data = {
title: 'Add Tax Component', title: this.translateService.instant('labels.buttons.Add') + ' ' + this.translateService.instant('labels.inputs.Tax Component'),
layout: { addButtonText: 'Add' }, layout: { addButtonText: 'Add' },
formfields: formfields formfields: formfields
}; };
@@ -9,47 +9,46 @@
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column"> <div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="100%"> <mat-form-field fxFlex="100%">
<mat-label>Name</mat-label> <mat-label>{{'labels.inputs.Name' | translate}}</mat-label>
<input matInput required formControlName="name"> <input matInput required formControlName="name">
<mat-error *ngIf="taxGroupForm.controls.name.hasError('required')"> <mat-error *ngIf="taxGroupForm.controls.name.hasError('required')">
Name is <strong>required</strong> {{'labels.inputs.Name' | translate}} {{'labels.commons.is' | translate}} <strong>{{'labels.commons.required' | translate}}</strong>
</mat-error> </mat-error>
</mat-form-field> </mat-form-field>
<h3 fxFlex="40%" class="mat-h3">Tax Components</h3> <h3 fxFlex="40%" class="mat-h3">{{'labels.inputs.Tax Components' | translate}}</h3>
<div fxFlex="40%" fxLayout="row" fxLayoutAlign="start center"> <div fxFlex="40%" fxLayout="row" fxLayoutAlign="start center">
<button type="button" mat-raised-button color="primary" (click)="addTaxGroup()"> <button type="button" mat-raised-button color="primary" (click)="addTaxGroup()">
<fa-icon icon="plus" class="m-r-10"></fa-icon> <fa-icon icon="plus" class="m-r-10"></fa-icon>
Add {{'labels.buttons.Add' | translate}}
</button> </button>
</div> </div>
<table mat-table [dataSource]="taxComponentsDataSource" [hidden]="taxComponentsDataSource.length === 0"> <table mat-table [dataSource]="taxComponentsDataSource" [hidden]="taxComponentsDataSource.length === 0">
<ng-container matColumnDef="name"> <ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef> Name </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Name' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> <td mat-cell *matCellDef="let taxComponent">
{{ taxComponent.taxComponentId | find: taxComponentOptions:'id':'name'}} </td> {{ taxComponent.taxComponentId | find: taxComponentOptions:'id':'name'}} </td>
</ng-container> </ng-container>
<ng-container matColumnDef="startDate"> <ng-container matColumnDef="startDate">
<th mat-header-cell *matHeaderCellDef> Start Date </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Start Date' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.startDate | dateFormat }} <td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.startDate | dateFormat }}
</td> </td>
</ng-container> </ng-container>
<ng-container matColumnDef="endDate"> <ng-container matColumnDef="endDate">
<th mat-header-cell *matHeaderCellDef> End Date </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.End Date' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.endDate ? (taxComponent.endDate | dateFormat) : '' }} <td mat-cell *matCellDef="let taxComponent"> {{ taxComponent.endDate ? (taxComponent.endDate | dateFormat) : '' }}
</td> </td>
</ng-container> </ng-container>
<ng-container matColumnDef="actions"> <ng-container matColumnDef="actions">
<th mat-header-cell *matHeaderCellDef> Actions </th> <th mat-header-cell *matHeaderCellDef> {{'labels.inputs.Actions' | translate}} </th>
<td mat-cell *matCellDef="let taxComponent; let taxComponentIndex = index"> <td mat-cell *matCellDef="let taxComponent; let taxComponentIndex = index">
<button type="button" mat-icon-button color="primary" (click)="editTaxGroup(taxComponent, taxComponentIndex)" <button type="button" mat-icon-button color="primary" (click)="editTaxGroup(taxComponent, taxComponentIndex)">
matTooltip="Edit" matTooltipPosition="left">
<fa-icon icon="edit"></fa-icon> <fa-icon icon="edit"></fa-icon>
</button> </button>
<button type="button" mat-icon-button color="warn" *ngIf="taxComponent.isNew" <button type="button" mat-icon-button color="warn" *ngIf="taxComponent.isNew"
@@ -70,8 +69,8 @@
</mat-card-content> </mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px"> <mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<button type="button" mat-raised-button [routerLink]="['../']">Cancel</button> <button type="button" mat-raised-button [routerLink]="['../']">{{'labels.buttons.Cancel' | translate}}</button>
<button mat-raised-button color="primary" [disabled]="!taxGroupForm.valid" *mifosxHasPermission="'UPDATE_TAXGROUP'">Submit</button> <button mat-raised-button color="primary" [disabled]="!taxGroupForm.valid" *mifosxHasPermission="'UPDATE_TAXGROUP'">{{'labels.buttons.Submit' | translate}}</button>
</mat-card-actions> </mat-card-actions>
</form> </form>
@@ -1,7 +1,7 @@
<div class="container m-b-20" fxLayout="row" fxLayoutAlign="end" fxLayoutGap="20px"> <div class="container m-b-20" fxLayout="row" fxLayoutAlign="end" fxLayoutGap="20px">
<button mat-raised-button color="primary" [routerLink]="['create']" *mifosxHasPermission="'CREATE_TAXGROUP'"> <button mat-raised-button color="primary" [routerLink]="['create']" *mifosxHasPermission="'CREATE_TAXGROUP'">
<fa-icon icon="plus" class="m-r-10"></fa-icon> <fa-icon icon="plus" class="m-r-10"></fa-icon>
Create Tax Groups {{'labels.buttons.Create Tax Groups' | translate }}
</button> </button>
</div> </div>
@@ -19,7 +19,7 @@
<table mat-table [dataSource]="dataSource" matSort> <table mat-table [dataSource]="dataSource" matSort>
<ng-container matColumnDef="name"> <ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Name </th> <th mat-header-cell *matHeaderCellDef mat-sort-header> {{'labels.inputs.Name' | translate }} </th>
<td mat-cell *matCellDef="let taxGroups"> {{ taxGroups.name }} </td> <td mat-cell *matCellDef="let taxGroups"> {{ taxGroups.name }} </td>
</ng-container> </ng-container>
@@ -1,7 +1,7 @@
<div class="container m-b-20" fxLayout="row" fxLayout.lt-md="column" fxLayoutAlign="end" fxLayoutGap="2%"> <div class="container m-b-20" fxLayout="row" fxLayout.lt-md="column" fxLayoutAlign="end" fxLayoutGap="2%">
<button mat-raised-button color="primary" [routerLink]="['edit']" *mifosxHasPermission="'UPDATE_TAXGROUP'"> <button mat-raised-button color="primary" [routerLink]="['edit']" *mifosxHasPermission="'UPDATE_TAXGROUP'">
<fa-icon icon="edit" class="m-r-10"></fa-icon> <fa-icon icon="edit" class="m-r-10"></fa-icon>
Edit {{ 'labels.buttons.Edit' | translate}}
</button> </button>
</div> </div>
@@ -14,7 +14,7 @@
<div fxLayout="row wrap" class="content"> <div fxLayout="row wrap" class="content">
<div fxFlex="33%" class="mat-body-strong"> <div fxFlex="33%" class="mat-body-strong">
Name {{'labels.inputs.Name' | translate}}
</div> </div>
<div fxFlex="67%"> <div fxFlex="67%">
@@ -22,15 +22,15 @@
</div> </div>
<div fxFlex="34%" class="mat-body-strong"> <div fxFlex="34%" class="mat-body-strong">
Tax-Component Name {{'labels.inputs.Tax Component' | translate}}
</div> </div>
<div fxFlex="33%" class="mat-body-strong"> <div fxFlex="33%" class="mat-body-strong">
Start Date {{'labels.inputs.Start Date' | translate}}
</div> </div>
<div fxFlex="33%" class="mat-body-strong"> <div fxFlex="33%" class="mat-body-strong">
End Date {{'labels.inputs.End Date' | translate}}
</div> </div>
</div> </div>
+12
View File
@@ -637,6 +637,8 @@
"Dashboard": "Přístrojová deska", "Dashboard": "Přístrojová deska",
"Default Shares per Client": "Výchozí podíly na klienta", "Default Shares per Client": "Výchozí podíly na klienta",
"Define New Mapping": "Definujte nové mapování", "Define New Mapping": "Definujte nové mapování",
"Define Tax Components": "Definujte daňové složky",
"Define Tax Groups": "Definujte daňové skupiny",
"Delete": "Vymazat", "Delete": "Vymazat",
"Delete Client Signature": "Smazat podpis klienta", "Delete Client Signature": "Smazat podpis klienta",
"Delete Checker": "Odstranit kontrolu", "Delete Checker": "Odstranit kontrolu",
@@ -891,6 +893,13 @@
"successfully select option": "úspěšně. Chcete-li pokračovat dále, vyberte si z níže uvedených možností." "successfully select option": "úspěšně. Chcete-li pokračovat dále, vyberte si z níže uvedených možností."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "AKTIVUM",
"LIABILITY": "ODPOVĚDNOST",
"EQUITY": "SPRAVEDLNOST",
"INCOME": "PŘÍJEM",
"EXPENSE": "NÁKLADY"
},
"ACCOUNTING": "ÚČETNICTVÍ", "ACCOUNTING": "ÚČETNICTVÍ",
"ADDRESS": "ADRESA", "ADDRESS": "ADRESA",
"Above Changes are Effective from": "Výše uvedené změny jsou účinné od", "Above Changes are Effective from": "Výše uvedené změny jsou účinné od",
@@ -1190,6 +1199,7 @@
"Debit": "Debetní", "Debit": "Debetní",
"Debit Account": "Debetní účet", "Debit Account": "Debetní účet",
"Debit Account Name": "Název debetního účtu", "Debit Account Name": "Název debetního účtu",
"Debit Account Type": "Typ debetního účtu",
"Debit Amount": "Debetní částka", "Debit Amount": "Debetní částka",
"Debit Tags": "Debetní štítky", "Debit Tags": "Debetní štítky",
"Decimal Places": "Desetinná místa", "Decimal Places": "Desetinná místa",
@@ -1973,6 +1983,8 @@
"Table Fields": "Pole tabulky", "Table Fields": "Pole tabulky",
"Tag": "Štítek", "Tag": "Štítek",
"Tax Group": "Daňová skupina", "Tax Group": "Daňová skupina",
"Tax Component": "Daňová složka",
"Tax Components": "Složky daně",
"Tax-Component Name": "Název daňové složky", "Tax-Component Name": "Název daňové složky",
"Teller": "Pokladník", "Teller": "Pokladník",
"Teller Name": "Jméno Teller", "Teller Name": "Jméno Teller",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Armaturenbrett", "Dashboard": "Armaturenbrett",
"Default Shares per Client": "Standardanteile pro Kunde", "Default Shares per Client": "Standardanteile pro Kunde",
"Define New Mapping": "Definieren Sie eine neue Zuordnung", "Define New Mapping": "Definieren Sie eine neue Zuordnung",
"Define Tax Components": "Steuerkomponenten definieren",
"Define Tax Groups": "Steuergruppen definieren",
"Delete": "Löschen", "Delete": "Löschen",
"Delete Client Signature": "Client-Signatur löschen", "Delete Client Signature": "Client-Signatur löschen",
"Delete Checker": "Überprüfung löschen", "Delete Checker": "Überprüfung löschen",
@@ -892,6 +894,13 @@
"successfully select option": "erfolgreich. Bitte wählen Sie eine der folgenden Optionen aus, um fortzufahren." "successfully select option": "erfolgreich. Bitte wählen Sie eine der folgenden Optionen aus, um fortzufahren."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "VERMÖGENSWERT",
"LIABILITY": "HAFTUNG",
"EQUITY": "EIGENKAPITAL",
"INCOME": "EINKOMMEN",
"EXPENSE": "KOSTEN"
},
"ACCOUNTING": "BUCHHALTUNG", "ACCOUNTING": "BUCHHALTUNG",
"ADDRESS": "ADRESSE", "ADDRESS": "ADRESSE",
"Above Changes are Effective from": "Die oben genannten Änderungen gelten ab", "Above Changes are Effective from": "Die oben genannten Änderungen gelten ab",
@@ -1190,6 +1199,7 @@
"Debit": "Lastschrift", "Debit": "Lastschrift",
"Debit Account": "Sollkonto", "Debit Account": "Sollkonto",
"Debit Account Name": "Name des Lastschriftkontos", "Debit Account Name": "Name des Lastschriftkontos",
"Debit Account Type": "Typ debetního účtu",
"Debit Amount": "Sollbetrag", "Debit Amount": "Sollbetrag",
"Debit Tags": "Debit-Tags", "Debit Tags": "Debit-Tags",
"Decimal Places": "Nachkommastellen", "Decimal Places": "Nachkommastellen",
@@ -1973,6 +1983,8 @@
"Table Fields": "Tabellenfelder", "Table Fields": "Tabellenfelder",
"Tag": "Etikett", "Tag": "Etikett",
"Tax Group": "Steuergruppe", "Tax Group": "Steuergruppe",
"Tax Component": "Steuerkomponente",
"Tax Components": "Steuerkomponenten",
"Tax-Component Name": "Name der Steuerkomponente", "Tax-Component Name": "Name der Steuerkomponente",
"Teller": "Erzähler", "Teller": "Erzähler",
"Teller Name": "Name des Kassierers", "Teller Name": "Name des Kassierers",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Dashboard", "Dashboard": "Dashboard",
"Default Shares per Client": "Default Shares per Client", "Default Shares per Client": "Default Shares per Client",
"Define New Mapping": "Define New Mapping", "Define New Mapping": "Define New Mapping",
"Define Tax Components": "Define Tax Components",
"Define Tax Groups": "Define Tax Groups",
"Delete": "Delete", "Delete": "Delete",
"Delete Client Signature": "Delete Client Signature", "Delete Client Signature": "Delete Client Signature",
"Delete Checker": "Delete Checker", "Delete Checker": "Delete Checker",
@@ -891,6 +893,13 @@
"successfully select option": "successfully. Please select from the options below to proceed furthur." "successfully select option": "successfully. Please select from the options below to proceed furthur."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "ASSET",
"LIABILITY": "LIABILITY",
"EQUITY": "EQUITY",
"INCOME": "INCOME",
"EXPENSE": "EXPENSE"
},
"ACCOUNTING": "ACCOUNTING", "ACCOUNTING": "ACCOUNTING",
"ADDRESS": "ADDRESS", "ADDRESS": "ADDRESS",
"Above Changes are Effective from": "Above Changes are Effective from", "Above Changes are Effective from": "Above Changes are Effective from",
@@ -1189,6 +1198,7 @@
"Debit": "Debit", "Debit": "Debit",
"Debit Account": "Debit Account", "Debit Account": "Debit Account",
"Debit Account Name": "Debit Account Name", "Debit Account Name": "Debit Account Name",
"Debit Account Type": "Debit Account Type",
"Debit Amount": "Debit Amount", "Debit Amount": "Debit Amount",
"Debit Tags": "Debit Tags", "Debit Tags": "Debit Tags",
"Decimal Places": "Decimal Places", "Decimal Places": "Decimal Places",
@@ -1972,6 +1982,8 @@
"Table Fields": "Table Fields", "Table Fields": "Table Fields",
"Tag": "Tag", "Tag": "Tag",
"Tax Group": "Tax Group", "Tax Group": "Tax Group",
"Tax Component": "Tax Component",
"Tax Components": "Tax Components",
"Tax-Component Name": "Tax-Component Name", "Tax-Component Name": "Tax-Component Name",
"Teller": "Teller", "Teller": "Teller",
"Teller Name": "Teller Name", "Teller Name": "Teller Name",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Tableros", "Dashboard": "Tableros",
"Default Shares per Client": "Acciones predeterminadas por cliente", "Default Shares per Client": "Acciones predeterminadas por cliente",
"Define New Mapping": "Definir nueva asignación", "Define New Mapping": "Definir nueva asignación",
"Define Tax Components": "Definir impuestos",
"Define Tax Groups": "Definir grupos de impuestos",
"Delete": "Borrar", "Delete": "Borrar",
"Delete Client Signature": "Eliminar firma del cliente", "Delete Client Signature": "Eliminar firma del cliente",
"Delete Checker": "Boldeador de eliminación", "Delete Checker": "Boldeador de eliminación",
@@ -892,6 +894,13 @@
"successfully select option": "exitosamente. Seleccione una de las opciones siguientes para continuar." "successfully select option": "exitosamente. Seleccione una de las opciones siguientes para continuar."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "ACTIVO",
"LIABILITY": "PASIVO",
"EQUITY": "CAPITAL",
"INCOME": "INGRESO",
"EXPENSE": "EGRESO"
},
"ACCOUNTING": "CONTABILIDAD", "ACCOUNTING": "CONTABILIDAD",
"ADDRESS": "DOMICILIO", "ADDRESS": "DOMICILIO",
"Above Changes are Effective from": "Los cambios anteriores son efectivos desde", "Above Changes are Effective from": "Los cambios anteriores son efectivos desde",
@@ -1190,6 +1199,7 @@
"Debit": "Débito", "Debit": "Débito",
"Debit Account": "Cuenta de debito", "Debit Account": "Cuenta de debito",
"Debit Account Name": "Nombre de la cuenta de débito", "Debit Account Name": "Nombre de la cuenta de débito",
"Debit Account Type": "Tipo de cuenta de débito",
"Debit Amount": "Monto del Débito", "Debit Amount": "Monto del Débito",
"Debit Tags": "Etiquetas de débito", "Debit Tags": "Etiquetas de débito",
"Decimal Places": "Lugares decimales", "Decimal Places": "Lugares decimales",
@@ -1973,6 +1983,8 @@
"Table Fields": "Campos de tabla", "Table Fields": "Campos de tabla",
"Tag": "Etiqueta", "Tag": "Etiqueta",
"Tax Group": "Grupo de Impuesto", "Tax Group": "Grupo de Impuesto",
"Tax Component": "Componente Impuesto",
"Tax Components": "Componentes Impuestos",
"Tax-Component Name": "Nombre del componente de impuesto", "Tax-Component Name": "Nombre del componente de impuesto",
"Teller": "Ventanilla", "Teller": "Ventanilla",
"Teller Name": "Nombre del cajero", "Teller Name": "Nombre del cajero",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Tableau de bord", "Dashboard": "Tableau de bord",
"Default Shares per Client": "Actions par défaut par client", "Default Shares per Client": "Actions par défaut par client",
"Define New Mapping": "Définir un nouveau mappage", "Define New Mapping": "Définir un nouveau mappage",
"Define Tax Components": "Définir les composants fiscaux",
"Define Tax Groups": "Définir des groupes de taxes",
"Delete": "Supprimer", "Delete": "Supprimer",
"Delete Client Signature": "Supprimer la signature du client", "Delete Client Signature": "Supprimer la signature du client",
"Delete Checker": "Supprimer un vérificateur", "Delete Checker": "Supprimer un vérificateur",
@@ -892,6 +894,13 @@
"successfully select option": "avec succès. Veuillez sélectionner parmi les options ci-dessous pour continuer." "successfully select option": "avec succès. Veuillez sélectionner parmi les options ci-dessous pour continuer."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "ACTIF",
"LIABILITY": "RESPONSABILITÉ",
"EQUITY": "ÉQUITÉ",
"INCOME": "REVENU",
"EXPENSE": "FRAIS"
},
"ACCOUNTING": "COMPTABILITÉ", "ACCOUNTING": "COMPTABILITÉ",
"ADDRESS": "ADRESSE", "ADDRESS": "ADRESSE",
"Above Changes are Effective from": "Les modifications ci-dessus entrent en vigueur à partir de", "Above Changes are Effective from": "Les modifications ci-dessus entrent en vigueur à partir de",
@@ -1190,6 +1199,7 @@
"Debit": "Débit", "Debit": "Débit",
"Debit Account": "Compte de débit", "Debit Account": "Compte de débit",
"Debit Account Name": "Nom du compte de débit", "Debit Account Name": "Nom du compte de débit",
"Debit Account Type": "Type de compte de débit",
"Debit Amount": "Montant du débit", "Debit Amount": "Montant du débit",
"Debit Tags": "Étiquettes de débit", "Debit Tags": "Étiquettes de débit",
"Decimal Places": "Décimales", "Decimal Places": "Décimales",
@@ -1973,6 +1983,8 @@
"Table Fields": "Champs du tableau", "Table Fields": "Champs du tableau",
"Tag": "Étiqueter", "Tag": "Étiqueter",
"Tax Group": "Groupe fiscal", "Tax Group": "Groupe fiscal",
"Tax Component": "Composante fiscale",
"Tax Components": "Composantes fiscales",
"Tax-Component Name": "Nom du composant fiscal", "Tax-Component Name": "Nom du composant fiscal",
"Teller": "Caissier", "Teller": "Caissier",
"Teller Name": "Nom du caissier", "Teller Name": "Nom du caissier",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Pannello di controllo", "Dashboard": "Pannello di controllo",
"Default Shares per Client": "Condivisioni predefinite per cliente", "Default Shares per Client": "Condivisioni predefinite per cliente",
"Define New Mapping": "Definire nuova mappatura", "Define New Mapping": "Definire nuova mappatura",
"Define Tax Components": "Definire le componenti fiscali",
"Define Tax Groups": "Definire i gruppi fiscali",
"Delete": "Eliminare", "Delete": "Eliminare",
"Delete Client Signature": "Elimina firma cliente", "Delete Client Signature": "Elimina firma cliente",
"Delete Checker": "Elimina Checker", "Delete Checker": "Elimina Checker",
@@ -892,6 +894,13 @@
"successfully select option": "con successo. Seleziona una delle opzioni seguenti per procedere ulteriormente." "successfully select option": "con successo. Seleziona una delle opzioni seguenti per procedere ulteriormente."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "RISORSA",
"LIABILITY": "RESPONSABILITÀ",
"EQUITY": "EQUITÀ",
"INCOME": "REDDITO",
"EXPENSE": "SPESE"
},
"ACCOUNTING": "CONTABILITÀ", "ACCOUNTING": "CONTABILITÀ",
"ADDRESS": "INDIRIZZO", "ADDRESS": "INDIRIZZO",
"Above Changes are Effective from": "Le modifiche di cui sopra entrano in vigore a partire dal", "Above Changes are Effective from": "Le modifiche di cui sopra entrano in vigore a partire dal",
@@ -1190,6 +1199,7 @@
"Debit": "Addebito", "Debit": "Addebito",
"Debit Account": "Conto di debito", "Debit Account": "Conto di debito",
"Debit Account Name": "Nome del conto di addebito", "Debit Account Name": "Nome del conto di addebito",
"Debit Account Type": "Tipo di conto di addebito",
"Debit Amount": "Importo del debito", "Debit Amount": "Importo del debito",
"Debit Tags": "Tag di debito", "Debit Tags": "Tag di debito",
"Decimal Places": "Decimali", "Decimal Places": "Decimali",
@@ -1973,6 +1983,8 @@
"Table Fields": "Campi della tabella", "Table Fields": "Campi della tabella",
"Tag": "Etichetta", "Tag": "Etichetta",
"Tax Group": "Gruppo fiscale", "Tax Group": "Gruppo fiscale",
"Tax Component": "Componente fiscale",
"Tax Components": "Componenti fiscali",
"Tax-Component Name": "Nome della componente fiscale", "Tax-Component Name": "Nome della componente fiscale",
"Teller": "Cassiere", "Teller": "Cassiere",
"Teller Name": "Nome del cassiere", "Teller Name": "Nome del cassiere",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "계기반", "Dashboard": "계기반",
"Default Shares per Client": "클라이언트당 기본 공유", "Default Shares per Client": "클라이언트당 기본 공유",
"Define New Mapping": "새 매핑 정의", "Define New Mapping": "새 매핑 정의",
"Define Tax Components": "세금 요소 정의",
"Define Tax Groups": "세금 그룹 정의",
"Delete": "삭제", "Delete": "삭제",
"Delete Client Signature": "클라이언트 서명 삭제", "Delete Client Signature": "클라이언트 서명 삭제",
"Delete Checker": "체커 삭제", "Delete Checker": "체커 삭제",
@@ -893,6 +895,13 @@
"successfully select option": "성공적으로. 계속 진행하려면 아래 옵션 중에서 선택하세요." "successfully select option": "성공적으로. 계속 진행하려면 아래 옵션 중에서 선택하세요."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "유산",
"LIABILITY": "책임",
"EQUITY": "형평성",
"INCOME": "소득",
"EXPENSE": "비용"
},
"ACCOUNTING": "회계", "ACCOUNTING": "회계",
"ADDRESS": "주소", "ADDRESS": "주소",
"Above Changes are Effective from": "위 변경사항은 다음부터 적용됩니다.", "Above Changes are Effective from": "위 변경사항은 다음부터 적용됩니다.",
@@ -1191,6 +1200,7 @@
"Debit": "직불", "Debit": "직불",
"Debit Account": "직불 계좌", "Debit Account": "직불 계좌",
"Debit Account Name": "직불 계좌 이름", "Debit Account Name": "직불 계좌 이름",
"Debit Account Type": "차변 계좌 유형",
"Debit Amount": "차변 금액", "Debit Amount": "차변 금액",
"Debit Tags": "직불 태그", "Debit Tags": "직불 태그",
"Decimal Places": "소수점 자리", "Decimal Places": "소수점 자리",
@@ -1975,6 +1985,8 @@
"Tag": "꼬리표", "Tag": "꼬리표",
"Tax Group": "세금 그룹", "Tax Group": "세금 그룹",
"Tax-Component Name": "세금 구성요소 이름", "Tax-Component Name": "세금 구성요소 이름",
"Tax Component": "세금 구성요소",
"Tax Components": "세금 구성요소",
"Teller": "말하는 사람", "Teller": "말하는 사람",
"Teller Name": "출납원 이름", "Teller Name": "출납원 이름",
"Template Message": "템플릿 메시지", "Template Message": "템플릿 메시지",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Prietaisų skydelis", "Dashboard": "Prietaisų skydelis",
"Default Shares per Client": "Numatytosios akcijos vienam klientui", "Default Shares per Client": "Numatytosios akcijos vienam klientui",
"Define New Mapping": "Apibrėžkite naują atvaizdavimą", "Define New Mapping": "Apibrėžkite naują atvaizdavimą",
"Define Tax Components": "Apibrėžkite mokesčių komponentus",
"Define Tax Groups": "Apibrėžkite mokesčių grupes",
"Delete": "Ištrinti", "Delete": "Ištrinti",
"Delete Client Signature": "Ištrinkite kliento parašą", "Delete Client Signature": "Ištrinkite kliento parašą",
"Delete Checker": "Ištrinkite tikrintuvą", "Delete Checker": "Ištrinkite tikrintuvą",
@@ -892,6 +894,13 @@
"successfully select option": "sėkmingai. Jei norite tęsti, pasirinkite iš toliau pateiktų parinkčių." "successfully select option": "sėkmingai. Jei norite tęsti, pasirinkite iš toliau pateiktų parinkčių."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "TURTAS",
"LIABILITY": "ATSAKOMYBĖ",
"EQUITY": "NUOSAVYBĖ",
"INCOME": "PAJAMOS",
"EXPENSE": "IŠLAIDOS"
},
"ACCOUNTING": "APSKAITA", "ACCOUNTING": "APSKAITA",
"ADDRESS": "ADRESAS", "ADDRESS": "ADRESAS",
"Above Changes are Effective from": "Aukščiau pateikti pakeitimai galioja nuo", "Above Changes are Effective from": "Aukščiau pateikti pakeitimai galioja nuo",
@@ -1190,6 +1199,7 @@
"Debit": "Debetas", "Debit": "Debetas",
"Debit Account": "Debeto sąskaita", "Debit Account": "Debeto sąskaita",
"Debit Account Name": "Debeto sąskaitos pavadinimas", "Debit Account Name": "Debeto sąskaitos pavadinimas",
"Debit Account Type": "Debeto sąskaitos tipas",
"Debit Amount": "Debeto suma", "Debit Amount": "Debeto suma",
"Debit Tags": "Debeto žymos", "Debit Tags": "Debeto žymos",
"Decimal Places": "Dešimtainės vietos", "Decimal Places": "Dešimtainės vietos",
@@ -1973,6 +1983,8 @@
"Table Fields": "Lentelės laukai", "Table Fields": "Lentelės laukai",
"Tag": "Žyma", "Tag": "Žyma",
"Tax Group": "Mokesčių grupė", "Tax Group": "Mokesčių grupė",
"Tax Component": "Mokesčių komponentas",
"Tax Components": "Mokesčių komponentai",
"Tax-Component Name": "Mokesčių komponento pavadinimas", "Tax-Component Name": "Mokesčių komponento pavadinimas",
"Teller": "Teikėjas", "Teller": "Teikėjas",
"Teller Name": "Teikėjo vardas", "Teller Name": "Teikėjo vardas",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Mērinstrumentu panelis", "Dashboard": "Mērinstrumentu panelis",
"Default Shares per Client": "Noklusējuma akcijas vienam klientam", "Default Shares per Client": "Noklusējuma akcijas vienam klientam",
"Define New Mapping": "Definējiet jaunu kartēšanu", "Define New Mapping": "Definējiet jaunu kartēšanu",
"Define Tax Components": "Definējiet nodokļu sastāvdaļas",
"Define Tax Groups": "Definējiet nodokļu grupas",
"Delete": "Dzēst", "Delete": "Dzēst",
"Delete Client Signature": "Dzēst klienta parakstu", "Delete Client Signature": "Dzēst klienta parakstu",
"Delinquency Buckets": "Noziedzības spaiņi", "Delinquency Buckets": "Noziedzības spaiņi",
@@ -892,6 +894,13 @@
"successfully select option": "veiksmīgi. Lūdzu, atlasiet kādu no tālāk norādītajām opcijām, lai turpinātu." "successfully select option": "veiksmīgi. Lūdzu, atlasiet kādu no tālāk norādītajām opcijām, lai turpinātu."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "AKTĪVS",
"LIABILITY": "ATBILDĪBA",
"EQUITY": "KAPITĀLS",
"INCOME": "IENĀKUMI",
"EXPENSE": "IZDEVUMI"
},
"ACCOUNTING": "GRĀMATVEDĪBA", "ACCOUNTING": "GRĀMATVEDĪBA",
"ADDRESS": "ADRESE", "ADDRESS": "ADRESE",
"Above Changes are Effective from": "Iepriekš minētās izmaiņas ir spēkā no", "Above Changes are Effective from": "Iepriekš minētās izmaiņas ir spēkā no",
@@ -1190,6 +1199,7 @@
"Debit": "Debets", "Debit": "Debets",
"Debit Account": "Debeta konts", "Debit Account": "Debeta konts",
"Debit Account Name": "Debeta konta nosaukums", "Debit Account Name": "Debeta konta nosaukums",
"Debit Account Type": "Debeta konta veids",
"Debit Amount": "Debeta summa", "Debit Amount": "Debeta summa",
"Debit Tags": "Debeta tagi", "Debit Tags": "Debeta tagi",
"Decimal Places": "Decimālzīmes", "Decimal Places": "Decimālzīmes",
@@ -1973,6 +1983,8 @@
"Table Fields": "Tabulas lauki", "Table Fields": "Tabulas lauki",
"Tag": "Tag", "Tag": "Tag",
"Tax Group": "Nodokļu grupa", "Tax Group": "Nodokļu grupa",
"Tax Component": "Nodokļu sastāvdaļa",
"Tax Components": "Nodokļu sastāvdaļas",
"Tax-Component Name": "Nodokļa komponenta nosaukums", "Tax-Component Name": "Nodokļa komponenta nosaukums",
"Teller": "Teicējs", "Teller": "Teicējs",
"Teller Name": "Teicēja vārds", "Teller Name": "Teicēja vārds",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "ड्यासबोर्ड", "Dashboard": "ड्यासबोर्ड",
"Default Shares per Client": "प्रति ग्राहक पूर्वनिर्धारित शेयरहरू", "Default Shares per Client": "प्रति ग्राहक पूर्वनिर्धारित शेयरहरू",
"Define New Mapping": "नयाँ म्यापिङ परिभाषित गर्नुहोस्", "Define New Mapping": "नयाँ म्यापिङ परिभाषित गर्नुहोस्",
"Define Tax Components": "कर अवयवहरू परिभाषित गर्नुहोस्",
"Define Tax Groups": "कर समूहहरू परिभाषित गर्नुहोस्",
"Delete": "मेटाउन", "Delete": "मेटाउन",
"Delete Client Signature": "ग्राहक हस्ताक्षर मेटाउनुहोस्", "Delete Client Signature": "ग्राहक हस्ताक्षर मेटाउनुहोस्",
"Delete Checker": "चोर्क परीक्षक", "Delete Checker": "चोर्क परीक्षक",
@@ -892,6 +894,13 @@
"successfully select option": "सफलतापूर्वक। अगाडि बढ्नको लागि कृपया तलका विकल्पहरूबाट चयन गर्नुहोस्।" "successfully select option": "सफलतापूर्वक। अगाडि बढ्नको लागि कृपया तलका विकल्पहरूबाट चयन गर्नुहोस्।"
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "सम्पत्ति",
"LIABILITY": "दायित्व",
"EQUITY": "इक्विटी",
"INCOME": "आय",
"EXPENSE": "खर्च"
},
"ACCOUNTING": "लेखा", "ACCOUNTING": "लेखा",
"ADDRESS": "ठेगाना", "ADDRESS": "ठेगाना",
"Above Changes are Effective from": "माथिका परिवर्तनहरू बाट प्रभावकारी छन्", "Above Changes are Effective from": "माथिका परिवर्तनहरू बाट प्रभावकारी छन्",
@@ -1190,6 +1199,7 @@
"Debit": "डेबिट", "Debit": "डेबिट",
"Debit Account": "डेबिट खाता", "Debit Account": "डेबिट खाता",
"Debit Account Name": "डेबिट खाता नाम", "Debit Account Name": "डेबिट खाता नाम",
"Debit Account Type": "डेबिट खाता प्रकार",
"Debit Amount": "डेबिट रकम", "Debit Amount": "डेबिट रकम",
"Debit Tags": "डेबिट ट्यागहरू", "Debit Tags": "डेबिट ट्यागहरू",
"Decimal Places": "दशमलव स्थानहरू", "Decimal Places": "दशमलव स्थानहरू",
@@ -1973,6 +1983,8 @@
"Table Fields": "तालिका क्षेत्रहरू", "Table Fields": "तालिका क्षेत्रहरू",
"Tag": "ट्याग", "Tag": "ट्याग",
"Tax Group": "कर समूह", "Tax Group": "कर समूह",
"Tax Component": "कर घटक",
"Tax Components": "कर अवयवहरू",
"Tax-Component Name": "कर-घटक नाम", "Tax-Component Name": "कर-घटक नाम",
"Teller": "टेलर", "Teller": "टेलर",
"Teller Name": "टेलरको नाम", "Teller Name": "टेलरको नाम",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Painel", "Dashboard": "Painel",
"Default Shares per Client": "Compartilhamentos padrão por cliente", "Default Shares per Client": "Compartilhamentos padrão por cliente",
"Define New Mapping": "Definir novo mapeamento", "Define New Mapping": "Definir novo mapeamento",
"Define Tax Components": "Definir componentes fiscais",
"Define Tax Groups": "Definir grupos fiscais",
"Delete": "Excluir", "Delete": "Excluir",
"Delete Client Signature": "Excluir assinatura do cliente", "Delete Client Signature": "Excluir assinatura do cliente",
"Delete Checker": "Exclua verificador", "Delete Checker": "Exclua verificador",
@@ -892,6 +894,13 @@
"successfully select option": "com sucesso. Selecione uma das opções abaixo para prosseguir." "successfully select option": "com sucesso. Selecione uma das opções abaixo para prosseguir."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "ATIVO",
"LIABILITY": "RESPONSABILIDADE",
"EQUITY": "EQUIDADE",
"INCOME": "RENDA",
"EXPENSE": "DESPESA"
},
"ACCOUNTING": "CONTABILIDADE", "ACCOUNTING": "CONTABILIDADE",
"ADDRESS": "ENDEREÇO", "ADDRESS": "ENDEREÇO",
"Above Changes are Effective from": "As alterações acima entram em vigor a partir de", "Above Changes are Effective from": "As alterações acima entram em vigor a partir de",
@@ -1190,6 +1199,7 @@
"Debit": "Débito", "Debit": "Débito",
"Debit Account": "Conta de débito", "Debit Account": "Conta de débito",
"Debit Account Name": "Nome da conta de débito", "Debit Account Name": "Nome da conta de débito",
"Debit Account Type": "Tipo de conta de débito",
"Debit Amount": "Valor do débito", "Debit Amount": "Valor do débito",
"Debit Tags": "Tags de débito", "Debit Tags": "Tags de débito",
"Decimal Places": "Casas decimais", "Decimal Places": "Casas decimais",
@@ -1973,6 +1983,8 @@
"Table Fields": "Campos da tabela", "Table Fields": "Campos da tabela",
"Tag": "Marcação", "Tag": "Marcação",
"Tax Group": "Grupo Fiscal", "Tax Group": "Grupo Fiscal",
"Tax Component": "Componente Fiscal",
"Tax Components": "Componentes fiscais",
"Tax-Component Name": "Nome do componente fiscal", "Tax-Component Name": "Nome do componente fiscal",
"Teller": "Caixa", "Teller": "Caixa",
"Teller Name": "Nome do caixa", "Teller Name": "Nome do caixa",
+12
View File
@@ -638,6 +638,8 @@
"Dashboard": "Dashibodi", "Dashboard": "Dashibodi",
"Default Shares per Client": "Hisa Chaguomsingi kwa kila Mteja", "Default Shares per Client": "Hisa Chaguomsingi kwa kila Mteja",
"Define New Mapping": "Bainisha Ramani Mpya", "Define New Mapping": "Bainisha Ramani Mpya",
"Define Tax Components": "Bainisha Vipengee vya Ushuru",
"Define Tax Groups": "Bainisha Vikundi vya Ushuru",
"Delete": "Futa", "Delete": "Futa",
"Delete Client Signature": "Futa Sahihi ya Mteja", "Delete Client Signature": "Futa Sahihi ya Mteja",
"Delete Checker": "Futa ukaguzi", "Delete Checker": "Futa ukaguzi",
@@ -892,6 +894,13 @@
"successfully select option": "kwa mafanikio. Tafadhali chagua kutoka kwa chaguo zilizo hapa chini ili kuendelea zaidi." "successfully select option": "kwa mafanikio. Tafadhali chagua kutoka kwa chaguo zilizo hapa chini ili kuendelea zaidi."
}, },
"inputs": { "inputs": {
"accounting": {
"ASSET": "ASSET",
"LIABILITY": "DHIMA",
"EQUITY": "USAWA",
"INCOME": "MAPATO",
"EXPENSE": "GHARAMA"
},
"ACCOUNTING": "UHASIBU", "ACCOUNTING": "UHASIBU",
"ADDRESS": "ANWANI", "ADDRESS": "ANWANI",
"Above Changes are Effective from": "Mabadiliko Hapo Juu yanatumika kutoka", "Above Changes are Effective from": "Mabadiliko Hapo Juu yanatumika kutoka",
@@ -1190,6 +1199,7 @@
"Debit": "Debit", "Debit": "Debit",
"Debit Account": "Akaunti ya Debit", "Debit Account": "Akaunti ya Debit",
"Debit Account Name": "Jina la Akaunti ya Debit", "Debit Account Name": "Jina la Akaunti ya Debit",
"Debit Account Type": "Aina ya Akaunti ya Debit",
"Debit Amount": "Kiasi cha Debit", "Debit Amount": "Kiasi cha Debit",
"Debit Tags": "Lebo za Debit", "Debit Tags": "Lebo za Debit",
"Decimal Places": "Maeneo ya decimal", "Decimal Places": "Maeneo ya decimal",
@@ -1973,6 +1983,8 @@
"Table Fields": "Viwanja vya Jedwali", "Table Fields": "Viwanja vya Jedwali",
"Tag": "Lebo", "Tag": "Lebo",
"Tax Group": "Kikundi cha Ushuru", "Tax Group": "Kikundi cha Ushuru",
"Tax Component": "Sehemu ya Ushuru",
"Tax Components": "Vipengele vya Ushuru",
"Tax-Component Name": "Jina la Sehemu ya Ushuru", "Tax-Component Name": "Jina la Sehemu ya Ushuru",
"Teller": "Mtangazaji", "Teller": "Mtangazaji",
"Teller Name": "Jina la Mtangazaji", "Teller Name": "Jina la Mtangazaji",