You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
2.5 KiB

@page "/employee"
@using BlazorProject.Models
@inject IJSRuntime JsRuntime
@inject Microsoft.Extensions.Localization.IStringLocalizer<App> Localize
<h1>@title</h1>
<br />
<EditForm Model="@employee" OnSubmit="SaveEmployeeToLocalStorage">
<div class="row">
<div class="col-md-4">
<div class="form-group">
<label class="control-label col-md-12">@Localize["Name"]</label>
<input class="form-control" @bind="employee.Name"/>
</div>
<div class="form-group">
<label class="control-label col-md-12">@Localize["Gender"]</label>
<select class="form-control" @bind="employee.Gender">
<option value="">@Localize["Select Gender"]</option>
<option value="Male">@Localize["Male"]</option>
<option value="Female">@Localize["Female"]</option>
</select>
</div>
</div>
<div class="col-md-4">
<div class="form-group">
<label class="control-label col-md-12">@Localize["City"]</label>
<input class="form-control" @bind="employee.City" />
</div>
<div class="form-group">
<label class="control-label col-md-12">@Localize["Salary"]</label>
<input type="number" class="form-control" @bind="employee.Salary" />
</div>
</div>
</div>
<button type="submit" class="btn btn-primary">@Localize["Save"]</button>
</EditForm>
<hr />
<div class="row">
<div class="col-md-8">
<table class='table'>
<thead class="table-active">
<tr>
@foreach (string header in TableHeader)
{
<th>
@Localize[header]
</th>
}
</tr>
</thead>
<tbody>
@foreach (Employee emp in lstEmployees)
{
<tr>
<td>@emp.Name</td>
@if (@emp.Gender != null)
{
<td>@Localize[emp.Gender]</td>
} else {
<td>@Localize["Unknown"]</td>
}
<td>@emp.City</td>
<td>@emp.Salary.ToString("C2")</td>
<td>@emp.JoiningDate</td>
</tr>
}
</tbody>
</table>
</div>
</div>