Verzeichnisse umgeräumt

This commit is contained in:
2023-04-13 09:24:40 +02:00
parent 1d649d14cb
commit 047e036442
99 changed files with 8 additions and 1930 deletions

View 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 SewerStammGen.WPF.Commands
{
internal 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);
}
}

View File

@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class HaltungAddCommand : AsyncCommandBase
{
public HaltungAddCommand()
{
}
public override Task ExecuteAsync(object? parameter)
{
throw new NotImplementedException();
}
}
}

View File

@@ -0,0 +1,35 @@
using SewerStammGen.Shared.Contracts;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class HaltungEditCommand : AsyncCommandBase
{
private IActualState actualState;
private IRenavigator renavigator;
private HaltungListViewModel haltungListViewModel;
public HaltungEditCommand(IActualState actualState, IRenavigator renavigator, HaltungListViewModel haltungListViewModel)
{
this.actualState = actualState;
this.renavigator = renavigator;
this.haltungListViewModel = haltungListViewModel;
}
public override async Task ExecuteAsync(object? parameter)
{
//actualState.SetHaltung(haltungListViewModel.SelectedHaltung);
renavigator.Renavigate();
}
}
}

View File

@@ -0,0 +1,38 @@
using SewerStammGen.Shared.Contracts;
using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.ViewModel;
using Shared.Contracts;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class HaltungEditSaveCommand : AsyncCommandBase
{
private HaltungEditViewModel haltungEditViewModel;
private IDataService<Kanal> kanalDataService;
public HaltungEditSaveCommand(HaltungEditViewModel haltungEditViewModel)
{
this.haltungEditViewModel = haltungEditViewModel;
//this.kanalDataService = kanalDataService;
}
public override async Task ExecuteAsync(object? parameter)
{
if(haltungEditViewModel._oberePunkt != haltungEditViewModel.Model.StartSchacht.Objektbezeichnung)
{
//Schacht s = await schachtService.FindSchachtByNameAndProjektID(haltungEditViewModel._oberePunkt, haltungEditViewModel.Model.Projekt.Id);
//haltungEditViewModel.Model.StartSchacht = s;
}
//haltungEditViewModel.Model = await kanalDataService.Update(haltungEditViewModel.Model.Id, haltungEditViewModel.Model);
Trace.WriteLine("Daten gespeichert");
}
}
}

View File

@@ -0,0 +1,44 @@
using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class ProjektAddCommand : AsyncCommandBase
{
private readonly IActualState _actualState;
private readonly IDataService<Projekt> _generic;
private readonly IRenavigator _renavigator;
public ProjektAddCommand(IDataService<Projekt> generic, IActualState actualState, IRenavigator renavigator)
{
_renavigator = renavigator;
_generic = generic;
_actualState = actualState;
}
public override async Task ExecuteAsync(object? parameter)
{
Projekt newProjekt = new Projekt()
{
Erstelldatum = "",
Strasse = "",
Ort = "",
Projektname = "",
Auftraggeber = new Auftraggeber(),
Schaechte = new List<Schacht>(),
Kanaele = new List<Kanal>()
};
//newProjekt = await _generic.Create(newProjekt);
_actualState.SetProjekt(newProjekt);
_renavigator.Renavigate();
}
}
}

View File

@@ -0,0 +1,35 @@
using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
using System.Runtime.CompilerServices;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class ProjektEditCommand : AsyncCommandBase
{
private IDataService<Projekt> _dataService;
private IActualState _actualState;
private IRenavigator _renavigator;
private ProjektListViewModel _projektListViewModel;
public ProjektEditCommand(IDataService<Projekt> dataService, IActualState actualState, IRenavigator renavigator, ProjektListViewModel projektListViewModel)
{
_dataService = dataService;
_actualState = actualState;
_renavigator = renavigator;
_projektListViewModel = projektListViewModel;
}
public override async Task ExecuteAsync(object? parameter)
{
_actualState.SetProjekt(_projektListViewModel.SelectedProjekt);
_renavigator.Renavigate();
}
}
}

View File

@@ -0,0 +1,25 @@
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using System;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal class ProjektSelectCommand : AsyncCommandBase
{
private readonly IActualState _actualState;
private readonly ProjektListViewModel _projektListViewModel;
public ProjektSelectCommand(IActualState actualState, ProjektListViewModel projektListViewModel)
{
_actualState = actualState;
_projektListViewModel = projektListViewModel;
}
public override async Task ExecuteAsync(object? parameter)
{
if (_projektListViewModel.SelectedProjekt == null) return;
_actualState.SetProjekt(_projektListViewModel.SelectedProjekt);
}
}
}

View File

@@ -0,0 +1,36 @@
using SewerStammGen.Shared.Contracts;
using SewerStammGen.Shared.Domain;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel.State;
using Shared.Contracts;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
class SchachtAddCommand : AsyncCommandBase
{
private readonly IActualState actualState;
private readonly IRenavigator renavigator;
private readonly IDataService<Projekt> projektService;
public SchachtAddCommand(IDataService<Projekt> projektService, IActualState actualState, IRenavigator renavigator)
{
this.actualState = actualState;
this.renavigator = renavigator;
this.projektService = projektService;
}
public override async Task ExecuteAsync(object? parameter)
{
Projekt aktuelleProjekt = await projektService.Get(actualState.ProjektID);
// Schacht schacht = await schachtService.CreateSchacht(aktuelleProjekt);
}
}
}

View File

@@ -0,0 +1,33 @@
using SewerStammGen.Shared.Contracts;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
class SchachtDeleteCommand : AsyncCommandBase
{
private ISchachtDataService schachtService;
private IActualState actualState;
private IRenavigator renavigator;
private ManholeListViewModel manholeListViewModel;
public SchachtDeleteCommand(ISchachtDataService schachtService, IActualState actualState, IRenavigator renavigator, ManholeListViewModel manholeListViewModel)
{
this.schachtService = schachtService;
this.actualState = actualState;
this.renavigator = renavigator;
this.manholeListViewModel = manholeListViewModel;
}
public override Task ExecuteAsync(object? parameter)
{
throw new NotImplementedException();
}
}
}

View File

@@ -0,0 +1,34 @@
using SewerStammGen.Shared.Contracts;
using SewerStammGen.WPF.Interface.Navigator;
using SewerStammGen.WPF.ViewModel;
using SewerStammGen.WPF.ViewModel.State;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
class SchachtEditCommand : AsyncCommandBase
{
private ISchachtDataService schachtService;
private IActualState actualState;
private IRenavigator renavigator;
private ManholeListViewModel manholeListViewModel;
public SchachtEditCommand(ISchachtDataService schachtService, IActualState actualState, IRenavigator renavigator, ManholeListViewModel manholeListViewModel)
{
this.schachtService = schachtService;
this.actualState = actualState;
this.renavigator = renavigator;
this.manholeListViewModel = manholeListViewModel;
}
public override async Task ExecuteAsync(object? parameter)
{
actualState.SetSchacht(manholeListViewModel.SelectedSchacht);
renavigator.Renavigate();
}
}
}

View File

@@ -0,0 +1,32 @@
using SewerStammGen.Enum;
using SewerStammGen.WPF.Interface;
using SewerStammGen.WPF.Interface.Navigator;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace SewerStammGen.WPF.Commands
{
internal 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);
}
}
}
}