AquaCare/AquaCare.View/PflegeWindow.axaml.cs
2025-05-13 23:31:28 +02:00

70 lines
2.4 KiB
C#

using Avalonia.Controls;
using Avalonia.Interactivity;
using AquaCare.Persistence;
using System;
namespace AquaCare.View
{
public partial class PflegeWindow : Window
{
private readonly Datenbank _datenbank;
public PflegeWindow()
{
InitializeComponent();
_datenbank = new Datenbank();
}
private void SaveClick(object? sender, RoutedEventArgs e)
{
try
{
if (DatumPicker.SelectedDate.HasValue &&
double.TryParse(TemperaturTextBox.Text, out double temperatur) &&
double.TryParse(PHWertTextBox.Text, out double phWert) &&
double.TryParse(NitratTextBox.Text, out double nitrat))
{
if (temperatur < 0 || phWert < 0 || nitrat < 0)
{
Console.WriteLine("Fehler: Werte dürfen nicht negativ sein.");
return;
}
_datenbank.AddValue(DatumPicker.SelectedDate.Value.DateTime, temperatur, phWert, nitrat, 0.0);
Console.WriteLine("Erfolg: Werte erfolgreich gespeichert.");
// Eingabefelder zurücksetzen
DatumPicker.SelectedDate = null;
TemperaturTextBox.Text = string.Empty;
PHWertTextBox.Text = string.Empty;
NitratTextBox.Text = string.Empty;
}
else
{
Console.WriteLine("Fehler: Bitte alle Felder korrekt ausfüllen.");
}
}
catch (Exception ex)
{
Console.WriteLine($"Fehler beim Speichern der Werte: {ex.Message}");
}
}
private void CancelClick(object? sender, RoutedEventArgs e)
{
Console.WriteLine("Möchten Sie das Fenster wirklich schließen? (Ja/Nein)");
// Simuliere eine Benutzeraktion (z. B. durch eine UI-Komponente oder Konsoleninteraktion)
bool userConfirmed = true; // Setze dies basierend auf der Benutzeraktion
if (userConfirmed)
{
this.Close(); // Fenster schließen
}
else
{
Console.WriteLine("Schließen des Fensters abgebrochen.");
}
}
}
}