Example #1
0
        public virtual List <TModel> Get(TSearch search)
        {
            var list = _context.Set <TDatabase>().ToList();


            return(_mapper.Map <List <TModel> >(list));
        }
        public override List <Uplata> Get(UplateSearchRequest search)
        {
            var q = _context.Set <Database.Uplate>().AsQueryable();

            if (search?.UtakmicaID.HasValue == true)
            {
                int             i     = (int)search.UtakmicaID;
                List <Utakmica> lista = _mapper.Map <List <Utakmica> >(_context.Set <Database.Utakmice>().ToList());

                Utakmica utakmica = null;
                foreach (var u in lista)
                {
                    if (u.UtakmicaID == search.UtakmicaID)
                    {
                        utakmica = u;
                    }
                }

                var id = utakmica.UtakmicaID;
                q = q.Where(s => s.Ulaznica.UtakmicaID == id);
            }
            if (search?.UlaznicaID.HasValue == true)
            {
                q = q.Where(s => s.UlaznicaID == search.UlaznicaID);
            }

            var list = q.ToList();

            return(_mapper.Map <List <Uplata> >(list));
        }
Example #3
0
        public virtual TModel Update(int id, TUpdate req)
        {
            var entity = _context.Set <TDatabase>().Find(id);

            _context.Set <TDatabase>().Attach(entity);
            _context.Set <TDatabase>().Update(entity);
            _mapper.Map(req, entity);
            _context.SaveChanges();
            return(_mapper.Map <TModel>(entity));
        }
        public override List <Stadion> Get(StadioniSearchRequest search)
        {
            var q = _context.Set <Database.Stadioni>().AsQueryable();

            if (!string.IsNullOrWhiteSpace(search?.Naziv) && search?.GradID.HasValue == true)
            {
                q = q.Where(s => s.Naziv.Equals(search.Naziv) && s.GradID == search.GradID);
            }
            else
            {
                if (search?.DrzavaID.HasValue == true)
                {
                    q = q.Include(s => s.Grad).Where(s => s.Grad.DrzavaID == search.DrzavaID);
                }
                if (!string.IsNullOrWhiteSpace(search?.Naziv))
                {
                    q = q.Where(s => s.Naziv.StartsWith(search.Naziv));
                }
                if (search?.GradID.HasValue == true)
                {
                    q = q.Where(s => (s.GradID == search.GradID));
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Stadion> >(list));
        }
Example #5
0
        public override List <Drzava> Get(DrzaveSearchRequest search)
        {
            var q = _context.Set <Database.Drzave>().AsQueryable();

            if (!string.IsNullOrEmpty(search?.Naziv))
            {
                q = q.Where(s => s.Naziv.StartsWith(search.Naziv));
            }
            var list = q.ToList();

            return(_mapper.Map <List <Drzava> >(list));
        }
Example #6
0
        public override List <Model.PreporukaPoTimu> Get(PreporukaSearchRequest search)
        {
            var q = _context.Set <Database.PreporukePoTimu>().AsQueryable();

            if (search?.KorisnikID.HasValue == true)
            {
                q = q.Where(s => s.KorisnikID == search.KorisnikID);
            }

            var list = q.ToList();

            return(_mapper.Map <List <Model.PreporukaPoTimu> >(list));
        }
        public override List <Preporuka> Get(PreporukaSearchRequest search)
        {
            var q = _context.Set <Database.Preporuke>().AsQueryable();

            if (search?.KorisnikID.HasValue == true)
            {
                q = q.Where(s => s.KorisnikID == search.KorisnikID).OrderByDescending(s => s.BrojKupljenihUlaznica);
            }
            if (search?.KorisnikID.HasValue == true && search?.PrviTimID.HasValue == true && search?.DrugiTimID.HasValue == true)
            {
                q = q.Where(s => s.KorisnikID == search.KorisnikID && (s.TimID == search.PrviTimID || s.TimID == search.DrugiTimID));
            }
            var list = q.ToList();

            return(_mapper.Map <List <Preporuka> >(list));
        }
        public override List <Ulaznica> Get(UlazniceSearchRequest search)
        {
            var q = _context.Set <Database.Ulaznice>().AsQueryable();

            if (search?.KorisnikID.HasValue == true)
            {
                q = q.Where(s => s.Korisnik.KorisnikID == search.KorisnikID);
            }
            if (search?.Godina.HasValue == true)
            {
                q = q.Where(s => s.DatumKupnje.Year == search.Godina);
            }
            if (search?.UtakmicaID.HasValue == true)
            {
                q = q.Where(s => s.UtakmicaID == search.UtakmicaID);
            }
            var list = q.ToList().OrderByDescending(s => s.DatumKupnje);

            return(_mapper.Map <List <Ulaznica> >(list));
        }
Example #9
0
        public override List <Sektor> Get(SektoriSearchRequest search)
        {
            var q = _context.Set <Database.Sektori>().AsQueryable();

            if (!string.IsNullOrWhiteSpace(search?.Naziv) && search.TribinaID.HasValue)
            {
                q = q.Where(s => s.Naziv == search.Naziv && s.TribinaID == search.TribinaID);
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(search?.Naziv))
                {
                    q = q.Where(s => s.Naziv == search.Naziv);
                }
                if (search.TribinaID.HasValue)
                {
                    q = q.Where(s => (s.TribinaID == search.TribinaID));
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Sektor> >(list));
        }
Example #10
0
        public override List <Liga> Get(LigaSearchRequest search)
        {
            var q = _context.Set <Database.Lige>().AsQueryable();

            if (!string.IsNullOrEmpty(search?.Naziv) && search?.DrzavaID.HasValue == true)
            {
                q = q.Where(s => s.Naziv.Equals(search.Naziv) && s.DrzavaID == search.DrzavaID);
            }
            else
            {
                if (!string.IsNullOrEmpty(search?.Naziv))
                {
                    q = q.Where(s => s.Naziv.StartsWith(search.Naziv));
                }
                if (search?.DrzavaID.HasValue == true)
                {
                    q = q.Where(s => s.Drzava.DrzavaID == search.DrzavaID);
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Liga> >(list));
        }
        public override List <Tim> Get(TimoviSearchRequest search)
        {
            var q = _context.Set <Database.Timovi>().AsQueryable();

            if (!string.IsNullOrWhiteSpace(search?.Naziv) && search?.LigaID.HasValue == true)
            {
                q = q.Where(s => s.Naziv.Equals(search.Naziv) && s.LigaID == search.LigaID);
            }
            else
            {
                if (!string.IsNullOrWhiteSpace(search?.Naziv))
                {
                    q = q.Where(s => s.Naziv.StartsWith(search.Naziv));
                }
                if (search?.LigaID.HasValue == true)
                {
                    q = q.Where(s => s.LigaID == search.LigaID);
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Tim> >(list));
        }
        public override List <Sjedalo> Get(SjedalaSearchRequest search)
        {
            var q = _context.Set <Database.Sjedala>().AsQueryable();

            if (!string.IsNullOrEmpty(search?.Oznaka) && search?.SektorID.HasValue == true)
            {
                q = q.Where(s => (s.Oznaka.Equals(search.Oznaka)) && s.SektorID == search.SektorID);
            }
            else
            {
                if (!string.IsNullOrEmpty(search?.Oznaka))
                {
                    q = q.Where(s => (s.Oznaka.StartsWith(search.Oznaka)));
                }
                if (search?.SektorID.HasValue == true)
                {
                    q = q.Where(s => s.SektorID == search.SektorID);
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Sjedalo> >(list));
        }
        public override List <Utakmica> Get(UtakmiceeSearchRequest search)
        {
            var q = _context.Set <Database.Utakmice>().AsQueryable();

            if (!search.sveUtakmice)
            {
                q = q.Where(s => s.DatumOdigravanja.Date >= DateTime.Now.Date);
            }
            if (search.PoTimu && search?.cijena.HasValue == true && (search.LigaID.HasValue == true || search.TimID.HasValue == true) && search?.d1 != null && search?.d2 != null)
            {
                var tribine = new List <Tribine>();
                tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena).ToList();

                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.LigaID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.LigaID == search.LigaID);
                    }
                    if (search.TimID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID) && (s.DomaciTimID == search.TimID || s.GostujuciTimID == search.TimID));
                    }

                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2);
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList().Distinct());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }
            else if (search.PoTimu && search?.cijena.HasValue == true && (search.LigaID.HasValue == true || search.TimID.HasValue == true))
            {
                var tribine = new List <Tribine>();
                tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena).ToList();
                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.LigaID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.LigaID == search.LigaID);
                    }
                    if (search.TimID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID) && (s.DomaciTimID == search.TimID || s.GostujuciTimID == search.TimID));
                    }
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList().Distinct());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }
            else if (search.PoTimu && search?.d1 != null && search?.d2 != null && (search.LigaID.HasValue == true || search.TimID.HasValue == true))
            {
                if (search.LigaID.HasValue == true)
                {
                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && s.LigaID == search.LigaID);
                }
                if (search.TimID.HasValue == true)
                {
                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && (s.DomaciTimID == search.TimID || s.GostujuciTimID == search.TimID));
                }
                List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList().Distinct());
                return(lista);
            }
            else if (search.PoStadionu && search?.cijena.HasValue == true && (search.DrzavaID.HasValue == true || search.StadionID.HasValue == true) && search?.d1 != null && search?.d2 != null)
            {
                var tribine = new List <Tribine>();
                if (!search.StadionID.HasValue)
                {
                    tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && q.Any(a => a.StadionID == s.StadionID)).ToList();
                }
                else
                {
                    tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && s.StadionID == search.StadionID).ToList();
                }

                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.DrzavaID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion.Grad).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.Grad.DrzavaID == search.DrzavaID);
                    }
                    if (search.StadionID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID));
                    }

                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2);
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }

            else if (search.PoStadionu && search?.cijena.HasValue == true && (search.DrzavaID.HasValue == true || search.StadionID.HasValue == true))
            {
                var tribine = new List <Tribine>();
                if (!search.StadionID.HasValue)
                {
                    tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && q.Any(a => a.StadionID == s.StadionID)).ToList();
                }
                else
                {
                    tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && s.StadionID == search.StadionID).ToList();
                }
                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.DrzavaID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion.Grad).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.Grad.DrzavaID == search.DrzavaID);
                    }
                    if (search.StadionID.HasValue == true)
                    {
                        q = q.Where(s => tribine.Any(a => a.StadionID == s.StadionID));
                    }
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }
            else if (search.PoStadionu && search?.d1 != null && search?.d2 != null && (search.DrzavaID.HasValue == true || search.StadionID.HasValue == true))
            {
                if (search.DrzavaID.HasValue == true)
                {
                    q = q.Include(s => s.stadion.Grad).Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && s.stadion.Grad.DrzavaID == search.DrzavaID);
                }
                if (search.StadionID.HasValue == true)
                {
                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && s.StadionID == search.StadionID);
                }
                List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                return(lista);
            }
            else if (search.PoLokaciji && search?.cijena.HasValue == true && (search.DrzavaID.HasValue == true || search.GradID.HasValue == true) && search?.d1 != null && search?.d2 != null)
            {
                var tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && q.Any(a => a.StadionID == s.StadionID)).ToList();
                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.DrzavaID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion.Grad).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.Grad.DrzavaID == search.DrzavaID);
                    }
                    if (search.GradID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.GradID == search.GradID);
                    }

                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2);
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }

            else if (search.PoLokaciji && search?.cijena.HasValue == true && (search.DrzavaID.HasValue == true || search.GradID.HasValue == true))
            {
                var tribine = _context.Tribine.Where(s => s.Cijena <= search.cijena && q.Any(a => a.StadionID == s.StadionID)).ToList();
                var sektori = _context.Sektori.Where(a => tribine.Any(s => s.TribinaID == a.TribinaID)).ToList();
                var sjedala = _context.Sjedala.Where(a => sektori.Any(s => s.SektorID == a.SektorID) && a.Status == false).ToList();

                if (sjedala.Count != 0)
                {
                    if (search.DrzavaID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion.Grad).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.Grad.DrzavaID == search.DrzavaID);
                    }
                    if (search.GradID.HasValue == true)
                    {
                        q = q.Include(s => s.stadion).Where(s => tribine.Any(a => a.StadionID == s.StadionID) && s.stadion.GradID == search.GradID);
                    }
                    List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                    return(lista);
                }
                else//ili vrati praznu
                {
                    return(new List <Utakmica>());
                }
            }
            else if (search.PoLokaciji && search?.d1 != null && search?.d2 != null && (search.DrzavaID.HasValue == true || search.GradID.HasValue == true))
            {
                if (search.DrzavaID.HasValue == true)
                {
                    q = q.Include(s => s.stadion.Grad).Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && s.stadion.Grad.DrzavaID == search.DrzavaID);
                }
                if (search.GradID.HasValue == true)
                {
                    q = q.Include(s => s.stadion).Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2 && s.stadion.GradID == search.GradID);
                }
                List <Utakmica> lista = _mapper.Map <List <Utakmica> >(q.ToList());
                return(lista);
            }
            else
            {
                if (search?.TimID.HasValue == true)
                {
                    q = q.Where(s => s.DomaciTimID == search.TimID || s.GostujuciTimID == search.TimID);
                }
                if (search?.d1 != null && search?.d2 != null)
                {
                    q = q.Where(s => s.DatumOdigravanja > search.d1 && s.DatumOdigravanja < search.d2);
                }
                if (search?.GradID.HasValue == true)
                {
                    q = q.Include(s => s.stadion).Where(s => s.stadion.GradID == search.GradID);
                }
                if (search?.DrzavaID.HasValue == true)
                {
                    q = q.Include(s => s.stadion.Grad).Where(s => s.stadion.Grad.DrzavaID == search.DrzavaID);
                }
                if (search?.LigaID.HasValue == true)
                {
                    q = q.Where(s => s.LigaID == search.LigaID);
                }
                if (search?.StadionID.HasValue == true)
                {
                    q = q.Where(s => s.StadionID == search.StadionID);
                }
            }
            var list = q.ToList();

            return(_mapper.Map <List <Utakmica> >(list));
        }