public async Task Init() { int ClanId = _clan.Id; var search = new TreningSearchRequest() { DatumTreninga = DateTime.MinValue, TipTreningaID = 0 }; search.TipTreningaID = SelectedTipTreninga.Id; var list = await _apiService.Get <List <Model.Trening> >(search); Trening.Clear(); //----------------------------------------------------------------------------------------------- for (int i = 0; i < list.Count; i++) { Model.Trening x = list[i]; //var trenutnoPrisutnih =await _apiService_ClanPrisustvo.Get<List<Model.ClanPrisustvo>>(); var trenutnoPrisutnih = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id })); var treningModel = new Wellness.Mobile.Models.TreningModel() { Id = x.Id, DatumTreninga = x.DatumTreninga.ToString("dd.MM.yyyy"), pocetak = x.VrijemePocetak, kraj = x.VrijemeKraj, MaxPrisutnih = x.MaksimalnoPrisutnih, Trener = x.Trener.Radnik.Osoba.Ime + " " + x.Trener.Radnik.Osoba.Prezime, TipTreninga = x.TipTreninga.TipTreninga1, ClanId = ClanId, TrenutnoPrisutnih = trenutnoPrisutnih.Count, Odrzan = x.Odrzan, Image = x.TipTreninga.Image }; var prisustvo = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); if (prisustvo.Count > 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = prisustvo[0].Prisustvovao; treningModel._Prisustvuje = true; treningModel.PrisustvoId = prisustvo[0].Id; if (prisustvo[0].Ocjena != null) { treningModel._Ocjena = (int)prisustvo[0].Ocjena; treningModel.Ocjenjen = true; } else { treningModel._Ocjena = 0; treningModel.Ocjenjen = false; } Trening.Add(treningModel); } else { if (prisustvo.Count == 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Ne prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = false; treningModel._Prisustvuje = false; treningModel.Ocjenjen = false; treningModel.PrisustvoId = 0; treningModel._Ocjena = 0; Trening.Add(treningModel); } } } }
public async Task Init() { int ClanId = _clan.Id; var search = new TreningSearchRequest() { DatumTreninga = DateTime.MinValue, TipTreningaID = 0 }; search.TipTreningaID = SelectedTipTreninga.Id; var list = await _apiService.Get <List <Wellness.Model.Trening> >(search); //filter if historyOnly = true //u toDeleteList se nalaze treninga koji nisu odrzani var newList = new List <Wellness.Model.Trening>(); if (_historyOnly == true) { //uklanjamo treninge koji se nisu odrzali for (int i = 0; i < list.Count; i++) { if (list[i].Odrzan == null) { list[i].Odrzan = false; } Wellness.Model.Trening x = list[i]; if (x.Odrzan == true) { //clan je prisustvovo treninug x var prisustvoList = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); //ako _clan nije prosustvovo treningu x izbacujemo x iz liste if (prisustvoList.Count > 0) { newList.Add(list[i]); } } } list = newList; } else { newList = list.Where(p => p.Odrzan == false || p.Odrzan == null).ToList(); list = newList; foreach (var x in list) { if (x.Odrzan == null) { x.Odrzan = false; } } } //----------------------------------------------------------------------------------------------- Trening.Clear(); for (int i = 0; i < list.Count; i++) { Wellness.Model.Trening x = list[i]; //var trenutnoPrisutnih =await _apiService_ClanPrisustvo.Get<List<Model.ClanPrisustvo>>(); var trenutnoPrisutnih = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id })); var treningModel = new Mobile.Models.TreningModel() { Id = x.Id, DatumT = x.DatumTreninga, DatumTreninga = x.DatumTreninga.ToString("dd.MM.yyyy"), pocetak = x.VrijemePocetak, kraj = x.VrijemeKraj, MaxPrisutnih = x.MaksimalnoPrisutnih, Trener = x.Trener.Radnik.Osoba.Ime + " " + x.Trener.Radnik.Osoba.Prezime, TipTreninga = x.TipTreninga.TipTreninga1, ClanId = ClanId, TrenutnoPrisutnih = trenutnoPrisutnih.Count, Odrzan = x.Odrzan, Image = x.TipTreninga.Image }; var prisustvo = AsyncHelpers.RunSync <List <Wellness.Model.ClanPrisustvo> >(() => _apiService_ClanPrisustvo.Get <List <Wellness.Model.ClanPrisustvo> >(new ClanPrisustvoSearchRequest() { TreningId = x.Id, ClanId = ClanId })); if (prisustvo.Count > 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = prisustvo[0].Prisustvovao; treningModel._Prisustvuje = true; treningModel.PrisustvoId = prisustvo[0].Id; if (prisustvo[0].Ocjena != null) { treningModel._Ocjena = (int)prisustvo[0].Ocjena; treningModel.Ocjenjen = true; } else { treningModel._Ocjena = 0; treningModel.Ocjenjen = false; } Trening.Add(treningModel); } else { if (prisustvo.Count == 0 && (selectedSearchFilter == "Svi" || selectedSearchFilter == "Ne prijavljeni")) { treningModel.ClanPrisustvovaoTreningu = false; treningModel._Prisustvuje = false; treningModel.Ocjenjen = false; treningModel.PrisustvoId = 0; treningModel._Ocjena = 0; Trening.Add(treningModel); } } } }