PlanTempusApp/PlanTempus.Application/Features/Services/Components/ServiceDetailView/ServiceDetailViewViewComponent.cs

48 lines
1.7 KiB
C#
Raw Normal View History

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; }
}