48 lines
1.7 KiB
C#
48 lines
1.7 KiB
C#
|
|
using Microsoft.AspNetCore.Mvc;
|
||
|
|
using PlanTempus.Application.Features.Localization.Services;
|
||
|
|
|
||
|
|
namespace PlanTempus.Application.Features.Employees.Components;
|
||
|
|
|
||
|
|
public class EmployeeDetailViewViewComponent : ViewComponent
|
||
|
|
{
|
||
|
|
private readonly ILocalizationService _localization;
|
||
|
|
|
||
|
|
public EmployeeDetailViewViewComponent(ILocalizationService localization)
|
||
|
|
{
|
||
|
|
_localization = localization;
|
||
|
|
}
|
||
|
|
|
||
|
|
public IViewComponentResult Invoke(string key)
|
||
|
|
{
|
||
|
|
var employee = EmployeeDetailCatalog.Get(key);
|
||
|
|
|
||
|
|
var model = new EmployeeDetailViewViewModel
|
||
|
|
{
|
||
|
|
EmployeeKey = employee.Key,
|
||
|
|
BackText = _localization.Get("employees.detail.back"),
|
||
|
|
SaveButtonText = _localization.Get("employees.detail.save"),
|
||
|
|
TabGeneral = _localization.Get("employees.detail.tabs.general"),
|
||
|
|
TabHours = _localization.Get("employees.detail.tabs.hours"),
|
||
|
|
TabServices = _localization.Get("employees.detail.tabs.services"),
|
||
|
|
TabSalary = _localization.Get("employees.detail.tabs.salary"),
|
||
|
|
TabHR = _localization.Get("employees.detail.tabs.hr"),
|
||
|
|
TabStats = _localization.Get("employees.detail.tabs.stats")
|
||
|
|
};
|
||
|
|
|
||
|
|
return View(model);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public class EmployeeDetailViewViewModel
|
||
|
|
{
|
||
|
|
public required string EmployeeKey { get; init; }
|
||
|
|
public required string BackText { get; init; }
|
||
|
|
public required string SaveButtonText { get; init; }
|
||
|
|
public required string TabGeneral { get; init; }
|
||
|
|
public required string TabHours { get; init; }
|
||
|
|
public required string TabServices { get; init; }
|
||
|
|
public required string TabSalary { get; init; }
|
||
|
|
public required string TabHR { get; init; }
|
||
|
|
public required string TabStats { get; init; }
|
||
|
|
}
|