Exemple #1
0
 /// <summary>
 /// Datum zurücksetzen
 /// </summary>
 public void resetDateRange()
 {
     // Zeige standardmäßig alle Buchungen des jeweiligen Kontos vom letzten Kassenschluss bis jetzt an
     this.dateFrom = BookingsHelper.getDateOfLastCashClosure();
     this.dateTo   = BookingsHelper.makeDateGreat(DateTime.Today);
     this.datePickerFrom.SelectedDate = this.dateFrom;
     this.datePickerTo.SelectedDate   = this.dateTo;
 }
Exemple #2
0
        /// <summary>
        /// Datum "Bis" aktualisieren
        /// </summary>
        /// <param name="dateTo">Datum "bis"</param>
        private void dateToProcessingFunction(DateTime dateTo)
        {
            this.dateTo = BookingsHelper.makeDateGreat(dateTo);

            // Filtere nach Datum
            List <BookingDataGridModel> bookingModels = this.bookingModelsUnchanged.Where(b => this.dateFrom < b.date && b.date < this.dateTo).ToList();

            // Filtere Buchungen nach ausgewähltem Konto
            bookingModels = filterBookingModels(bookingModels);
            refreshDataGrid(bookingModels);

            refreshDataGrid(bookingModels.ToList());
        }
        /// <summary>
        /// Setzt in der GUI die Ausgaben dieses und des letzten Jahres.
        /// </summary>
        private void SetExpenses()
        {
            CashClosureHelper helper = new CashClosureHelper(false);
            int currentYear          = DateTime.Now.Year;

            //Expenses of this year
            DateTime from = BookingsHelper.makeDateSmall(new DateTime(currentYear, 1, 1));
            DateTime to   = BookingsHelper.makeDateGreat(DateTime.Today);

            expensesThisYear = helper.getAllExpensesForPeriod(from, to);

            //Expenses of last year
            from             = BookingsHelper.makeDateSmall(new DateTime(currentYear - 1, 1, 1));
            to               = BookingsHelper.makeDateGreat(new DateTime(currentYear - 1, 12, 31));
            expensesLastYear = helper.getAllExpensesForPeriod(from, to);

            lExpensesThisYear.Content = SafeStringParser.safeParseToMoney(expensesThisYear, true);
            lExpensesLastYear.Content = SafeStringParser.safeParseToMoney(expensesLastYear, true);
        }
Exemple #4
0
        /// <summary>
        /// Methode welche für das Filtern der Ausweisinhaber verantwortlich ist.
        /// Diese filtert, je nach ausgewählten Attributen, die Ausweisinhaber und fügt sie dem DataGrid zu.
        /// </summary>
        private void filterPassHolder()
        {
            //Alle Ausweisinhaber holen.
            IEnumerable <Person> filteredPersons = Person.GetPersons();

            //Nach Status filtern.
            switch (cbStatus.Text)
            {
            case "Aktiv":
                filteredPersons = filteredPersons.Where(p => p.IsActive);
                break;

            case "Inaktiv":
                filteredPersons = filteredPersons.Where(p => p.IsActive == false);
                break;

            case "Alle":
                //filteredPersons stays the same;
                break;
            }

            //Nach dem ausgewähltem Attribut filtern.
            switch (cbOther.Text)
            {
            case "Wohnort":
                string city = ((TextBox)wPDynamicContent[0]).Text;
                filteredPersons = filteredPersons.Where(p => p.City == city);
                break;

            case "Postleitzahl":
                // FormatException abfangen
                try
                {
                    int zipCode = Convert.ToInt32(((TextBox)wPDynamicContent[0]).Text);
                    filteredPersons = filteredPersons.Where(p => p.ZipCode == zipCode);
                }
                catch
                {
                    MessageBox.Show("Bitte geben Sie ein korrekte Postleitzahl ein!", "Fehlerhafte Postleitzahl", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                break;

            case "Staatsangehörigkeit":
                string nationality = ((TextBox)wPDynamicContent[0]).Text;
                filteredPersons = filteredPersons.Where(p => p.Nationality == nationality);
                break;

            case "Alter":
                string fromString = ((ComboBox)wPDynamicContent[1]).Text;
                string toString   = ((ComboBox)wPDynamicContent[3]).Text;
                //Falls nichts ausgewählt wurde -> Fehler zeigen.
                if (fromString == "" || toString == "")
                {
                    MessageBox.Show("Bitte wählen Sie ein Alter aus!", "Fehlendes Alter", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                int from = Convert.ToInt32(fromString);
                int to   = Convert.ToInt32(toString);
                filteredPersons = filteredPersons.Where(p => (p.Age >= from) && (p.Age <= to));
                break;

            case "Ausweisgültigkeit bis max.":
                try
                {
                    DateTime?end = ((DatePicker)wPDynamicContent[0]).SelectedDate;
                    filteredPersons = filteredPersons.Where(p => p.ValidityEnd.CompareTo(end) <= 0);
                }
                catch
                {
                    MessageBoxEnhanced.Error(IniParser.GetSetting("ERRORMSG", "common"));
                }

                break;

            case "Familienstand":
                string state = ((ComboBox)wPDynamicContent[0]).Text;
                filteredPersons = filteredPersons.Where(p => p.FamilyState.Name == state);
                break;

            case "Anzahl Kinder":
                string fromAgeString = ((ComboBox)wPDynamicContent[1]).Text;    //wPDynamicContent[0] und ...[2] sind die Label "von" und "bis"
                string toAgeString   = ((ComboBox)wPDynamicContent[3]).Text;
                //Falls nichts ausgewählt wurde -> Fehler zeigen.
                if (fromAgeString == "" || toAgeString == "")
                {
                    MessageBox.Show("Bitte wählen Sie eine Anzahl aus!", "Fehlende Anzahl", MessageBoxButton.OK, MessageBoxImage.Error);
                    return;
                }
                int fromAge = Convert.ToInt32(fromAgeString);
                int toAge   = Convert.ToInt32(toAgeString);
                filteredPersons = filteredPersons.Where(p => (p.NumberOfChildren >= fromAge) && (p.NumberOfChildren <= toAge));
                break;

            case "Letzter Einkauf":
                DateTime?fromDate = ((DatePicker)wPDynamicContent[1]).SelectedDate;
                DateTime?toDate   = ((DatePicker)wPDynamicContent[3]).SelectedDate;
                toDate          = BookingsHelper.makeDateGreat(toDate.Value);
                filteredPersons = filteredPersons.Where(p => (p.LastPurchase.GetValueOrDefault().CompareTo(fromDate) >= 0) && (p.LastPurchase.GetValueOrDefault().CompareTo(toDate) <= 0));
                break;
            }

            //Ergebnis dem DataGrid zuführen.
            dGAnyStatistics.ItemsSource = filteredPersons;
        }