viewmodel ins wpf gepackt, build failed
This commit is contained in:
30
DaSaSo.Wpf/ViewModel/Commands/AddBuildingsiteCommand.cs
Normal file
30
DaSaSo.Wpf/ViewModel/Commands/AddBuildingsiteCommand.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.BuildingsiteServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class AddBuildingsiteCommand: AsyncCommandBase
|
||||
{
|
||||
private IActualProject _actualProject;
|
||||
private IBuildingsiteService _buildingsiteService;
|
||||
private readonly IRenavigator _renavigator;
|
||||
private readonly IDataService<Buildingsite> _dataservice;
|
||||
public AddBuildingsiteCommand(IDataService<Buildingsite> 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();
|
||||
}
|
||||
}
|
||||
}
|
||||
32
DaSaSo.Wpf/ViewModel/Commands/AddClientCommand.cs
Normal file
32
DaSaSo.Wpf/ViewModel/Commands/AddClientCommand.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class AddClientCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IDataService<Client> dataservice;
|
||||
private readonly IActualProject actualProject;
|
||||
private readonly IRenavigator renavigator;
|
||||
private readonly ClientListViewModel clientListViewModel;
|
||||
|
||||
public AddClientCommand(IDataService<Client> dataservice, IActualProject actualProject, IRenavigator renavigator, ClientListViewModel clientListViewModel)
|
||||
{
|
||||
this.dataservice = dataservice;
|
||||
this.actualProject = actualProject;
|
||||
this.renavigator = renavigator;
|
||||
this.clientListViewModel = clientListViewModel;
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
|
||||
Client newClient = await dataservice.Create(new Client());
|
||||
actualProject.SetClient(newClient,false);
|
||||
//actualProject.SetClient(clientListViewModel.SelectedClient);
|
||||
renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
36
DaSaSo.Wpf/ViewModel/Commands/AddDamageCommand.cs
Normal file
36
DaSaSo.Wpf/ViewModel/Commands/AddDamageCommand.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class AddDamageCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IActualProject actualProject;
|
||||
private readonly IRenavigator addedNavigator;
|
||||
|
||||
|
||||
public AddDamageCommand(IActualProject actualProject, IRenavigator addedNavigator)
|
||||
{
|
||||
this.actualProject = actualProject;
|
||||
this.addedNavigator = addedNavigator;
|
||||
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
SewerDamage newSewerDamage = new SewerDamage();
|
||||
//newSewerDamage.SewerObject = actualProject.AktuellSewerObject; // Führt zur Exception, dass EF versucht doppelte einträge vorzunehmen
|
||||
|
||||
actualProject.AktuellSewerObject.SewerDamages.Add(newSewerDamage);
|
||||
SewerDamage? lastInsertedDamage = actualProject.AktuellSewerObject.SewerDamages.Last();
|
||||
lastInsertedDamage.SewerObject = actualProject.AktuellSewerObject;
|
||||
actualProject.SetSewerDamage(lastInsertedDamage);
|
||||
|
||||
|
||||
//addedNavigator.Renavigate(); // Bug führt zur generellen umnavigation...
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
25
DaSaSo.Wpf/ViewModel/Commands/AddImpregnationCommand.cs
Normal file
25
DaSaSo.Wpf/ViewModel/Commands/AddImpregnationCommand.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
internal class AddImpregnationCommand : AsyncCommandBase
|
||||
{
|
||||
private IDataService<Impregnation> impregnationService;
|
||||
private IRenavigator editRenavigator;
|
||||
|
||||
public AddImpregnationCommand(IDataService<Impregnation> impregnationService, IRenavigator editRenavigator)
|
||||
{
|
||||
this.impregnationService = impregnationService;
|
||||
this.editRenavigator = editRenavigator;
|
||||
}
|
||||
|
||||
public override Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
34
DaSaSo.Wpf/ViewModel/Commands/AddProjectCommand.cs
Normal file
34
DaSaSo.Wpf/ViewModel/Commands/AddProjectCommand.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.ProjectServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class AddProjectCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IActualProject _actualProject;
|
||||
private readonly IProjectService _projectService;
|
||||
private readonly IRenavigator _renavigator;
|
||||
private readonly IDataService<Project> _genericDataService;
|
||||
|
||||
|
||||
public AddProjectCommand(IDataService<Project> genericDataService, IActualProject actualProject, IProjectService projectService, IRenavigator renavigator)
|
||||
{
|
||||
_actualProject = actualProject;
|
||||
_projectService = projectService;
|
||||
_renavigator = renavigator;
|
||||
_genericDataService = genericDataService;
|
||||
}
|
||||
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
Project pro = await _projectService.CreateProject();
|
||||
_actualProject.SetProject(pro);
|
||||
_renavigator.Renavigate();
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
25
DaSaSo.Wpf/ViewModel/Commands/AddSewerObjectCommand.cs
Normal file
25
DaSaSo.Wpf/ViewModel/Commands/AddSewerObjectCommand.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services.SewerObjectService;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class AddSewerObjectCommand : AsyncCommandBase
|
||||
{
|
||||
private IActualProject _actualProject;
|
||||
private ISewerObjectService _sewerObjectService;
|
||||
|
||||
public AddSewerObjectCommand(IActualProject actualProject, ISewerObjectService sewerObjectService)
|
||||
{
|
||||
_actualProject = actualProject;
|
||||
_sewerObjectService = sewerObjectService;
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
SewerObject sewerobject = await _sewerObjectService.CreateSewerObject(_actualProject.AktuellBaustelle);
|
||||
_actualProject.SetSewerObject(sewerobject);
|
||||
}
|
||||
}
|
||||
}
|
||||
45
DaSaSo.Wpf/ViewModel/Commands/AsyncCommandBase.cs
Normal file
45
DaSaSo.Wpf/ViewModel/Commands/AsyncCommandBase.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public abstract class AsyncCommandBase : ICommand
|
||||
{
|
||||
bool _isExecuting = false;
|
||||
public event EventHandler? CanExecuteChanged;
|
||||
|
||||
public bool IsExecuting
|
||||
{
|
||||
get => _isExecuting;
|
||||
set
|
||||
{
|
||||
_isExecuting = value;
|
||||
CanExecuteChanged?.Invoke(this, new EventArgs());
|
||||
}
|
||||
}
|
||||
|
||||
protected void OnCanExecuteChanged()
|
||||
{
|
||||
CanExecuteChanged?.Invoke(this, new EventArgs());
|
||||
}
|
||||
|
||||
|
||||
public virtual bool CanExecute(object? parameter)
|
||||
{
|
||||
return !IsExecuting;
|
||||
}
|
||||
|
||||
public async void Execute(object? parameter)
|
||||
{
|
||||
IsExecuting = true;
|
||||
await ExecuteAsync(parameter);
|
||||
IsExecuting = false;
|
||||
}
|
||||
|
||||
public abstract Task ExecuteAsync(object? parameter);
|
||||
}
|
||||
}
|
||||
44
DaSaSo.Wpf/ViewModel/Commands/EditBuildingsiteCommand.cs
Normal file
44
DaSaSo.Wpf/ViewModel/Commands/EditBuildingsiteCommand.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.BuildingsiteServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.ComponentModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class EditBuildingsiteCommand : AsyncCommandBase
|
||||
{
|
||||
private IDataService<Buildingsite> buildingSiteDataService;
|
||||
private IActualProject actualProject;
|
||||
private IRenavigator renavigator;
|
||||
private IBuildingsiteService buildingsiteService;
|
||||
private BuildingsiteListViewModel _buildingsiteListViewModel;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _buildingsiteListViewModel.CanSelectBuildingsite;
|
||||
}
|
||||
|
||||
public EditBuildingsiteCommand(IDataService<Buildingsite> buildingSiteDataService, IActualProject actualProject, IRenavigator renavigator, IBuildingsiteService buildingsiteService, BuildingsiteListViewModel buildingsiteListViewModel)
|
||||
{
|
||||
this.buildingSiteDataService = buildingSiteDataService;
|
||||
this.actualProject = actualProject;
|
||||
this.renavigator = renavigator;
|
||||
this.buildingsiteService = buildingsiteService;
|
||||
_buildingsiteListViewModel = buildingsiteListViewModel;
|
||||
_buildingsiteListViewModel.PropertyChanged += BuildingsiteListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void BuildingsiteListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_buildingsiteListViewModel.CanSelectBuildingsite))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
actualProject.SetBuildingSite(_buildingsiteListViewModel.SelectedBuildingsite);
|
||||
renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
45
DaSaSo.Wpf/ViewModel/Commands/EditClientCommand.cs
Normal file
45
DaSaSo.Wpf/ViewModel/Commands/EditClientCommand.cs
Normal file
@@ -0,0 +1,45 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.ComponentModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class EditClientCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IDataService<Client> dataservice;
|
||||
private readonly IActualProject actualProject;
|
||||
private readonly IRenavigator renavigator;
|
||||
private readonly ClientListViewModel _clientListViewModel;
|
||||
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _clientListViewModel.CanSelectClient;
|
||||
}
|
||||
|
||||
public EditClientCommand(IDataService<Client> dataservice, IActualProject actualProject,IRenavigator renavigator, ClientListViewModel clientListViewModel)
|
||||
{
|
||||
this.dataservice = dataservice;
|
||||
this.actualProject = actualProject;
|
||||
this.renavigator = renavigator;
|
||||
this._clientListViewModel = clientListViewModel;
|
||||
_clientListViewModel.PropertyChanged += _clientListViewModel_PropertyChanged;
|
||||
|
||||
}
|
||||
|
||||
private void _clientListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if(e.PropertyName == nameof(_clientListViewModel.CanSelectClient))
|
||||
{
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
actualProject.SetClient(_clientListViewModel.SelectedClient);
|
||||
renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
44
DaSaSo.Wpf/ViewModel/Commands/EditImpregnationCommand.cs
Normal file
44
DaSaSo.Wpf/ViewModel/Commands/EditImpregnationCommand.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
internal class EditImpregnationCommand : AsyncCommandBase
|
||||
{
|
||||
private IDataService<Impregnation> _impregnationService;
|
||||
private ImpregnierungListViewModel _impregnierungListViewModel;
|
||||
private IRenavigator _editRenavigator;
|
||||
private IActualProject _actualProject;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _impregnierungListViewModel.SelectedImpregnation != null;
|
||||
}
|
||||
|
||||
public EditImpregnationCommand(
|
||||
IDataService<Impregnation> impregnationService,
|
||||
ImpregnierungListViewModel impregnierungListViewModel,
|
||||
IActualProject actualProject,
|
||||
IRenavigator editRenavigator)
|
||||
{
|
||||
_impregnationService = impregnationService;
|
||||
_impregnierungListViewModel = impregnierungListViewModel;
|
||||
_actualProject = actualProject;
|
||||
_editRenavigator = editRenavigator;
|
||||
_impregnierungListViewModel.PropertyChanged += _impregnierungListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void _impregnierungListViewModel_PropertyChanged(object? sender, System.ComponentModel.PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_impregnierungListViewModel.CanSelectImpregnation))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
_actualProject.SetImpregnation(_impregnierungListViewModel.SelectedImpregnation);
|
||||
_editRenavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
44
DaSaSo.Wpf/ViewModel/Commands/EditProjectCommand.cs
Normal file
44
DaSaSo.Wpf/ViewModel/Commands/EditProjectCommand.cs
Normal file
@@ -0,0 +1,44 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.ProjectServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System.ComponentModel;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class EditProjectCommand : AsyncCommandBase
|
||||
{
|
||||
private IDataService<Project> _dataService;
|
||||
private IActualProject _actualProject;
|
||||
private IRenavigator _renavigator;
|
||||
private readonly IProjectService _projectService;
|
||||
private ProjectListViewModel _projectListViewModel;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _projectListViewModel.SelectedProject != null;
|
||||
}
|
||||
|
||||
public EditProjectCommand(IDataService<Project> dataService, IActualProject actualProject, IRenavigator renavigator, IProjectService projectService, ProjectListViewModel projectListViewModel)
|
||||
{
|
||||
this._dataService = dataService;
|
||||
this._actualProject = actualProject;
|
||||
this._renavigator = renavigator;
|
||||
this._projectService = projectService;
|
||||
this._projectListViewModel = projectListViewModel;
|
||||
_projectListViewModel.PropertyChanged += _projectListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void _projectListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_projectListViewModel.CanSelectProject))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
_actualProject.SetProject(_projectListViewModel.SelectedProject);
|
||||
_renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
28
DaSaSo.Wpf/ViewModel/Commands/SaveImpregnationCommand.cs
Normal file
28
DaSaSo.Wpf/ViewModel/Commands/SaveImpregnationCommand.cs
Normal 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.Wpf.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");
|
||||
}
|
||||
}
|
||||
}
|
||||
51
DaSaSo.Wpf/ViewModel/Commands/SaveSewerCommand.cs
Normal file
51
DaSaSo.Wpf/ViewModel/Commands/SaveSewerCommand.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.SewerObjectService;
|
||||
using DaSaSo.Domain.Services.SewerPointServices;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class SaveSewerCommand : AsyncCommandBase
|
||||
{
|
||||
|
||||
private IDataService<SewerObject> _dataService;
|
||||
private IActualProject _actualProject;
|
||||
private readonly ISewerObjectService _sewerObjectService;
|
||||
private readonly IRenavigator _renavigator;
|
||||
private readonly ISewerMainNavigator _navigator;
|
||||
|
||||
public SaveSewerCommand(
|
||||
|
||||
IDataService<SewerObject> dataService,
|
||||
IActualProject actualProject,
|
||||
ISewerObjectService sewerObjectService,
|
||||
IRenavigator renavigator,
|
||||
ISewerMainNavigator navigator)
|
||||
{
|
||||
|
||||
_dataService = dataService;
|
||||
|
||||
_actualProject = actualProject;
|
||||
_sewerObjectService = sewerObjectService;
|
||||
_renavigator = renavigator;
|
||||
_navigator = navigator;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
Trace.WriteLine(_actualProject.AktuellSewerObject.IsChanged);
|
||||
_navigator.CurrentViewModel = null;
|
||||
_renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
51
DaSaSo.Wpf/ViewModel/Commands/SaveSewerStammdatenCommand.cs
Normal file
51
DaSaSo.Wpf/ViewModel/Commands/SaveSewerStammdatenCommand.cs
Normal file
@@ -0,0 +1,51 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Domain.Services.SewerPointServices;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class SaveSewerStammdatenCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly SewerStammdatenViewModel _stammdatenViewModel;
|
||||
private IDataService<SewerObject> _dataService;
|
||||
private readonly ISewerpointService _sewerPointService;
|
||||
|
||||
public SaveSewerStammdatenCommand(SewerStammdatenViewModel stammdatenViewModel, IDataService<SewerObject> dataService, ISewerpointService sewerpointService)
|
||||
{
|
||||
_stammdatenViewModel = stammdatenViewModel;
|
||||
_dataService = dataService;
|
||||
_sewerPointService = sewerpointService;
|
||||
}
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
if (_stammdatenViewModel._oberepunkt != null)
|
||||
{
|
||||
if ((_stammdatenViewModel.Model.PunktOben == null) || (_stammdatenViewModel._oberepunkt != _stammdatenViewModel.Model.PunktOben.Objektnummer))
|
||||
{
|
||||
SewerPoint punktOben = await _sewerPointService.CreateOrFindSewerpoint(_stammdatenViewModel._oberepunkt);
|
||||
_stammdatenViewModel.Model.PunktOben = punktOben;
|
||||
}
|
||||
}
|
||||
if (_stammdatenViewModel._unterepunkt != null)
|
||||
{
|
||||
if ((_stammdatenViewModel.Model.PunktUnten == null) || (_stammdatenViewModel._unterepunkt != _stammdatenViewModel.Model.PunktUnten.Objektnummer))
|
||||
{
|
||||
SewerPoint punktUnten = await _sewerPointService.CreateOrFindSewerpoint(_stammdatenViewModel._unterepunkt);
|
||||
_stammdatenViewModel.Model.PunktUnten = punktUnten;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
_stammdatenViewModel.Model = await _dataService.Update(_stammdatenViewModel.Model.Id, _stammdatenViewModel.Model);
|
||||
Trace.WriteLine("Daten gespeichert");
|
||||
}
|
||||
}
|
||||
}
|
||||
39
DaSaSo.Wpf/ViewModel/Commands/SelectBuildingsiteCommand.cs
Normal file
39
DaSaSo.Wpf/ViewModel/Commands/SelectBuildingsiteCommand.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class SelectBuildingsiteCommand : AsyncCommandBase
|
||||
{
|
||||
private IActualProject _actualProject;
|
||||
private BuildingsiteListViewModel _buildingsiteListViewModel;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _buildingsiteListViewModel.CanSelectBuildingsite;
|
||||
}
|
||||
|
||||
public SelectBuildingsiteCommand(IActualProject actualProject, BuildingsiteListViewModel buildingsiteListViewModel)
|
||||
{
|
||||
this._actualProject = actualProject;
|
||||
this._buildingsiteListViewModel = buildingsiteListViewModel;
|
||||
_buildingsiteListViewModel.PropertyChanged += _buildingsiteListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void _buildingsiteListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_buildingsiteListViewModel.CanSelectBuildingsite))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
var s = _buildingsiteListViewModel.SelectedBuildingsite;
|
||||
_actualProject.SetBuildingSite(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
53
DaSaSo.Wpf/ViewModel/Commands/SelectClientCommand.cs
Normal file
53
DaSaSo.Wpf/ViewModel/Commands/SelectClientCommand.cs
Normal file
@@ -0,0 +1,53 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Domain.Services;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class SelectClientCommand : AsyncCommandBase
|
||||
{
|
||||
|
||||
private readonly IActualProject _actualProject;
|
||||
private readonly ClientListViewModel _clientListViewModel;
|
||||
private readonly IDataService<Client> _dataservice;
|
||||
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _clientListViewModel.CanSelectClient;
|
||||
}
|
||||
public SelectClientCommand(
|
||||
IDataService<Client> dataService,
|
||||
IActualProject actualProject,
|
||||
ClientListViewModel clientListViewModel)
|
||||
{
|
||||
_actualProject = actualProject;
|
||||
_clientListViewModel = clientListViewModel;
|
||||
_clientListViewModel.PropertyChanged += ClientListViewModel_PropertyChanged;
|
||||
_dataservice = dataService;
|
||||
}
|
||||
|
||||
private void ClientListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if(e.PropertyName == nameof(_clientListViewModel.CanSelectClient))
|
||||
{
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
Client? _selectedClient = _clientListViewModel.SelectedClient;
|
||||
if (_selectedClient == null) return;
|
||||
_selectedClient = await _dataservice.Get(_selectedClient.Id);
|
||||
_actualProject.SetClient(_selectedClient);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
24
DaSaSo.Wpf/ViewModel/Commands/SelectDamageCommand.cs
Normal file
24
DaSaSo.Wpf/ViewModel/Commands/SelectDamageCommand.cs
Normal file
@@ -0,0 +1,24 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class SelectDamageCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly SewerMainListViewModel _sewerMainListViewModel;
|
||||
|
||||
public SelectDamageCommand(SewerMainListViewModel sewerMainListViewModel)
|
||||
{
|
||||
_sewerMainListViewModel = sewerMainListViewModel;
|
||||
}
|
||||
|
||||
public override Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
var d = _sewerMainListViewModel;
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
39
DaSaSo.Wpf/ViewModel/Commands/SelectProjectCommand.cs
Normal file
39
DaSaSo.Wpf/ViewModel/Commands/SelectProjectCommand.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class SelectProjectCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IActualProject _actualProject;
|
||||
private readonly ProjectListViewModel _projectListViewModel;
|
||||
public override bool CanExecute(object? parameter)
|
||||
{
|
||||
return _projectListViewModel.SelectedProject != null;
|
||||
}
|
||||
|
||||
public SelectProjectCommand(IActualProject actualProject, ProjectListViewModel projectListViewModel)
|
||||
{
|
||||
_actualProject = actualProject;
|
||||
_projectListViewModel = projectListViewModel;
|
||||
_projectListViewModel.PropertyChanged += _projectListViewModel_PropertyChanged;
|
||||
}
|
||||
|
||||
private void _projectListViewModel_PropertyChanged(object? sender, PropertyChangedEventArgs e)
|
||||
{
|
||||
if (e.PropertyName == nameof(_projectListViewModel.CanSelectProject))
|
||||
OnCanExecuteChanged();
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
var s = _projectListViewModel.SelectedProject;
|
||||
_actualProject.SetProject(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
29
DaSaSo.Wpf/ViewModel/Commands/SelectSewerObjectCommand.cs
Normal file
29
DaSaSo.Wpf/ViewModel/Commands/SelectSewerObjectCommand.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using DaSaSo.Domain.Model;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
public class SelectSewerObjectCommand : AsyncCommandBase
|
||||
{
|
||||
private readonly IActualProject _actualProject;
|
||||
private readonly SewerObjectListViewModel _sewerObjectListViewModel;
|
||||
|
||||
public SelectSewerObjectCommand(IActualProject actualProject, SewerObjectListViewModel sewerObjectListViewModel)
|
||||
{
|
||||
_actualProject = actualProject;
|
||||
_sewerObjectListViewModel = sewerObjectListViewModel;
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
SewerObject? selectedSewer = _sewerObjectListViewModel.GetSelectedSewer();
|
||||
if (selectedSewer == null) return;
|
||||
_actualProject.SetSewerObject(selectedSewer);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using DaSaSo.Domain.Enums;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class UpdateCurrentSewerViewModelCommand : AsyncCommandBase
|
||||
{
|
||||
private INavigator _navigator;
|
||||
private readonly IViewModelSewerMainFactory _viewModelFactory;
|
||||
|
||||
public UpdateCurrentSewerViewModelCommand(INavigator navigator, IViewModelSewerMainFactory viewModelFactory)
|
||||
{
|
||||
_navigator = navigator;
|
||||
_viewModelFactory = viewModelFactory;
|
||||
}
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
if (parameter is ESewerWindowViewType)
|
||||
{
|
||||
ESewerWindowViewType viewType = (ESewerWindowViewType)parameter;
|
||||
_navigator.CurrentViewModel = _viewModelFactory.CreateViewModel(viewType);
|
||||
//throw new NotImplementedException(parameter.GetType().ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using DaSaSo.Domain.Enums;
|
||||
using DaSaSo.Wpf.ViewModel.Enums;
|
||||
using DaSaSo.Wpf.ViewModel.Interface;
|
||||
using System;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace DaSaSo.Wpf.ViewModel.Commands
|
||||
{
|
||||
class UpdateCurrentViewModelCommand : AsyncCommandBase
|
||||
{
|
||||
private INavigator _navigator;
|
||||
private readonly IViewModelAbstractFactory _viewModelFactory;
|
||||
|
||||
public UpdateCurrentViewModelCommand(INavigator navigator, IViewModelAbstractFactory viewModelFactory)
|
||||
{
|
||||
_navigator = navigator;
|
||||
_viewModelFactory = viewModelFactory;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public override async Task ExecuteAsync(object? parameter)
|
||||
{
|
||||
if(parameter is EMainWindowViewType)
|
||||
{
|
||||
EMainWindowViewType viewType = (EMainWindowViewType)parameter;
|
||||
_navigator.CurrentViewModel = _viewModelFactory.CreateViewModel(viewType);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user