예제 #1
0
        public async Task FetchData()
        {
            IsBusy = true;

            var items = new List <LogListItemViewModel>();
            var dtos  = await _logService.GetItems();

            foreach (var i in dtos.Where(x => x.JaktId == ID).ToList())
            {
                var vm = _logListItemViewModelFactory();
                vm.BeforeNavigate(i);
                await vm.OnAppearing();

                items.Add(vm);
            }
            items = items.OrderByDescending(o => o.Date).ToList();
            var groups     = items.GroupBy(g => g.Date.ToShortDateString()).OrderByDescending(o => o.Key);
            var groupItems = new ObservableCollection <LogGroup>();

            foreach (var g in groups)
            {
                var jg = new LogGroup(g.Key, "");
                foreach (var item in g.OrderByDescending(o => o.Date))
                {
                    jg.Add(items.Single(h => h.ID == item.ID));
                }
                groupItems.Add(jg);
            }

            LogListItemViewModels = groupItems;

            //items.ForEach(i => Items.Add(i));

            var hunters = await _huntFactory.CreateHunterPickerItems(_dto.JegerIds);

            var dogs = await _huntFactory.CreateDogPickerItems(_dto.DogIds);

            SelectedHuntersAndDogs = hunters.Where(h => h.Selected).ToList();
            SelectedHuntersAndDogs.AddRange(dogs.Where(h => h.Selected).ToList());

            IsBusy = false;
        }
예제 #2
0
        private async Task PopulatePickers()
        {
            var jegerIds = new List <string> {
                _dto.JegerId
            };
            var dogIds = new List <string> {
                _dto.DogId
            };

            HuntersPickers = await _huntFactory.CreateHunterPickerItems(jegerIds, _dto.JaktId);

            DogsPickers = await _huntFactory.CreateDogPickerItems(dogIds, _dto.JaktId);

            SpeciesPickers = await _huntFactory.CreateSpeciePickerItems(_dto.ArtId);

            HitsPickers     = new List <PickerItem>();
            ShotsPickers    = new List <PickerItem>();
            ObservedPickers = new List <PickerItem>();

            int max = 100;

            for (var i = 1; i <= max; i++)
            {
                HitsPickers.Add(new PickerItem
                {
                    ID       = i.ToString(),
                    Title    = i.ToString(),
                    Selected = i == _dto.Treff
                });

                ObservedPickers.Add(new PickerItem
                {
                    ID       = i.ToString(),
                    Title    = i.ToString(),
                    Selected = i == _dto.Sett
                });

                ShotsPickers.Add(new PickerItem
                {
                    ID       = i.ToString(),
                    Title    = i.ToString(),
                    Selected = i == _dto.Skudd
                });
            }
            ////Add custom value pickers too
            //HitsPickers.Add(new PickerItem
            //{
            //    ID = _dto.Treff.ToString(),
            //    Title = _dto.Treff.ToString(),
            //    Selected = _dto.Treff > max,
            //    Custom = true
            //});

            //ObservedPickers.Add(new PickerItem
            //{
            //    ID = _dto.Sett.ToString(),
            //    Title = _dto.Sett.ToString(),
            //    Selected = _dto.Sett > max,
            //    Custom = true
            //});

            //ShotsPickers.Add(new PickerItem
            //{
            //    ID = _dto.Skudd.ToString(),
            //    Title = _dto.Skudd.ToString(),
            //    Selected = _dto.Skudd > max,
            //    Custom = true
            //});

            //Add hunter and dog
            if (!string.IsNullOrEmpty(_dto.JegerId))
            {
                HunterAndDog.Add(HuntersPickers.SingleOrDefault(h => h.Selected));
            }
            if (!string.IsNullOrEmpty(_dto.DogId))
            {
                HunterAndDog.Add(DogsPickers.SingleOrDefault(h => h.Selected));
            }
        }
예제 #3
0
 private async Task GetDogs()
 {
     Dogs = await _huntFactory.CreateDogPickerItems(_dto.DogIds);
 }