public Anfrage(Inquiry inquiry)
        {
            BaseAnfrage = inquiry;
            if (inquiry is null)
            {
                return;
            }

            MailtextAnzeigenCommand = new DelegateCommand(MailtextAnzeigen);

            foreach (var x in BaseAnfrage.RednerVortrag)
            {
                Redner.Add(new AnfrageDetail(this, x.Key, x.Value));
            }
        }
Exemple #2
0
        public void ApplyFilter()
        {
            var firstWeekOfYear = Helper.GetFirstWeekOfYear(CurrentYear);
            //Jahr
            List <Outside> list = DataContainer.ExternerPlan.Where(x => x.Kw >= firstWeekOfYear).ToList();
            //ToDo2: interne sind auch externe!!!
            var listIntern = DataContainer.MeinPlan.Where(x => x.Kw >= firstWeekOfYear && x.Status == EventStatus.Zugesagt).Cast <Invitation>().Where(x => x.Ältester.Versammlung == DataContainer.MeineVersammlung);

            if (!History)
            {
                list       = list.Where(x => x.Kw >= Helper.CurrentWeek).ToList();
                listIntern = listIntern.Where(x => x.Kw >= Helper.CurrentWeek);
            }

            foreach (var item in listIntern)
            {
                list.Add(new Outside()
                {
                    Ältester    = item.Ältester,
                    Versammlung = DataContainer.MeineVersammlung,
                    Kw          = item.Kw,
                    Reason      = OutsideReason.Talk,
                    Vortrag     = item.Vortrag
                });
            }

            //Person
            if (Redner.Any(x => x.IsChecked == false))
            {
                var list2 = list.Join(Redner,
                                      li => li.Ältester.Name,
                                      fi => fi.Content.ToString(),
                                      (li, fi) => new { Redner = li, fi.IsChecked }).Where(x => x.IsChecked == true).Select(x => x.Redner).OrderBy(x => x.Kw);
                Talks = new ObservableCollection <Outside>(list2);
            }
            else
            {
                Talks = new ObservableCollection <Outside>(list.OrderBy(x => x.Kw));
            }
            RaisePropertyChanged(nameof(Talks));
        }