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);
                    }
                }
            }
        }
Пример #2
0
        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);
                    }
                }
            }
        }