Imprägnierungen können gespeichert werden

This commit is contained in:
HuskyTeufel
2021-11-01 09:58:54 +01:00
parent b4a896f5bf
commit d4da9fd0da
4 changed files with 38 additions and 3 deletions

View File

@@ -0,0 +1,28 @@
using DaSaSo.Domain.Model;
using DaSaSo.Domain.Services;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DaSaSo.ViewModel.Commands
{
internal class SaveImpregnationCommand : AsyncCommandBase
{
private IDataService<Impregnation> _impregnationService;
private ImpregnierungEditViewModel _impregnationEditViewModel;
public SaveImpregnationCommand(ImpregnierungEditViewModel impregnierungEditViewModel, IDataService<Impregnation> dataService)
{
_impregnationService = dataService;
_impregnationEditViewModel = impregnierungEditViewModel;
}
public override async Task ExecuteAsync(object? parameter)
{
_impregnationEditViewModel.Model = await _impregnationService.Update(_impregnationEditViewModel.Model.Id, _impregnationEditViewModel.Model);
Trace.WriteLine("Daten gespeichert");
}
}
}

View File

@@ -1,16 +1,21 @@
using DaSaSo.Domain.Model; using DaSaSo.Domain.Model;
using DaSaSo.Domain.Services;
using DaSaSo.ViewModel.Commands;
using DaSaSo.ViewModel.Interface; using DaSaSo.ViewModel.Interface;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Input;
namespace DaSaSo.ViewModel namespace DaSaSo.ViewModel
{ {
public class ImpregnierungEditViewModel : BaseViewModel public class ImpregnierungEditViewModel : BaseViewModel
{ {
private Impregnation _model; private Impregnation _model;
public ICommand SaveImpregnation { get; set; }
public Impregnation Model { get => _model; set => _model = value; }
public int DN public int DN
{ {
@@ -53,9 +58,10 @@ namespace DaSaSo.ViewModel
} }
} }
public ImpregnierungEditViewModel(IActualProject actualProject) public ImpregnierungEditViewModel(IActualProject actualProject, IDataService<Impregnation> dataservice)
{ {
_model = actualProject.AktuellImpregnation; _model = actualProject.AktuellImpregnation;
SaveImpregnation = new SaveImpregnationCommand(this,dataservice);
} }
} }
} }

View File

@@ -80,7 +80,8 @@ namespace DaSaSo.Wpf.HostBuilders
services.AddTransient<CreateViewModel<ImpregnierungEditViewModel>>(services => services.AddTransient<CreateViewModel<ImpregnierungEditViewModel>>(services =>
{ {
return () => new ImpregnierungEditViewModel( return () => new ImpregnierungEditViewModel(
services.GetRequiredService<IActualProject>() services.GetRequiredService<IActualProject>(),
services.GetRequiredService<IDataService<Impregnation>>()
); );
}); });

View File

@@ -37,6 +37,6 @@
<TextBox Grid.Column="1" Grid.Row="5" Text="" /> <TextBox Grid.Column="1" Grid.Row="5" Text="" />
<CheckBox Grid.Column="1" Grid.Row="6" Content="Ja" Style="{StaticResource checkBoxCircleSmall}"/> <CheckBox Grid.Column="1" Grid.Row="6" Content="Ja" Style="{StaticResource checkBoxCircleSmall}"/>
<Button Grid.Row="7" Grid.ColumnSpan="2" Content="Speichern" /> <Button Grid.Row="7" Grid.ColumnSpan="2" Content="Speichern" Command="{Binding SaveImpregnation}" />
</Grid> </Grid>
</UserControl> </UserControl>