using DaSaSo.Domain.Model; using DaSaSo.Domain.Services; using DaSaSo.Domain.Services.BuildingsiteServices; using DaSaSo.ViewModel.Interface; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DaSaSo.ViewModel.Commands { public class AddBuildingsiteCommand: AsyncCommandBase { private IActualProject _actualProject; private IBuildingsiteService _buildingsiteService; private readonly IRenavigator _renavigator; private readonly IDataService _dataservice; public AddBuildingsiteCommand(IDataService dataService, IActualProject actualProject, IBuildingsiteService buildingsiteService, IRenavigator renavigator) { _actualProject = actualProject; _buildingsiteService = buildingsiteService; _dataservice = dataService; _renavigator = renavigator; } public override async Task ExecuteAsync(object? parameter) { Buildingsite buildingsite = await _buildingsiteService.CreateBuildingsite(_actualProject.AktuellProjekt); _actualProject.SetBuildingSite(buildingsite); _renavigator.Renavigate(new BuildingsiteEditViewModel(_dataservice, _actualProject, _renavigator)); } } }