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.Services.Components;
|
||
|
|
|
||
|
|
public class ServiceDetailViewViewComponent : ViewComponent
|
||
|
|
{
|
||
|
|
private readonly ILocalizationService _localization;
|
||
|
|
|
||
|
|
public ServiceDetailViewViewComponent(ILocalizationService localization)
|
||
|
|
{
|
||
|
|
_localization = localization;
|
||
|
|
}
|
||
|
|
|
||
|
|
public IViewComponentResult Invoke(string key)
|
||
|
|
{
|
||
|
|
var service = ServiceDetailCatalog.Get(key);
|
||
|
|
|
||
|
|
var model = new ServiceDetailViewViewModel
|
||
|
|
{
|
||
|
|
ServiceKey = service.Key,
|
||
|
|
BackText = _localization.Get("services.detail.back"),
|
||
|
|
SaveButtonText = _localization.Get("services.detail.save"),
|
||
|
|
TabGeneral = _localization.Get("services.detail.tabs.general"),
|
||
|
|
TabPrices = _localization.Get("services.detail.tabs.prices"),
|
||
|
|
TabDuration = _localization.Get("services.detail.tabs.duration"),
|
||
|
|
TabEmployees = _localization.Get("services.detail.tabs.employees"),
|
||
|
|
TabAddons = _localization.Get("services.detail.tabs.addons"),
|
||
|
|
TabRules = _localization.Get("services.detail.tabs.rules")
|
||
|
|
};
|
||
|
|
|
||
|
|
return View(model);
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
public class ServiceDetailViewViewModel
|
||
|
|
{
|
||
|
|
public required string ServiceKey { get; init; }
|
||
|
|
public required string BackText { get; init; }
|
||
|
|
public required string SaveButtonText { get; init; }
|
||
|
|
public required string TabGeneral { get; init; }
|
||
|
|
public required string TabPrices { get; init; }
|
||
|
|
public required string TabDuration { get; init; }
|
||
|
|
public required string TabEmployees { get; init; }
|
||
|
|
public required string TabAddons { get; init; }
|
||
|
|
public required string TabRules { get; init; }
|
||
|
|
}
|