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 @@ - + + + + +