public void SacuvajInkrement(Inkrement inkrement) { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <Inkrement> repo = new DataRepositoryBase <Inkrement>(context); if (repo.GetAll().Where(x => (x.Cijena == inkrement.Cijena || x.IznosInkrementa == inkrement.IznosInkrementa) && x.isDeleted == false).FirstOrDefault() != null) { throw new Exception("Cijena ili iznos inkrementa već postoji u bazi."); } if (inkrement.Id != 0) { Inkrement i = repo.Get(inkrement.Id); i.Cijena = inkrement.Cijena; i.IznosInkrementa = inkrement.IznosInkrementa; i.isDeleted = inkrement.isDeleted; repo.Update(i); } else { repo.Insert(inkrement); } } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public void SacuvajGrad(Grad grad) { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <Grad> repo = new DataRepositoryBase <Grad>(context); if (repo.GetAll().Where(x => x.Naziv == grad.Naziv && x.isDeleted == false).FirstOrDefault() != null) { throw new Exception(String.Format("Grad '{0}' već postoji u bazi.", grad.Naziv)); } if (grad.Id != 0) { Grad g = repo.Get(grad.Id); g.Naziv = grad.Naziv; g.isDeleted = grad.isDeleted; repo.Update(g); } else { repo.Insert(grad); } } } catch (Exception ex) { throw new FaultException(ex.Message); } }
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); } }
public void SacuvajKategorija(Kategorija kategorija) { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <Kategorija> repo = new DataRepositoryBase <Kategorija>(context); if (repo.GetAll().Where(x => x.Naziv == kategorija.Naziv && x.isDeleted == false).FirstOrDefault() != null) { throw new Exception(String.Format("Kategorija '{0}' već postoji u bazi.", kategorija.Naziv.ToLower())); } if (kategorija.Id != 0) { Kategorija k = repo.Get(kategorija.Id); k.Naziv = kategorija.Naziv; k.isDeleted = kategorija.isDeleted; repo.Update(k); } else { repo.Insert(kategorija); } } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public int PosaljiPoruku(Poruka poruka) { try { using (BHaoDataContext context = new BHaoDataContext()) { if (String.IsNullOrEmpty(poruka.TextPoruke)) { throw new FaultException("Ne možete poslati praznu poruku!"); } IPorukaRepository repo = new PorukaRepository(context); poruka.Datum = DateTime.Now; poruka.IsObrisanaPosiljalac = false; poruka.IsObrisanaPrimalac = false; Poruka p = repo.Insert(poruka); return(p.Id); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }
public void DodajKomentarArtikla(KomentarArtikla komentar) { try { if (komentar.TextKomentara == null || string.IsNullOrEmpty(komentar.TextKomentara)) { throw new FaultException("Morate unijeti tekst komentara!"); } using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <KomentarArtikla> repo = new DataRepositoryBase <KomentarArtikla>(context); if (repo.GetAll().Where(x => x.ArtikalId == komentar.ArtikalId && x.KomentatorId == komentar.KomentatorId).FirstOrDefault() != null) { throw new FaultException("Već ste jednom komentirali artikal!"); } komentar.Datum = DateTime.Now; repo.Insert(komentar); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }
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!"); } }
public void SacuvajNacinPlacanja(NacinPlacanja nacinPlacanja) { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <NacinPlacanja> repo = new DataRepositoryBase <NacinPlacanja>(context); if (repo.GetAll().Where(x => x.Opis == nacinPlacanja.Opis && x.isDeleted == false).FirstOrDefault() != null) { throw new Exception(String.Format("Način plaćanja '{0}' već postoji u bazi.", nacinPlacanja.Opis.ToLower())); } if (nacinPlacanja.Id != 0) { NacinPlacanja np = repo.Get(nacinPlacanja.Id); np.Opis = nacinPlacanja.Opis; np.isDeleted = nacinPlacanja.isDeleted; repo.Update(np); } else { repo.Insert(nacinPlacanja); } } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public Entities.Aukcija[] GetAllAukcije() { using (BHaoDataContext context = new BHaoDataContext()) { IAukcijaRepository repo = new AukcijaRepository(context); return(repo.GetAll().ToArray()); } }
public void OznaciPregledanArtikla(int komentarId) { using (BHaoDataContext context = new BHaoDataContext()) { IKomentarArtiklaRepository repo = new KomentarArtiklaRepository(context); var komentar = repo.Get(komentarId); komentar.KomentarPregledan = true; repo.Update(komentar); } }
public void testing_repository_access( ) { using (BHaoDataContext context = new BHaoDataContext( )) { IAukcijaRepository repo = new AukcijaRepository(context); Aukcija aukcija = repo.Get(4); Assert.IsTrue(aukcija != null); } }
public void UkloniKomentarArtikla(int komentarId) { using (BHaoDataContext context = new BHaoDataContext()) { IKomentarArtiklaRepository repo = new KomentarArtiklaRepository(context); var komentar = repo.Get(komentarId); komentar.isDeleted = true; repo.Update(komentar); PosaljiPoruku(context, komentar.KomentatorId, komentar.AukcijaId, komentar.TextKomentara); } }
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; } }
public ActionResult Register() { List <Grad> gradovi = new List <Grad>(); using (BHaoDataContext context = new BHaoDataContext()) { GradRepository repo = new GradRepository(context); gradovi = repo.GetAll().ToList(); } ViewBag.Gradovi = new SelectList(gradovi, "Id", "Naziv"); return(View()); }
public Inkrement[] GetInkrementi() { try { using (BHaoDataContext context = new BHaoDataContext()) { InkrementRepository repo = new InkrementRepository(context); return(repo.GetAll().Where(x => x.isDeleted == false).OrderBy(x => x.Cijena).ToArray()); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
private static void PosaljiPoruku(BHaoDataContext context, int komentatorId, int aukcijaId, string textKomentara) { Poruka poruka = new Poruka() { Datum = DateTime.Now, PosiljalacId = 14, PrimalacId = komentatorId, TextPoruke = String.Format("Vaš komentar '{0}' je uklonjen!", textKomentara), AukcijaId = aukcijaId }; PorukaRepository porukaRepo = new PorukaRepository(context); porukaRepo.Insert(poruka); }
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); } }
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); } }
public KorisnikDTO GetKorisnikById(int korisnikId) { try { using (BHaoDataContext context = new BHaoDataContext()) { KorisnikRepository repo = new KorisnikRepository(context); return(repo.GetById(korisnikId)); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public Artikal[] GetArtikli() { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <Artikal> repo = new DataRepositoryBase <Artikal>(context); return(repo.GetAll().Where(x => x.isDeleted == false).ToArray()); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public Grad[] GetGradovi() { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <Grad> repo = new DataRepositoryBase <Grad>(context); return(repo.GetAll().Where(x => x.isDeleted == false).OrderBy(x => x.Naziv).ToArray()); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
public NacinPlacanja[] GetNaciniPlacanja() { try { using (BHaoDataContext context = new BHaoDataContext()) { IDataRepository <NacinPlacanja> repo = new DataRepositoryBase <NacinPlacanja>(context); return(repo.GetAll().Where(x => x.isDeleted == false).ToArray()); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
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); } }
public void KupiOdmah(int aukcijaId, int korisnikId) { try { using (BHaoDataContext context = new BHaoDataContext()) { BHaoBusinessEngine.KupiOdmah(aukcijaId, korisnikId, context); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }
public KomentarArtiklaDTO[] GetKomentariArtikala(bool isPregledan) { try { using (BHaoDataContext context = new BHaoDataContext()) { IKomentarArtiklaRepository repo = new KomentarArtiklaRepository(context); var komentari = repo.GetKomentariPregled(isPregledan); return(komentari); } } catch (Exception ex) { throw new FaultException(ex.Message); } }
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); } }
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); }
public PorukaDTO[] GetPrimljene(int korisnikId) { try { using (BHaoDataContext context = new BHaoDataContext()) { IPorukaRepository repo = new PorukaRepository(context); return(repo.GetPrimljene(korisnikId).ToArray()); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }
public Poruka GetPoruka(int porukaId) { try { using (BHaoDataContext context = new BHaoDataContext()) { IPorukaRepository repo = new PorukaRepository(context); return(repo.Get(porukaId)); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }
public void ObrisiPoruku(PorukaDTO poruka, int korisnikId) { try { using (BHaoDataContext context = new BHaoDataContext()) { IPorukaRepository repo = new PorukaRepository(context); repo.ObrisiPoruku(poruka, korisnikId); } } catch (FaultException ex) { throw ex; } catch (Exception ex) { throw new FaultException(ex.Message); } }