using AidA.Data;
using AidA.Data.Entities;
using AidA.View;
using System.Windows;

namespace AidA
{
    /// <summary>
    /// Interaktionslogik für MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void MainTableView_Loaded(object sender, RoutedEventArgs e)
        {
            this.MainTableView.BestFitColumns();
        }

        private void Anonymisierungslaeufe_Click(object sender, RoutedEventArgs e)
        {
            var anonymisierungslaeufe = Database.GetAll<Anonymisierungslauf>();
            MainGridControl.ItemsSource = anonymisierungslaeufe;
            this.MainTableView.BestFitColumns();
        }

        private void Anonymisierungen_Click(object sender, RoutedEventArgs e)
        {
            var anonymisierungen = Database.GetAll<Anonymisierung>();
            MainGridControl.ItemsSource = anonymisierungen;
            this.MainTableView.BestFitColumns();
        }

        private void Antraege_Click(object sender, RoutedEventArgs e)
        {
            var antraege = Database.GetAll<Antrag>();
            MainGridControl.ItemsSource = antraege;
            //this.MainTableView.BestFitColumns();
        }

        private void AntragsStati_Click(object sender, RoutedEventArgs e)
        {
            var antragsStati = Database.GetAll<AntragsStatus>();
            MainGridControl.ItemsSource = antragsStati;
            this.MainTableView.BestFitColumns();
        }

        private void AntragsGegenstaende_Click(object sender, RoutedEventArgs e)
        {
            var antragsGegenstaende = Database.GetAll<AntragsGegenstand>();
            MainGridControl.ItemsSource = antragsGegenstaende;
            //this.MainTableView.BestFitColumns();
        }

        private void AntragsPersonenDaten_Click(object sender, RoutedEventArgs e)
        {
            var antragsPersonenDaten = Database.GetAll<AntragsPersonenDaten>();
            MainGridControl.ItemsSource = antragsPersonenDaten;
            //this.MainTableView.BestFitColumns();
        }

        private void Ansprechpartner_Click(object sender, RoutedEventArgs e)
        {
            var ansprechpartner = Database.GetAll<Ansprechpartner>();
            MainGridControl.ItemsSource = ansprechpartner;
            this.MainTableView.BestFitColumns();
        }

        private void Beratungsstellen_Click(object sender, RoutedEventArgs e)
        {
            var beratungsstellen = Database.GetAll<Beratungsstelle>();
            MainGridControl.ItemsSource = beratungsstellen;
            this.MainTableView.BestFitColumns();
        }

        private void KontaktInfos_Click(object sender, RoutedEventArgs e)
        {
            var kontaktInfos = Database.GetAll<KontaktInfo>();
            MainGridControl.ItemsSource = kontaktInfos;
            this.MainTableView.BestFitColumns();
        }

        private void FinanzTransaktionen_Click(object sender, RoutedEventArgs e)
        {
            var finanzTransaktionen = Database.GetAll<FinanzTransaktion>();
            MainGridControl.ItemsSource = finanzTransaktionen;
            //this.MainTableView.BestFitColumns();
        }

        private void ZahlungenSEPA_Click(object sender, RoutedEventArgs e)
        {
            var zahlungenSEPA = Database.GetAll<ZahlungSEPA>();
            MainGridControl.ItemsSource = zahlungenSEPA;
            this.MainTableView.BestFitColumns();
        }

        private void Kommunikationen_Click(object sender, RoutedEventArgs e)
        {
            var kommunikationen = Database.GetAll<Kommunikation>();
            MainGridControl.ItemsSource = kommunikationen;
            this.MainTableView.BestFitColumns();
        }

        private void Mitarbeiter_Click(object sender, RoutedEventArgs e)
        {
            var mitarbeiter = Database.GetAll<Mitarbeiter>();
            MainGridControl.ItemsSource = mitarbeiter;
            this.MainTableView.BestFitColumns();
        }

        private void AnonymisierungslaufVorbereiten_Click(object sender, RoutedEventArgs e)
        {
            MainController.AnonymisierungslaufVorbereiten1();
        }

        private void Anonymisierungsausnahmen_Click(object sender, RoutedEventArgs e)
        {
            MainController.AnonymisierungsAusnahmenBearbeiten();
        }

        private void DbSichern_Click(object sender, RoutedEventArgs e)
        {
            MainController.DatenbankSichern();
        }

        private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            MainController.AnwendungSchliessen();
        }
    }
}
