Gui neu angelegt
This commit is contained in:
146
StammGenerator/ViewModel/Schacht/ManholeEditViewModel.cs
Normal file
146
StammGenerator/ViewModel/Schacht/ManholeEditViewModel.cs
Normal file
@@ -0,0 +1,146 @@
|
||||
using SewerStammGen.Shared.Contracts;
|
||||
using SewerStammGen.Shared.Domain;
|
||||
using SewerStammGen.Shared.Enum;
|
||||
using StammGenerator.Interface;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace StammGenerator.ViewModel
|
||||
{
|
||||
public class ManholeEditViewModel : BaseViewModel
|
||||
{
|
||||
private readonly ISchachtDataService _schachtDataService;
|
||||
private readonly IRenavigator _renavigator;
|
||||
|
||||
private Schacht _model;
|
||||
|
||||
public ICommand Speichern { get; set; }
|
||||
|
||||
public string Objektbezeichnung
|
||||
{
|
||||
get
|
||||
{
|
||||
return _model.Objektbezeichnung;
|
||||
}
|
||||
set
|
||||
{
|
||||
if(_model.Objektbezeichnung != value)
|
||||
{
|
||||
_model.Objektbezeichnung = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal DeckelRechtsWert
|
||||
{
|
||||
get => _model.DeckelRechtsWert;
|
||||
set
|
||||
{
|
||||
if(_model.DeckelRechtsWert != value)
|
||||
{
|
||||
_model.DeckelRechtsWert = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal DeckelHochWert
|
||||
{
|
||||
get => _model.DeckelHochWert; set
|
||||
{
|
||||
if (_model.DeckelHochWert != value)
|
||||
{
|
||||
_model.DeckelHochWert = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal DeckelHoehe
|
||||
{
|
||||
get => _model.DeckelHoehe;
|
||||
set
|
||||
{
|
||||
if (_model.DeckelHoehe != value)
|
||||
{
|
||||
_model.DeckelHoehe = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal SohlHochWert
|
||||
{
|
||||
get => _model.SohlHochWert;
|
||||
set
|
||||
{
|
||||
if(_model.SohlHochWert != value)
|
||||
{
|
||||
_model.SohlHochWert = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public decimal SohlRechtsWert
|
||||
{
|
||||
get => _model.SohlRechtsWert;
|
||||
set
|
||||
{
|
||||
if(_model.SohlRechtsWert != value)
|
||||
{
|
||||
_model.SohlRechtsWert = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public decimal SohlHoehe
|
||||
{
|
||||
get => _model.SohlHoehe;
|
||||
set
|
||||
{
|
||||
if (_model.SohlHoehe != value)
|
||||
{
|
||||
_model.SohlHoehe = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
public EEntwaeserung Entwaeserung
|
||||
{
|
||||
get => _model.Entwaesserung;
|
||||
set
|
||||
{
|
||||
if (_model.Entwaesserung != value)
|
||||
{
|
||||
_model.Entwaesserung = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public ManholeEditViewModel(ISchachtDataService schachtDataService,IActualState actualState, IRenavigator renavigator)
|
||||
{
|
||||
_schachtDataService = schachtDataService;
|
||||
_model = actualState.SelectedSchacht;
|
||||
_renavigator = renavigator;
|
||||
|
||||
Speichern = new RelayCommand((x) => SaveSchacht());
|
||||
|
||||
}
|
||||
|
||||
public ManholeEditViewModel()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private async void SaveSchacht()
|
||||
{
|
||||
if (_model.Id == 0)
|
||||
{
|
||||
await _schachtDataService.Create(_model);
|
||||
}
|
||||
else
|
||||
{
|
||||
await _schachtDataService.Update(_model);
|
||||
}
|
||||
_renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
62
StammGenerator/ViewModel/Schacht/ManholeImportViewModel.cs
Normal file
62
StammGenerator/ViewModel/Schacht/ManholeImportViewModel.cs
Normal file
@@ -0,0 +1,62 @@
|
||||
using SewerStammGen.Shared.Contracts;
|
||||
using SewerStammGen.Shared.Domain;
|
||||
using SewerStammGen.Shared.Enum;
|
||||
using Shared.Contracts;
|
||||
using StammGenerator.Interface;
|
||||
using StammGenerator.Services;
|
||||
using System.Windows.Input;
|
||||
using WWTech_KanalSchnittstelle.Importer;
|
||||
|
||||
namespace StammGenerator.ViewModel
|
||||
{
|
||||
public class ManholeImportViewModel : BaseViewModel
|
||||
{
|
||||
private readonly ISchachtDataService schachtDataService;
|
||||
private readonly IRenavigator renavigator;
|
||||
private OpenFileDialogService fileDialogService;
|
||||
|
||||
private string filename = string.Empty;
|
||||
public string FileName
|
||||
{
|
||||
get => filename;
|
||||
set
|
||||
{
|
||||
if (filename == value) return;
|
||||
filename = value;
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public ICommand LoadFile { get; set; }
|
||||
public ICommand OpenFileDialogCommand { get; set; }
|
||||
|
||||
private readonly IImport importer;
|
||||
|
||||
public ManholeImportViewModel(ISchachtDataService schachtDataService, IRenavigator renavigator, IActualState actualState)
|
||||
{
|
||||
#if DEBUG
|
||||
FileName = @"C:\Users\damia\source\repos\Stammdatengenerator\Beispieldaten\Koordinatendatei.csv";
|
||||
#endif
|
||||
LoadFile = new RelayCommand((x) => importFile());
|
||||
this.schachtDataService = schachtDataService;
|
||||
|
||||
importer = new CSVImporter(actualState.ProjektID);
|
||||
this.renavigator = renavigator;
|
||||
this.fileDialogService = new OpenFileDialogService();
|
||||
this.OpenFileDialogCommand = new RelayCommand((x) =>
|
||||
{
|
||||
FileName = fileDialogService.OpenFileDialog();
|
||||
});
|
||||
}
|
||||
|
||||
private async void importFile()
|
||||
{
|
||||
var schaechte = importer.LoadSchaechte(FileName, EEntwaeserung.Mischwasser);
|
||||
if (schaechte != null)
|
||||
{
|
||||
await schachtDataService.InsertSchachtBulk(schaechte);
|
||||
}
|
||||
renavigator.Renavigate();
|
||||
}
|
||||
}
|
||||
}
|
||||
64
StammGenerator/ViewModel/Schacht/ManholeListViewModel.cs
Normal file
64
StammGenerator/ViewModel/Schacht/ManholeListViewModel.cs
Normal file
@@ -0,0 +1,64 @@
|
||||
using SewerStammGen.Shared.Contracts;
|
||||
using SewerStammGen.Shared.Domain;
|
||||
using StammGenerator.Commands;
|
||||
using StammGenerator.Interface;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Windows.Input;
|
||||
|
||||
namespace StammGenerator.ViewModel
|
||||
{
|
||||
public class ManholeListViewModel : BaseViewModel
|
||||
{
|
||||
private readonly ISchachtDataService _schachtDataService;
|
||||
private readonly ObservableCollection<Schacht> _schaechte;
|
||||
private readonly IActualState _actualState;
|
||||
private readonly IRenavigator renavigateToImport;
|
||||
|
||||
public ObservableCollection<Schacht> Schaechte { get => _schaechte; }
|
||||
|
||||
public Schacht? SelectedSchacht { get; set; }
|
||||
|
||||
public ICommand AddSchachtCommand { get; set; }
|
||||
public ICommand EditSchachtCommand { get; set; }
|
||||
public ICommand DeleteSchachtCommand { get; set; }
|
||||
public ICommand ImportSchachtCommand { get; set; }
|
||||
|
||||
|
||||
|
||||
public ManholeListViewModel(ISchachtDataService schachtDataService, IRenavigator renavigator ,IActualState actualState, IRenavigator navigatetoImport)
|
||||
{
|
||||
_schachtDataService = schachtDataService;
|
||||
_actualState = actualState;
|
||||
|
||||
_schaechte = new ObservableCollection<Schacht>();
|
||||
renavigateToImport = navigatetoImport;
|
||||
|
||||
AddSchachtCommand = new SchachtAddCommand(actualState,renavigator);
|
||||
EditSchachtCommand = new SchachtEditCommand(actualState, renavigator,this);
|
||||
DeleteSchachtCommand = new SchachtDeleteCommand(schachtDataService, actualState, renavigator, this);
|
||||
ImportSchachtCommand = new RelayCommand((x) =>
|
||||
{
|
||||
navigatetoImport.Renavigate();
|
||||
});
|
||||
|
||||
|
||||
LoadSchaechte();
|
||||
}
|
||||
|
||||
private async void LoadSchaechte()
|
||||
{
|
||||
var schaechte = await _schachtDataService.GetAllByProjekt(_actualState.ProjektID);
|
||||
InitCollection(_schaechte, schaechte);
|
||||
}
|
||||
|
||||
private void InitCollection(ObservableCollection<Schacht> dest, IEnumerable<Schacht> source)
|
||||
{
|
||||
dest.Clear();
|
||||
foreach(var i in source)
|
||||
{
|
||||
dest.Add(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
12
StammGenerator/ViewModel/Schacht/TestHole.cs
Normal file
12
StammGenerator/ViewModel/Schacht/TestHole.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace StammGenerator.ViewModel
|
||||
{
|
||||
public class TestHole : BaseViewModel
|
||||
{
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user