From 6abd8f663a5b4613c7edd0370808b8e791c1848a Mon Sep 17 00:00:00 2001 From: Husky Date: Sun, 29 Mar 2020 14:15:14 +0200 Subject: [PATCH] =?UTF-8?q?Sch=C3=A4denedit=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Interfaces/UI/ISchaedenEditViewModel.cs | 15 ++++ KanSan.ViewModel/KanSan.ViewModel.csproj | 4 + KanSan.ViewModel/SchaedenEditViewModel.cs | 82 +++++++++++++++++++ KanSan/App.xaml | 19 +++-- KanSan/KanSan.csproj.user | 6 ++ .../SchaedenEditViewModelSampleData.cs | 16 ++++ KanSan/UI/Schäden/UCSchaedenEdit.xaml | 38 +++++++++ KanSan/UI/Schäden/UCSchaedenEdit.xaml.cs | 26 ++++++ KanSan/UI/Schäden/UCSchaedenList.xaml | 7 +- KanSan/UI/UCSewerMainMenu.xaml.cs | 5 +- 10 files changed, 207 insertions(+), 11 deletions(-) create mode 100644 KanSan.Base/Interfaces/UI/ISchaedenEditViewModel.cs create mode 100644 KanSan.ViewModel/SchaedenEditViewModel.cs create mode 100644 KanSan/SampleData/SchaedenEditViewModelSampleData.cs create mode 100644 KanSan/UI/Schäden/UCSchaedenEdit.xaml create mode 100644 KanSan/UI/Schäden/UCSchaedenEdit.xaml.cs diff --git a/KanSan.Base/Interfaces/UI/ISchaedenEditViewModel.cs b/KanSan.Base/Interfaces/UI/ISchaedenEditViewModel.cs new file mode 100644 index 0000000..bac3d93 --- /dev/null +++ b/KanSan.Base/Interfaces/UI/ISchaedenEditViewModel.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.Base.Interfaces.UI +{ + public interface ISchaedenEditViewModel + { + decimal Entfernung { get; set; } + bool WurzelInkrustationAblagerungen { get; set; } + bool RissBruchScherbe { get; set; } + bool EinragendeStutzen { get; set; } + string Sanierungstyp { get; set; } + } +} diff --git a/KanSan.ViewModel/KanSan.ViewModel.csproj b/KanSan.ViewModel/KanSan.ViewModel.csproj index ce73efd..56ad98f 100644 --- a/KanSan.ViewModel/KanSan.ViewModel.csproj +++ b/KanSan.ViewModel/KanSan.ViewModel.csproj @@ -22,6 +22,10 @@ + + + + diff --git a/KanSan.ViewModel/SchaedenEditViewModel.cs b/KanSan.ViewModel/SchaedenEditViewModel.cs new file mode 100644 index 0000000..404a20b --- /dev/null +++ b/KanSan.ViewModel/SchaedenEditViewModel.cs @@ -0,0 +1,82 @@ +using KanSan.Base; +using KanSan.Base.Enums; +using KanSan.Base.Interfaces; +using KanSan.Base.Interfaces.UI; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Text; + +namespace KanSan.ViewModel +{ + public class SchaedenEditViewModel : PropertyChangedClass, INotifyPropertyChanged, ISchaedenEditViewModel + { + IUnitOfWork unitOfWork = new UnitOfWork(new KanSanContext()); + decimal entfernung; + bool wurzelInkrustation; + bool rissbruchscherbe; + bool einragendeStutzen; + ESanierung sanierungstyp; + + #region GetSetters + public decimal Entfernung + { + get => entfernung; + set + { + if (entfernung == value) return; + entfernung = value; + OnPropertyChanged(); + } + } + public bool WurzelInkrustationAblagerungen + { + get => wurzelInkrustation; + set + { + if (wurzelInkrustation == value) return; + wurzelInkrustation = value; + OnPropertyChanged(); + } + } + public bool RissBruchScherbe + { + get => rissbruchscherbe; + set + { + if (rissbruchscherbe == value) return; + rissbruchscherbe = value; + OnPropertyChanged(); + } + } + public bool EinragendeStutzen + { + get => einragendeStutzen; + set + { + if (einragendeStutzen == value) return; + einragendeStutzen = value; + OnPropertyChanged(); + } + } + public string Sanierungstyp + { + get + { + switch(sanierungstyp) + { + case ESanierung.ERNEUERUNG: return "Offene Bauweise"; + case ESanierung.RENOVATION: return "Renovation"; + case ESanierung.REPERATUR: return "Reperatur"; + default: return "Unbekannt"; + + } + } + set + { + throw new NotImplementedException(); + } + } + #endregion + } +} diff --git a/KanSan/App.xaml b/KanSan/App.xaml index 66677b9..6ba3ce5 100644 --- a/KanSan/App.xaml +++ b/KanSan/App.xaml @@ -5,14 +5,17 @@ xmlns:local="clr-namespace:KanSan" StartupUri="MainWindow.xaml"> - + - + + + + diff --git a/KanSan/KanSan.csproj.user b/KanSan/KanSan.csproj.user index 44005ca..e614783 100644 --- a/KanSan/KanSan.csproj.user +++ b/KanSan/KanSan.csproj.user @@ -40,6 +40,9 @@ Code + + Code + Code @@ -84,6 +87,9 @@ Designer + + Designer + Designer diff --git a/KanSan/SampleData/SchaedenEditViewModelSampleData.cs b/KanSan/SampleData/SchaedenEditViewModelSampleData.cs new file mode 100644 index 0000000..7c7bac7 --- /dev/null +++ b/KanSan/SampleData/SchaedenEditViewModelSampleData.cs @@ -0,0 +1,16 @@ +using KanSan.Base.Interfaces.UI; +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.SampleData +{ + class SchaedenEditViewModelSampleData : ISchaedenEditViewModel + { + public decimal Entfernung { get => 0.4m; set => throw new NotImplementedException(); } + public bool WurzelInkrustationAblagerungen { get => true; set => throw new NotImplementedException(); } + public bool RissBruchScherbe { get => false; set => throw new NotImplementedException(); } + public bool EinragendeStutzen { get => true; set => throw new NotImplementedException(); } + public string Sanierungstyp { get => "REPERATUR"; set => throw new NotImplementedException(); } + } +} diff --git a/KanSan/UI/Schäden/UCSchaedenEdit.xaml b/KanSan/UI/Schäden/UCSchaedenEdit.xaml new file mode 100644 index 0000000..ede6eda --- /dev/null +++ b/KanSan/UI/Schäden/UCSchaedenEdit.xaml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/KanSan/UI/Schäden/UCSchaedenEdit.xaml.cs b/KanSan/UI/Schäden/UCSchaedenEdit.xaml.cs new file mode 100644 index 0000000..392b6ba --- /dev/null +++ b/KanSan/UI/Schäden/UCSchaedenEdit.xaml.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace KanSan.UI +{ + /// + /// Interaktionslogik für UCSchaedenEdit.xaml + /// + public partial class UCSchaedenEdit : UserControl + { + public UCSchaedenEdit() + { + InitializeComponent(); + } + } +} diff --git a/KanSan/UI/Schäden/UCSchaedenList.xaml b/KanSan/UI/Schäden/UCSchaedenList.xaml index 7e247a5..28e5ddb 100644 --- a/KanSan/UI/Schäden/UCSchaedenList.xaml +++ b/KanSan/UI/Schäden/UCSchaedenList.xaml @@ -18,7 +18,11 @@ - + + + + +