Example #1
0
        public static void KupiOdmah(int aukcijaId, int korisnikId, BHaoDataContext context)
        {
            IAukcijaRepository aukcijaRepo = new AukcijaRepository(context);
            IPonudaRepository  ponudaRepo  = new PonudaRepository(context);

            Aukcija aukcija = aukcijaRepo.Get(aukcijaId);

            if (!aukcija.Zavrsena && aukcija.Zavrsetak > DateTime.Now)
            {
                Ponuda ponuda = new Ponuda();
                ponuda.Vrijeme         = DateTime.Now;
                ponuda.Iznos           = (decimal)aukcija.KupiOdmahCijena;
                ponuda.MaksimalanIznos = (decimal)aukcija.KupiOdmahCijena;
                ponuda.KorisnikId      = korisnikId;
                ponuda.AukcijaId       = aukcija.Id;

                ponudaRepo.Insert(ponuda);

                aukcija.Zavrsetak         = ponuda.Vrijeme;
                aukcija.KupacId           = korisnikId;
                aukcija.Zavrsena          = true;
                aukcija.NajveciPonudjacId = korisnikId;
                aukcija.NajvecaPonuda     = aukcija.KupiOdmahCijena;
                aukcija.Provizija         = ObracunProvizije(aukcija);

                aukcijaRepo.Update(aukcija);
            }
            else
            {
                throw new Exception("Aukcija već zavrsena!");
            }
        }
Example #2
0
        public AukcijaDetailDTO[] GetZadnjeUspjesne(int kategorijaId, string stringZaPretragu)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IAukcijaRepository repo = new AukcijaRepository(context);

                    AukcijaDetailDTO[] zadnjeUspjesne = repo.GetAll(true).Where(x => x.Aukcija.KupacId > 0).ToArray();

                    if (kategorijaId > 0)
                    {
                        zadnjeUspjesne = zadnjeUspjesne.Where(x => x.Aukcija.KategorijaId == kategorijaId).ToArray();
                    }

                    if (!String.IsNullOrEmpty(stringZaPretragu))
                    {
                        zadnjeUspjesne = zadnjeUspjesne.Where(x => x.Artikal.Naziv.ToLower().Contains(stringZaPretragu) ||
                                                              x.Artikal.Model.ToLower().Contains(stringZaPretragu) ||
                                                              x.Artikal.Proizvodjac.ToLower().Contains(stringZaPretragu)).ToArray();
                    }

                    zadnjeUspjesne = zadnjeUspjesne.OrderByDescending(x => x.Aukcija.Zavrsetak)
                                     .Take(8)
                                     .ToArray();

                    return(zadnjeUspjesne);
                };
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #3
0
        public Entities.Aukcija[] GetAllAukcije()
        {
            using (BHaoDataContext context = new BHaoDataContext())
            {
                IAukcijaRepository repo = new AukcijaRepository(context);

                return(repo.GetAll().ToArray());
            }
        }
Example #4
0
        //Funkcija koja se poziva iz web dijela aplikacije
        public List <AukcijaDTO> GetSlicneArtikle(int artikalId, int userID)
        {
            logiraniUserID = userID;

            UcitajArtikle(artikalId);

            List <OcjenaArtikla> ocjene = context.OcjeneArtikala.Where(x => x.ArtikalId == artikalId).OrderBy(x => x.OcijenioId).ToList();

            List <OcjenaArtikla> zajednickeOcjene1 = new List <OcjenaArtikla>();
            List <OcjenaArtikla> zajednickeOcjene2 = new List <OcjenaArtikla>();

            //List<Artikli> preporuceno = new List<Artikli>();
            List <AukcijaDTO> preporuceno = new List <AukcijaDTO>();

            //Petlja svih proizvoda (ne uključujući onaj koji je proslijeđen u funkciju)
            foreach (var item in artikli)
            {
                foreach (OcjenaArtikla ocjena1 in ocjene) //Sve ocjene aktivnog proizvoda
                {
                    //Provjeriti da li je naredni proizvod (iz liste proizvodi) ocijenio isti kupac
                    if (item.Value.Where(x => x.OcijenioId == ocjena1.OcijenioId).Count() != 0)
                    {
                        zajednickeOcjene1.Add(ocjena1);
                        zajednickeOcjene2.Add(item.Value.Where(x => x.OcijenioId == ocjena1.OcijenioId).First());
                    }
                }

                //Za računanje sličnosti se uzimaju samo zajedničke ocjene, odnosno ocjene istih kupaca za oba proizvoda
                double slicnost = GetSlicnost(zajednickeOcjene1, zajednickeOcjene2);
                if (slicnost > 0.6)//Granična vrijednost (treshold)
                {
                    List <AukcijaDTO>    aukcije = new List <AukcijaDTO>();
                    List <OcjenaArtikla> ocjeneSelectByKupacArtikal = new List <OcjenaArtikla>();

                    IAukcijaRepository aukcijeRepo = new AukcijaRepository(context);

                    aukcije = aukcijeRepo.GetAukcijeAktivneByArtikal(item.Key).ToList();

                    if (aukcije.Count > 0)
                    {
                        foreach (var a in aukcije)
                        {
                            ocjeneSelectByKupacArtikal = item.Value.Where(x => x.OcijenioId == logiraniUserID).ToList();
                            if (ocjeneSelectByKupacArtikal.Count < 1)
                            {
                                preporuceno.Add(a);
                            }
                        }
                    }
                }
                zajednickeOcjene1.Clear();
                zajednickeOcjene2.Clear();
            }

            //Lista preporučenih proizvoda
            return(preporuceno);
        }
Example #5
0
        public void testing_repository_access( )
        {
            using (BHaoDataContext context = new BHaoDataContext( ))
            {
                IAukcijaRepository repo = new AukcijaRepository(context);

                Aukcija aukcija = repo.Get(4);

                Assert.IsTrue(aukcija != null);
            }
        }
Example #6
0
        public StatistikaDTO GetStatistika(int kategorijaId, DateTime?prikazOd, DateTime?prikazDo)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    AukcijaRepository repo = new AukcijaRepository(context);

                    IEnumerable <AukcijaDetailDTO> aukcije = repo.GetAll(null);

                    if (kategorijaId > 0)
                    {
                        aukcije = aukcije.Where(x => x.Aukcija.KategorijaId == kategorijaId).ToList();
                    }

                    if (prikazOd != null && prikazDo != null)
                    {
                        aukcije = aukcije.Where(x => (x.Aukcija.Pocetak >= prikazOd && x.Aukcija.Pocetak <= prikazDo) || (x.Aukcija.Zavrsetak >= prikazOd && x.Aukcija.Zavrsetak <= prikazDo)).ToList();
                    }

                    StatistikaDTO statistika = new StatistikaDTO();
                    if (aukcije.Count() > 0)
                    {
                        statistika.BrojAukcija  = aukcije.Count();
                        statistika.ListaAukcija = aukcije.OrderByDescending(x => x.Aukcija.Pocetak);
                        statistika.ProsjecnaVrijednostAukcija = (decimal)aukcije.Where(x => x.Aukcija.Zavrsena && x.Aukcija.NajvecaPonuda > 0)
                                                                .Average(x => x.Aukcija.NajvecaPonuda);

                        statistika.NajcesceProdavaniArtikli = aukcije.GroupBy(x => x.Artikal).Select(group => new NajcesciArtikliDTO
                        {
                            Artikal = group.Key.Proizvodjac + " " + group.Key.Model + " - " + group.Key.Naziv,
                            Count   = group.Count()
                        }).OrderByDescending(x => x.Count).Take(10);
                    }
                    else
                    {
                        statistika.BrojAukcija = 0;
                        statistika.ProsjecnaVrijednostAukcija = 0;
                    }



                    return(statistika);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #7
0
        public AukcijaDetailDTO[] GetAllAktivne(int kategorijaId, string stringZaPretragu)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IAukcijaRepository repo = new AukcijaRepository(context);

                    return(repo.GetAllAktivne(kategorijaId, stringZaPretragu).ToArray());
                };
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #8
0
        public Entities.Aukcija GetAukcija(int id)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IAukcijaRepository repo = new AukcijaRepository(context);

                    return(repo.Get(id));
                }
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #9
0
        public void OcijeniKorisnika(OcjenaKorisnika ocjena)
        {
            try
            {
                if (ocjena.Ocjena < 1)
                {
                    throw new FaultException("Morate odabrati ocjenu!");
                }

                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IDataRepository <OcjenaKorisnika> ocjenaRepo = new DataRepositoryBase <OcjenaKorisnika>(context);
                    AukcijaRepository aukcijaRepo = new AukcijaRepository(context);

                    Aukcija aukcija = aukcijaRepo.Get(ocjena.AukcijaId);

                    if ((ocjena.OcjenjivacId == aukcija.ProdavacId || ocjena.OcjenjivacId == aukcija.KupacId) &&
                        (ocjena.OcijenjeniKorisnikId == aukcija.ProdavacId || ocjena.OcijenjeniKorisnikId == aukcija.KupacId))
                    {
                        if (ocjenaRepo.GetAll().Where(x => x.OcjenjivacId == ocjena.OcjenjivacId &&
                                                      x.OcijenjeniKorisnikId == ocjena.OcijenjeniKorisnikId && x.AukcijaId == ocjena.AukcijaId).FirstOrDefault() != null)
                        {
                            throw new FaultException("Možete ocijeniti korisnika samo jednom!");
                        }
                        else
                        {
                            ocjena.Datum = DateTime.Now;
                        }
                        ocjenaRepo.Insert(ocjena);
                    }
                    else
                    {
                        throw new FaultException("Ocjenjivać i ocijenjeni korisnik moraju biti kupac ili prodavac!");
                    }
                }
            }
            catch (FaultException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #10
0
        public Aukcija KreirajAukciju(AukcijaKreirajDTO aukcijaModel, int prijavljeniKorisnik)
        {
            Aukcija aukcija = new Aukcija();

            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    Artikal artikal = new Artikal();

                    DateTime pocetakAukcije = DateTime.Now;

                    IArtikalRepository      artikalRepo = new ArtikalRepository(context);
                    IAukcijaRepository      aukcijaRepo = new AukcijaRepository(context);
                    IDataRepository <Slika> slikeRepo   = new DataRepositoryBase <Slika>(context);

                    aukcija.ArtikalId       = artikalRepo.KreirajIzAukcije(aukcijaModel.Naziv, aukcijaModel.Model, aukcijaModel.Proizvodjac);
                    aukcija.Pocetak         = pocetakAukcije;
                    aukcija.Zavrsetak       = pocetakAukcije.AddDays(aukcijaModel.Trajanje);
                    aukcija.MinimalnaCijena = aukcijaModel.MinimalnaCijena;
                    aukcija.KupiOdmahCijena = aukcijaModel.KupiOdmahCijena;
                    aukcija.Napomena        = aukcijaModel.Napomena;
                    aukcija.DetaljanOpis    = aukcijaModel.DetaljanOpis;
                    aukcija.NacinPlacanjaId = aukcijaModel.NacinPlacanjaId;
                    aukcija.KategorijaId    = aukcijaModel.KategorijaId;
                    aukcija.ProdavacId      = prijavljeniKorisnik;

                    aukcija = aukcijaRepo.Insert(aukcija);

                    foreach (var slika in aukcijaModel.Slike)
                    {
                        slika.AukcijaId = aukcija.Id;
                        slikeRepo.Insert(slika);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }

            return(aukcija);
        }
Example #11
0
        public void OcijeniArtikal(OcjenaArtikla ocjena)
        {
            try
            {
                if (ocjena.Ocjena < 1)
                {
                    throw new FaultException("Morate odabrati ocjenu!");
                }

                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IDataRepository <OcjenaArtikla> ocjenaRepo = new DataRepositoryBase <OcjenaArtikla>(context);
                    AukcijaRepository aukcijaRepo = new AukcijaRepository(context);

                    Aukcija aukcija = aukcijaRepo.Get(ocjena.AukcijaId);

                    if (aukcija.KupacId == ocjena.OcijenioId)
                    {
                        if (ocjenaRepo.GetAll().Where(x => x.ArtikalId == ocjena.ArtikalId && x.OcijenioId == aukcija.KupacId && x.AukcijaId == ocjena.AukcijaId).FirstOrDefault() != null)
                        {
                            throw new FaultException("Možete ocijeniti artikal samo jednom!");
                        }
                        else
                        {
                            ocjena.Datum = DateTime.Now;
                            ocjenaRepo.Insert(ocjena);
                        }
                    }
                    else
                    {
                        throw new FaultException("Morate biti kupac da bi mogli ocijeniti artikal!");
                    }
                }
            }
            catch (FaultException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #12
0
        public AukcijaDTO GetAukcijaDetail(int aukcijaId, int korisnikId)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    IAukcijaRepository aukcijaRepo  = new AukcijaRepository(context);
                    KorisnikRepository korisnikRepo = new KorisnikRepository(context);

                    AukcijaDTO aukcija = new AukcijaDTO();
                    aukcija = aukcijaRepo.GetAukcijaDetail(aukcijaId, korisnikId);

                    return(aukcija);
                };
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #13
0
 public AukcijaDetailDTO[] GetAll(bool zavrsena)
 {
     using (BHaoDataContext context = new BHaoDataContext())
     {
         try
         {
             AukcijaRepository  repo    = new AukcijaRepository(context);
             AukcijaDetailDTO[] aukcije = repo.GetAll(zavrsena).ToArray();
             return(aukcije);
         }
         catch (FaultException ex)
         {
             throw ex;
         }
         catch (Exception ex)
         {
             throw new FaultException(ex.Message);
         }
     }
 }
Example #14
0
        public AukcijaDetailDTO[] GetAukcijeByKorisnik(int korisnikId, string kriterij)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    AukcijaRepository repo = new AukcijaRepository(context);

                    return(repo.GetAllZaKorisnika(korisnikId, kriterij).ToArray());
                }
            }
            catch (FaultException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #15
0
 public void EvidentirajPlacanje(int aukcijaId, DateTime datumPlacanja)
 {
     using (BHaoDataContext context = new BHaoDataContext())
     {
         try
         {
             AukcijaRepository repo    = new AukcijaRepository(context);
             Aukcija           aukcija = repo.Get(aukcijaId);
             aukcija.DatumPlacanja = datumPlacanja;
             repo.Update(aukcija);
         }
         catch (FaultException ex)
         {
             throw ex;
         }
         catch (Exception ex)
         {
             throw new FaultException(ex.Message);
         }
     }
 }
Example #16
0
        public AukcijaDetailDTO[] GetAllZavrsene(string filterPlacanja, string stringZaPretragu)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    AukcijaRepository repo = new AukcijaRepository(context);

                    AukcijaDetailDTO[] aukcije = repo.GetAllZavrsene().ToArray();

                    if (filterPlacanja == "placene")
                    {
                        aukcije = aukcije.Where(x => x.Aukcija.DatumPlacanja != null).ToArray();
                    }

                    if (filterPlacanja == "neplacene")
                    {
                        aukcije = aukcije.Where(x => x.Aukcija.DatumPlacanja == null).ToArray();
                    }

                    if (!String.IsNullOrEmpty(stringZaPretragu))
                    {
                        aukcije = aukcije.Where(x => x.Aukcija.Id.ToString() == stringZaPretragu ||
                                                x.Artikal.Naziv.ToLower().Contains(stringZaPretragu) ||
                                                x.Artikal.Proizvodjac.ToLower().Contains(stringZaPretragu) ||
                                                x.Artikal.Model.ToLower().Contains(stringZaPretragu)).ToArray();
                    }
                    return(aukcije);
                }
            }
            catch (FaultException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #17
0
        public void Ukloni(int aukcijaId)
        {
            try
            {
                using (BHaoDataContext context = new BHaoDataContext())
                {
                    AukcijaRepository repo    = new AukcijaRepository(context);
                    Aukcija           aukcija = repo.Get(aukcijaId);
                    aukcija.isDeleted = true;
                    aukcija.Zavrsena  = true;
                    aukcija.Zavrsetak = DateTime.Now;
                    repo.Update(aukcija);

                    Artikal artikal = context.Artikli.Find(aukcija.ArtikalId);

                    Poruka poruka = new Poruka()
                    {
                        Datum        = DateTime.Now,
                        PosiljalacId = 14,
                        PrimalacId   = aukcija.ProdavacId,
                        TextPoruke   = "Vaša aukcija za " + artikal.Naziv + " " + artikal.Proizvodjac + " " + artikal.Model + " je uklonjena!",
                        AukcijaId    = aukcija.Id
                    };

                    PorukaRepository porukaRepo = new PorukaRepository(context);
                    porukaRepo.Insert(poruka);
                }
            }
            catch (FaultException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw new FaultException(ex.Message);
            }
        }
Example #18
0
        public static List <Aukcija> ProvjeriZavrsene()
        {
            List <Aukcija> OkoncaneAukcije = new List <Aukcija>();

            using (BHaoDataContext context = new BHaoDataContext())
            {
                IAukcijaRepository    aukcijaRepo = new AukcijaRepository(context);
                IEnumerable <Aukcija> aukcije     = aukcijaRepo.GetAllNezavrsene();

                foreach (var aukcija in aukcije)
                {
                    aukcija.Zavrsena  = true;
                    aukcija.Provizija = ObracunProvizije(aukcija);
                    if (aukcija.NajveciPonudjacId > 0)
                    {
                        aukcija.KupacId = aukcija.NajveciPonudjacId;
                    }
                    aukcijaRepo.Update(aukcija);
                    OkoncaneAukcije.Add(aukcija);
                }
            }

            return(OkoncaneAukcije);
        }
Example #19
0
        public static AukcijaDTO Licitiraj(Ponuda ponuda, BHaoDataContext _context)
        {
            IAukcijaRepository       aukcijaRepo   = new AukcijaRepository(_context);
            IInkrementRepository     inkrementRepo = new InkrementRepository(_context);
            IDataRepository <Ponuda> ponudaRepo    = new DataRepositoryBase <Ponuda>(_context);
            KorisnikRepository       korisnikRepo  = new KorisnikRepository(_context);

            AukcijaDTO aukcijaDTO = new AukcijaDTO();

            Aukcija aukcija = aukcijaRepo.Get(ponuda.AukcijaId);

            if (aukcija.ProdavacId == ponuda.KorisnikId)
            {
                throw new PonudaCreateException("Prodavac ne može licitirati na vlastitu aukciju!");
            }

            if (ponuda.MaksimalanIznos <= aukcija.MinimalnaCijena || ponuda.MaksimalanIznos <= aukcija.NajvecaPonuda)
            {
                throw new PonudaCreateException("Maksimalna ponuda mora biti veća od početne cijene ili trenutne najveće ponude!");
            }

            if (aukcija.Zavrsena || aukcija.Zavrsetak < DateTime.Now)
            {
                throw new PonudaCreateException("Vrijeme aukcije isteklo, aukcija završena!");
            }

            List <Ponuda> topDvijePonude = ponudaRepo.GetAll().Where(x => x.AukcijaId == ponuda.AukcijaId)
                                           .OrderByDescending(x => x.MaksimalanIznos).ThenByDescending(x => x.Id).Take(2).ToList();

            Ponuda trenutnaNajveca = new Ponuda();

            if (topDvijePonude.Count > 0)
            {
                trenutnaNajveca = topDvijePonude[0];
            }

            if (aukcija.NajvecaPonuda == null)
            {
                aukcija.NajvecaPonuda = aukcija.MinimalnaCijena > 0 ? aukcija.MinimalnaCijena : 1;
                ponuda.Iznos          = (decimal)aukcija.NajvecaPonuda;

                ponudaRepo.Insert(ponuda);

                aukcija.NajvecaPonuda     = ponuda.Iznos;
                aukcija.NajveciPonudjacId = ponuda.KorisnikId;
                aukcijaRepo.Update(aukcija);

                aukcijaDTO.NajvecaPonuda = ponuda;
            }
            else
            {
                if (aukcija.NajveciPonudjacId == ponuda.KorisnikId)
                {
                    throw new PonudaCreateException("Već imate najveću ponudu!");
                }

                //Inkrement inkrement = inkrementRepo.GetInkrementByIznosPonude((decimal)aukcija.NajvecaPonuda);

                if (ponuda.MaksimalanIznos > trenutnaNajveca.MaksimalanIznos)
                {
                    Inkrement inkrement = inkrementRepo.GetInkrementByIznosPonude(trenutnaNajveca.MaksimalanIznos);
                    if ((trenutnaNajveca.MaksimalanIznos + inkrement.IznosInkrementa) <= ponuda.MaksimalanIznos)
                    {
                        ponuda.Iznos = trenutnaNajveca.MaksimalanIznos + inkrement.IznosInkrementa;
                    }
                    else
                    {
                        ponuda.Iznos = ponuda.MaksimalanIznos;
                    }



                    ponudaRepo.Insert(ponuda);

                    if (trenutnaNajveca.Iznos != trenutnaNajveca.MaksimalanIznos)
                    {
                        trenutnaNajveca.Iznos = trenutnaNajveca.MaksimalanIznos;
                        ponudaRepo.Insert(trenutnaNajveca);
                    }


                    aukcija.NajvecaPonuda     = ponuda.Iznos;
                    aukcija.NajveciPonudjacId = ponuda.KorisnikId;
                    aukcijaRepo.Update(aukcija);

                    aukcijaDTO.NajvecaPonuda = ponuda;
                }
                else
                {
                    Ponuda novaNajveca = new Ponuda();
                    novaNajveca.AukcijaId       = trenutnaNajveca.AukcijaId;
                    novaNajveca.KorisnikId      = trenutnaNajveca.KorisnikId;
                    novaNajveca.MaksimalanIznos = trenutnaNajveca.MaksimalanIznos;

                    Inkrement inkrement = inkrementRepo.GetInkrementByIznosPonude(ponuda.MaksimalanIznos);
                    if (trenutnaNajveca.MaksimalanIznos > (ponuda.MaksimalanIznos + inkrement.IznosInkrementa))
                    {
                        novaNajveca.Iznos   = ponuda.MaksimalanIznos + inkrement.IznosInkrementa;
                        novaNajveca.Vrijeme = DateTime.Now;
                    }
                    else
                    {
                        novaNajveca.Iznos   = trenutnaNajveca.MaksimalanIznos;
                        novaNajveca.Vrijeme = DateTime.Now;
                    }

                    ponuda.Iznos = ponuda.MaksimalanIznos;

                    ponudaRepo.Insert(ponuda);
                    ponudaRepo.Insert(novaNajveca);

                    aukcija.NajvecaPonuda     = novaNajveca.Iznos;
                    aukcija.NajveciPonudjacId = novaNajveca.KorisnikId;
                    aukcijaRepo.Update(aukcija);

                    aukcijaDTO.NajvecaPonuda = novaNajveca;
                }

                //ponuda.Iznos = (decimal)aukcija.NajvecaPonuda + inkrement.IznosInkrementa < ponuda.MaksimalanIznos
                //    ? (decimal)aukcija.NajvecaPonuda + inkrement.IznosInkrementa : ponuda.MaksimalanIznos;
            }



            //if (topDvijePonude.Count > 1)
            //{
            //    Ponuda ponuda1 = topDvijePonude.First();
            //    Ponuda ponuda2 = topDvijePonude.Last();

            //    if (ponuda1.KorisnikId != ponuda2.KorisnikId)
            //    {

            //        Inkrement inkrement = inkrementRepo.GetInkrementByIznosPonude(ponuda2.MaksimalanIznos);

            //        ponuda1.Iznos = (ponuda2.MaksimalanIznos + inkrement.IznosInkrementa) > ponuda1.MaksimalanIznos ? ponuda1.MaksimalanIznos : ponuda2.MaksimalanIznos + inkrement.IznosInkrementa;

            //        ponudaRepo.Insert(ponuda1);


            //        aukcija.NajvecaPonuda = ponuda1.Iznos;
            //        aukcija.NajveciPonudjacId = ponuda1.KorisnikId;
            //        aukcijaRepo.Update(aukcija);

            //        aukcijaDTO.NajveciPonudjacId = aukcija.NajveciPonudjacId;
            //        aukcijaDTO.NajvecaPonuda = ponuda1;
            //        aukcijaDTO.NajveciPonudjac = korisnikRepo.GetById(aukcija.NajveciPonudjacId);
            //        aukcijaDTO.Prodavac = korisnikRepo.GetById(aukcija.ProdavacId);
            //        return aukcijaDTO;
            //    }


            //    aukcijaDTO.NajveciPonudjacId = ponuda1.KorisnikId;
            //    aukcijaDTO.NajvecaPonuda = ponuda1;
            //    aukcijaDTO.NajveciPonudjac = korisnikRepo.GetById(ponuda1.KorisnikId);

            //    return aukcijaDTO;
            //}

            //aukcija.NajvecaPonuda = ponuda.Iznos;
            //aukcija.NajveciPonudjacId = ponuda.KorisnikId;
            //aukcijaRepo.Update(aukcija);

            //aukcijaDTO.NajvecaPonuda = ponuda;
            aukcijaDTO.NajveciPonudjacId = aukcija.NajveciPonudjacId;
            aukcijaDTO.NajveciPonudjac   = korisnikRepo.GetById(aukcija.NajveciPonudjacId);
            aukcijaDTO.Prodavac          = korisnikRepo.GetById(aukcija.ProdavacId);
            return(aukcijaDTO);
        }