private void AddButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { try { if (VornameTextBox.Text == "" || NachnameTextBox.Text == "" || AdresseTextBox.Text == "" || PlzTextBox.Text == "" || OrtTextBox.Text == "" || DatenschutzCheckbox.IsChecked == false) { throw new IsEmptyException(); } var plz = Convert.ToInt32(PlzTextBox.Text); var datenschutz = DatenschutzCheckbox.IsChecked == true; db.Add(new Kunde.Kunde(VornameTextBox.Text, NachnameTextBox.Text, AdresseTextBox.Text, plz, OrtTextBox.Text, TelefonNummerTextBox.Text, datenschutz)); //TODO:Ueberpruefung ob bereits ein Kunde mit den Werten vorhanden ist db.SaveChanges(); MessageBox.Show("Kunde angelegt!"); } catch (IsEmptyException) { MessageBox.Show("Alle Felder müssen ausgefüllt sein!"); } finally { db.Dispose(); } } }
protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); }
private void ZinsBerechnenButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { try { var selectedItem = (Konto.Konto)DataGrid.SelectedItem; if (DataGrid.SelectedItem == null) { throw new IsEmptyException(); } var zins = selectedItem.BerechneZins(); var result = MessageBox.Show($"Der Zinssatz Beträgt {zins} €, möchten sie ihn anwenden?", "Löschen", MessageBoxButton.YesNo); switch (result) { case MessageBoxResult.Yes: selectedItem.VerrechneZins(zins); var konto = db.KontoSet.Where(s => s == selectedItem).ToList(); foreach (var k in konto) { k.VerrechneZins(zins); } db.SaveChanges(); MessageBox.Show("Angewendet!!"); break; case MessageBoxResult.No: MessageBox.Show("Abgebrochen!!"); break; } } catch (IsEmptyException) { MessageBox.Show("Es wurde keine Item ausgewählt!"); } finally { db.Dispose(); } } }
private void EinzahlenButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { try { if (EmpfaengerKonotTextbox.Text == "" || BetragTextbox.Text == "") { throw new IsEmptyException(); } var betrag = Convert.ToDouble(BetragTextbox.Text); var g1 = db.KontoSet.Where(k => k.KontoNummer == EmpfaengerKonotTextbox.Text); foreach (var giro in g1) { giro.TransactionsList.Add(new Transaktion(betrag, giro.KontoNummer, Types.Einzahlung, "Einzahlung")); giro.Betrag += betrag; } db.SaveChanges(); MessageBox.Show($"{betrag}€ wurde in Konto {EmpfaengerKonotTextbox.Text} einbezahlt!"); ResetForm(); } catch (FormatException) { MessageBox.Show("Kontonummer Existiert nicht!"); } catch (IsEmptyException) { MessageBox.Show("Fehlende Angaben!!"); } finally { db.Dispose(); } } }
private void SelectionCombobox_OnSelectionChanged(object sender, SelectionChangedEventArgs e) { using (var db = new BankingContext()) { try { if (GiroItem.IsSelected) { var listing = db.GiroKontoSet.ToList(); DataGrid.ItemsSource = listing; } else if (FestgeldItem.IsSelected) { var listing = db.FestgeldKontoSet.ToList(); DataGrid.ItemsSource = listing; } else if (TagesgeldItem.IsSelected) { var listing = db.TagesgeldKontoSet.ToList(); DataGrid.ItemsSource = listing; } else if (SpargeldItem.IsSelected) { var listing = db.SparKontoSet.ToList(); DataGrid.ItemsSource = listing; } } catch (Exception exception) { MessageBox.Show(exception.ToString()); } finally { db.Dispose(); } } }
private void UpdateButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { if (GiroItem.IsSelected) { var objects = db.KontoSet.ToList(); var list = objects.Where(b => b.GetType() == typeof(GiroKonto)) .ToList(); //Muss gemacht werden da EFC aktuell kein durchsuchen nach Type erlaubt DataGrid.ItemsSource = list; } else if (FestgeldItem.IsSelected) { var objects = db.KontoSet.ToList(); var list = objects.Where(b => b.GetType() == typeof(FestgeldKonto)) .ToList(); //Muss gemacht werden da EFC aktuell kein durchsuchen nach Type erlaubt DataGrid.ItemsSource = list; } else if (TagesgeldItem.IsSelected) { var objects = db.KontoSet.ToList(); var list = objects.Where(b => b.GetType() == typeof(TagesgeldKonto)) .ToList(); //Muss gemacht werden da EFC aktuell kein durchsuchen nach Type erlaubt DataGrid.ItemsSource = list; } else if (SpargeldItem.IsSelected) { var objects = db.KontoSet.ToList(); var list = objects.Where(b => b.GetType() == typeof(SparKonto)) .ToList(); //Muss gemacht werden da EFC aktuell kein durchsuchen nach Type erlaubt DataGrid.ItemsSource = list; } db.Dispose(); } }
private void GenerateButton_OnClick(object sender, RoutedEventArgs e) { KontoauszugTextbox.Text = ""; using (var db = new BankingContext()) { try { if (KontoNummerTextbox.Text == "") { throw new NoTextException(); } var kontoList = db.TransaktionsSet.Where(s => s.Empfaenger == KontoNummerTextbox.Text); if (!kontoList.Any()) { throw new IsEmptyException(); } foreach (var t in kontoList) { KontoauszugTextbox.Text += t.ToString(); } } catch (IsEmptyException) { MessageBox.Show("Kontonummer Falsch!"); } catch (NoTextException) { MessageBox.Show("Es wurde keine Kontonummer eingegeben!"); } finally { db.Dispose(); } } }
public void Dispose() { _context.Dispose(); }
private void AuszahlenButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { try { if (BetragTextbox.Text == "" || KonotonummerTextbox.Text == "" || PinTextbox.Password == "") { throw new IsEmptyException(); } var correct = false; var betrag = Convert.ToDouble(BetragTextbox.Text) * -1; var g1 = db.KontoSet.Where(k => k.KontoNummer == KonotonummerTextbox.Text).ToList(); if (!g1.Any()) { throw new IsEmptyException(); } foreach (var k in g1) { if (Crypto.DecryptPin(k.Pin) == PinTextbox.Password) { //TODO:Kontouebeziehung beachten Wird spaeter Implementiert siehe Konto Klasse k.TransactionsList.Add(new Transaktion(betrag, k.KontoNummer, Types.Auszahlung, "Auszahlung")); k.Betrag += betrag; correct = true; } else { throw new FalsePinException(); } } if (correct) { db.SaveChanges(); MessageBox.Show($"{betrag * -1}€ wurde von Konto {KonotonummerTextbox.Text} ausbezahlt!"); ResetForm(); } } catch (IsEmptyException) { MessageBox.Show("Fehlende Informationen"); } catch (FalsePinException) { MessageBox.Show("Pin Falsch!!"); } catch (KontoIsEmptyException) { MessageBox.Show("Konto Kann nicht überzogen werden!"); } finally { db.Dispose(); } } }
private void UeberweisenButton_OnClick(object sender, RoutedEventArgs e) { using (var db = new BankingContext()) { try { if (EmpfaengerKonotTextbox.Text == "" || SenderKontoTextbox.Text == "" || BetragTextbox.Text == "") { throw new NoTextException(); } var betrag = Convert.ToDouble(BetragTextbox.Text); var g2 = db.KontoSet.Where(k => k.KontoNummer == EmpfaengerKonotTextbox.Text); var g1 = db.KontoSet.Where(k => k.KontoNummer == SenderKontoTextbox.Text); if (!g2.Any() || !g1.Any()) { throw new IsEmptyException(); } if (BeschreibungTextbox.Text == string.Empty) { foreach (var giro in g2) { giro.TransactionsList.Add(new Transaktion(betrag, EmpfaengerKonotTextbox.Text, Types.Ueberweisung, "Überweisung von: " + SenderKontoTextbox.Text)); giro.Betrag = giro.Betrag + betrag; } } else { foreach (var giro in g2) { giro.TransactionsList.Add(new Transaktion(betrag, EmpfaengerKonotTextbox.Text, Types.Ueberweisung, "Überweisung von: " + SenderKontoTextbox.Text + " Beschreibung: " + BeschreibungTextbox.Text)); giro.Betrag = giro.Betrag + betrag; } } betrag = betrag * -1; if (BeschreibungTextbox.Text == string.Empty) { foreach (var giro in g1) { giro.TransactionsList.Add(new Transaktion(betrag, SenderKontoTextbox.Text, Types.Ueberweisung, "")); giro.Betrag = giro.Betrag + betrag; } } else { foreach (var giro in g1) { giro.TransactionsList.Add(new Transaktion(betrag, SenderKontoTextbox.Text, Types.Ueberweisung, "Überweisung: " + BeschreibungTextbox.Text)); giro.Betrag = giro.Betrag + betrag; } } db.SaveChanges(); betrag = betrag * -1; MessageBox.Show( $"{betrag}€ wurde von Konto {SenderKontoTextbox.Text} nach {EmpfaengerKonotTextbox.Text} Konto überwiesen!"); ResetForm(); } catch (NoTextException) { MessageBox.Show("Fehlende Angaben!"); } catch (IsEmptyException) { MessageBox.Show("Empfänger- oder Senderkonto existieren nicht!"); } finally { db.Dispose(); } } }