From 1d335663baccc22a143b531d91d32321ad220e54 Mon Sep 17 00:00:00 2001 From: Tikkinger Date: Thu, 19 Jun 2025 09:33:30 +0200 Subject: [PATCH] logik im controller --- AquaCare.Controller/PflegeController.cs | 46 +++++++++++++++ .../net9.0/AquaCare.Persistence.assets.cache | Bin 9108 -> 9108 bytes AquaCare.View/PflegeWindow.axaml.cs | 54 ++++++++++-------- AquaCare.View/obj/Debug/net9.0/apphost.exe | Bin 145920 -> 145920 bytes 4 files changed, 76 insertions(+), 24 deletions(-) create mode 100644 AquaCare.Controller/PflegeController.cs diff --git a/AquaCare.Controller/PflegeController.cs b/AquaCare.Controller/PflegeController.cs new file mode 100644 index 0000000..e5ef6c3 --- /dev/null +++ b/AquaCare.Controller/PflegeController.cs @@ -0,0 +1,46 @@ +using AquaCare.Model; +using AquaCare.Persistence; + +namespace AquaCare.Controller +{ + public class PflegeController + { + private readonly Datenbank _db; + + public PflegeController(Datenbank db) + { + _db = db; + } + + public bool SavePflegeTask(DateTime datum, bool gefuettert, bool filterReinigen, + bool wasserWechseln, double temperatur, double phWert, double nitrat, double ammoniak) + { + try + { + var wert = new Werte + { + Datum = datum, + Gefuettert = gefuettert, + FilterReinigen = filterReinigen, + WasserWechseln = wasserWechseln, + Temperatur = temperatur, + PhWert = phWert, + Nitrat = nitrat, + Ammoniak = ammoniak + }; + + _db.AddValue(wert); + return true; + } + catch + { + return false; + } + } + + public List GetAllWerte() + { + return _db.GetValuesAsObjects(); + } + } +} \ No newline at end of file diff --git a/AquaCare.Persistence/obj/Debug/net9.0/AquaCare.Persistence.assets.cache b/AquaCare.Persistence/obj/Debug/net9.0/AquaCare.Persistence.assets.cache index a4cf7dd84074b61557ca667723e7b21e4f09abbe..4810f54e97b766394c2603c1ef455298ae4b4686 100644 GIT binary patch delta 49 zcmbQ@KE+)lz}wxChk=2iI4wc5+iuZe_l+~po1ZwE80Mg6!G6Ff)cke9N?F~`%#9j3 F$^f#Z5<~z1 delta 49 zcmV-10M7rEN0dh>P)kQa3;+NCIgK>9!6dBW0OeIXdL*c6qx4$a#9?kD1uaDgu0+<) Hu_$aK!nhMx diff --git a/AquaCare.View/PflegeWindow.axaml.cs b/AquaCare.View/PflegeWindow.axaml.cs index 47df4af..0f2e246 100644 --- a/AquaCare.View/PflegeWindow.axaml.cs +++ b/AquaCare.View/PflegeWindow.axaml.cs @@ -1,3 +1,4 @@ +using AquaCare.Controller; using Avalonia.Controls; using Avalonia.Interactivity; using Avalonia.Markup.Xaml; @@ -9,12 +10,12 @@ namespace AquaCare.View { public partial class PflegeWindow : Window { - private readonly Datenbank _datenbank; + private readonly PflegeController _controller; public PflegeWindow() { InitializeComponent(); - _datenbank = new Datenbank(); + _controller = new PflegeController(new Datenbank()); } private void InitializeComponent() @@ -38,30 +39,35 @@ namespace AquaCare.View return; } - var neuerWert = new Werte + var success = _controller.SavePflegeTask( + DatumPicker.SelectedDate.Value.DateTime, + GefuettertCheckBox.IsChecked ?? false, + FilterReinigenCheckBox.IsChecked ?? false, + WasserWechselnCheckBox.IsChecked ?? false, + temperatur, + phWert, + nitrat, + ammoniak + ); + + if (success) { - Datum = DatumPicker.SelectedDate.Value.DateTime, - Gefuettert = GefuettertCheckBox.IsChecked ?? false, - FilterReinigen = FilterReinigenCheckBox.IsChecked ?? false, - WasserWechseln = WasserWechselnCheckBox.IsChecked ?? false, - Temperatur = temperatur, - PhWert = phWert, - Nitrat = nitrat, - Ammoniak = ammoniak - }; + Console.WriteLine("Erfolg: Werte erfolgreich gespeichert."); - _datenbank.AddValue(neuerWert); - Console.WriteLine("Erfolg: Werte erfolgreich gespeichert."); - - // Eingabefelder zurücksetzen - DatumPicker.SelectedDate = null; - GefuettertCheckBox.IsChecked = false; - FilterReinigenCheckBox.IsChecked = false; - WasserWechselnCheckBox.IsChecked = false; - TemperaturBox.Text = string.Empty; - PhBox.Text = string.Empty; - NitratBox.Text = string.Empty; - AmmoniakBox.Text = string.Empty; + // Eingabefelder zurücksetzen + DatumPicker.SelectedDate = null; + GefuettertCheckBox.IsChecked = false; + FilterReinigenCheckBox.IsChecked = false; + WasserWechselnCheckBox.IsChecked = false; + TemperaturBox.Text = string.Empty; + PhBox.Text = string.Empty; + NitratBox.Text = string.Empty; + AmmoniakBox.Text = string.Empty; + } + else + { + Console.WriteLine("Fehler: Werte konnten nicht gespeichert werden."); + } } else { diff --git a/AquaCare.View/obj/Debug/net9.0/apphost.exe b/AquaCare.View/obj/Debug/net9.0/apphost.exe index 289184f7a7ab0efc7fbfec6ac03c49ca52c5de2d..42106ff43e9e0c6d6852d170e0e523890c6ef59e 100644 GIT binary patch delta 99 zcmZqp!qEUkEsR^33{3rv7*ZLG7!ny$7)%%}fusRLGLUZwq>UNUfZ}Nk=3u@VP|OU- g0;w}&NCK(?VI!a(OQ47;5Sjt?m~5{%Wol#r0QUnC+yDRo delta 99 zcmWlQ(G7qg3StyXk0@~9LdDR9KbW}Pw#s5?J9dUxASq%>X}iivL+=( i?HaUbgL-&@1sV760?xw<)+h`T=n7ThJ3U8qXZr!r(h*?*