public async Task <IActionResult> OnPostObrisi(string id) { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idKupac")); if (log) { idKupac = HttpContext.Session.GetString("idKupac"); var coll = _db.GetCollection <Kupac>("Kupci"); Kupac pom1 = coll.Find(x => x.ID == idKupac.ToString()).SingleOrDefault(); var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); Narudzbina pom = new Narudzbina(); foreach (MongoDBRef n in pom1.MojeNarudzbine_) { var filter = Builders <Narudzbina> .Filter.Eq(e => e.ID, n.Id.AsString); Narudzbina npom = coll2.Find(filter).SingleOrDefault(); if (npom.ID == id.ToString()) { pom = npom; } } pom.Procitana = true; coll2.ReplaceOne(x => x.ID == id.ToString(), pom); IzabraniID = null; Console.WriteLine("U fji sam"); return(RedirectToPage()); } else { return(RedirectToPage("../Index")); } }
// GET: Narudzbina public ActionResult Index(int?paket) { if (paket > 0 && paket < 4 && Session["ID"] != null) { Narudzbina n = new Narudzbina(); n.KorisnikID = Int32.Parse(Session["ID"].ToString()); n.DatumPravljenja = DateTime.UtcNow; n.Status = "Cekanje na obradu"; switch (paket) { case 1: n.BrojTokena = 3; n.CenaPaketa = 3; break; case 2: n.BrojTokena = 5; n.CenaPaketa = 5; break; case 3: n.BrojTokena = 10; n.CenaPaketa = 10; break; } db.Narudzbinas.Add(n); db.SaveChanges(); return(RedirectToAction("MojeNarudzbine", "Narudzbina")); } return(View()); }
// GET: Order public ActionResult Index(int id = -1) { if (!checkLoginUser()) { return(RedirectToAction("Login", "Account")); } else { if (id == -1) { return(RedirectToAction("Index", "Home")); } Narudzbina narudzbina = null; using (var context = new IEPVebAukcijaEntities7()) { narudzbina = context.Narudzbinas.Find(id); if (narudzbina == null) { return(HttpNotFound()); } } return(View(narudzbina)); } }
public async Task <IActionResult> OnGet() { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idKupac")); Console.WriteLine(HttpContext.Session.GetString("idKupac")); if (log) { idKupac = HttpContext.Session.GetString("idKupac"); var coll = _db.GetCollection <Kupac>("Kupci"); Ja = coll.Find(x => x.ID == idKupac.ToString()).SingleOrDefault(); Korpa = 0; Naruceno = 0; Potvrdjeno = 0; Isporuceno = 0; Odbijeno = 0; var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); List <Narudzbina> pom = new List <Narudzbina>(); if (Ja.MojeNarudzbine_ != null) { foreach (MongoDBRef n in Ja.MojeNarudzbine_) { var filter = Builders <Narudzbina> .Filter.Eq(e => e.ID, n.Id.AsString); Narudzbina npom = coll2.Find(filter).SingleOrDefault(); pom.Add(npom); if (npom.Status == "Korpa") { Korpa++; } else if (npom.Status == "Naruceno") { Naruceno++; } else if (npom.Status == "Isporuceno") { Isporuceno++; } else if (npom.Status == "Potvrdjeno") { Potvrdjeno++; } else if (npom.Status == "Odbijeno") { Odbijeno++; } } } Ja.MojeNarudzbine = pom; return(Page()); } else { return(RedirectToPage("../Index")); } }
public static List <Narudzbina> GetNarudzbineKorisnika(Guid userId) { ISession session = SessionManager.GetSession(); List <Narudzbina> narudzbine = new List <Narudzbina>(); object pom = new object(); if (session == null) { return(null); } RowSet nars = session.Execute("select * from narudzbinekorisnika where user_id=" + userId); foreach (Row nar in nars) { Narudzbina n = new Narudzbina(); pom = nar["lista_proizvoda"]; n.UserId = userId; n.NarudzbinaId = nar["narudzbina_id"] != null?Guid.Parse(nar["narudzbina_id"].ToString()) : Guid.Empty; n.RestoranId = nar["restoran_id"] != null?Guid.Parse(nar["restoran_id"].ToString()) : Guid.Empty; n.Adresa = nar["adresa"] != null ? nar["adresa"].ToString() : String.Empty; n.Iznos = nar["iznos"] != null ? nar["iznos"].ToString() : String.Empty; // n.ListaProizvoda = nar["lista_proizvoda"] != null ? pom.ToString() : null; n.StatusObrade = nar["status_obrade"] != null ? nar["status_obrade"].ToString() : String.Empty; n.Datum = DateTimeOffset.Parse(nar["datum"].ToString()); narudzbine.Add(n); } return(narudzbine); }
public ActionResult DeleteConfirmed(int id) { Narudzbina narudzbina = db.Narudzbinas.Find(id); db.Narudzbinas.Remove(narudzbina); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "status,id_narudzbine,datum,id_osoba")] Narudzbina narudzbina) { if (ModelState.IsValid) { db.Entry(narudzbina).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View("~/Views/Back-end/AdminNarudzbina/Edit.cshtml", narudzbina)); }
public ActionResult BuyTokens() { bool check = checkLoginUser(); if (check) { int orderID; DateTime datumKreiranja = DateTime.Now; string status = "čekanje na obradu"; using (var context = new IEPVebAukcijaEntities7()) { var newNarudzbina = new Narudzbina() { CenaTokena = null, BrojTokena = 5, DatumPravljenja = datumKreiranja, Status = status, KorisnikID = (int)Session["userID"] }; context.Narudzbinas.Add(newNarudzbina); context.SaveChanges(); orderID = newNarudzbina.NarudzbinaID; } string encodedID = Base64Encode("kljuc_" + orderID); using (var context = new IEPVebAukcijaEntities7()) { Narudzbina narudzbina = context.Narudzbinas.Find(orderID); Korisnik korisnik = context.Korisniks.Find(narudzbina.KorisnikID); narudzbina.CenaTokena = (decimal)5; narudzbina.BrojTokena = 20; narudzbina.Status = "realizovana"; korisnik.BrojTokena += 20; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); context.Entry(korisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } var CentiliLink = "https://stage.centili.com/payment/widget?apikey=c1b12df447e0a198c459bc2505960ca7"; return(Redirect(CentiliLink)); // return RedirectToAction("ViewProfile", "Account"); } return(RedirectToAction("Index", "Home")); }
public ActionResult Narudzbina(int id) { Narudzbina n = db.Narudzbinas.Find(id); int idk = Int32.Parse(Session["ID"].ToString());; if (n.KorisnikID != idk) { return(RedirectToAction("Index", "Home")); } return(View(n)); }
public ActionResult Edit([Bind(Include = "IdNar,BrTokena,Cena,Status,IdKor")] Narudzbina narudzbina) { if (ModelState.IsValid) { db.Entry(narudzbina).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.IdKor = new SelectList(db.Korisniks, "IdKor", "Ime", narudzbina.IdKor); return(View(narudzbina)); }
public ActionResult Create([Bind(Include = "IdNar,BrTokena,Cena,Status,IdKor")] Narudzbina narudzbina) { if (ModelState.IsValid) { db.Narudzbinas.Add(narudzbina); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.IdKor = new SelectList(db.Korisniks, "IdKor", "Ime", narudzbina.IdKor); return(View(narudzbina)); }
// GET: AdminNarudzbina/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Narudzbina adminNarudzbina = db.Narudzbinas.Find(id); if (adminNarudzbina == null) { return(HttpNotFound()); } return(View("~/Views/Back-end/AdminNarudzbina/Edit.cshtml", adminNarudzbina)); }
// GET: Narudzbinas/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Narudzbina narudzbina = db.Narudzbinas.Find(id); if (narudzbina == null) { return(HttpNotFound()); } return(View(narudzbina)); }
// GET: Narudzbinas/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Narudzbina narudzbina = db.Narudzbinas.Find(id); if (narudzbina == null) { return(HttpNotFound()); } ViewBag.IdKor = new SelectList(db.Korisniks, "IdKor", "Ime", narudzbina.IdKor); return(View(narudzbina)); }
public async Task <IActionResult> OnPostIsporuceno() { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idProdavac")); if (log) { var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); Narudzbina pom = coll2.Find(x => x.ID == Narudzbina.ID).SingleOrDefault(); pom.Status = "Isporuceno"; coll2.ReplaceOne(x => x.ID == pom.ID, pom); return(RedirectToPage("./ListaPristiglihNarudzbina")); } else { return(RedirectToPage("../Index")); } }
public int AddNarudzbinu(Narudzbina v) { try { ISession s = DataLayer.GetSession(); s.Save(v); s.Flush(); s.Close(); return(1); } catch (Exception ec) { return(-1); } }
public async Task <IActionResult> OnPostKupi() { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idKupac")); if (log) { idKupac = HttpContext.Session.GetString("idKupac"); var coll = _db.GetCollection <Kupac>("Kupci"); Kupac pom1 = coll.Find(x => x.ID == idKupac.ToString()).SingleOrDefault(); var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); var coll3 = _db.GetCollection <Prodavac>("Prodavci"); if (pom1.MojeNarudzbine_ != null) { foreach (MongoDBRef n in pom1.MojeNarudzbine_.ToList()) { var filter = Builders <Narudzbina> .Filter.Eq(e => e.ID, n.Id.AsString); Narudzbina npom = coll2.Find(filter).SingleOrDefault(); if (npom.Status == "Korpa") { Prodavac pommm = coll3.Find(x => x.ID == npom.NarucenProizvod_.MojProdavac.Id.AsString).SingleOrDefault(); npom.Status = "Narucen"; if (pommm.MojeNarudzbine == null) { pommm.MojeNarudzbine = new List <MongoDBRef>(); } pommm.MojeNarudzbine.Add(new MongoDBRef("mojenarudzbine", npom.ID)); coll3.ReplaceOne(x => x.ID == pommm.ID, pommm); coll2.ReplaceOne(x => x.ID == npom.ID, npom); } } } return(RedirectToPage()); } else { return(RedirectToPage("../Index")); } }
public int RemoveNarudzbinu(int id) { try { ISession s = DataLayer.GetSession(); Narudzbina v = s.Load <Narudzbina>(id); s.Delete(v); s.Flush(); s.Close(); return(1); } catch (Exception exc) { return(-1); } }
public ActionResult KreirajNarudzbinu(string Narudzbenice) { // Narudzbenice --> "1:1,7:1,3:2" var trenutniKorisnikId = int.Parse(Session["id_osoba"].ToString()); Narudzbina narudzbina = new Narudzbina { id_osoba = trenutniKorisnikId, datum = DateTime.Now, status = AdminNarudzbina.AKTIVNA }; narudzbina = db.Narudzbinas.Add(narudzbina); db.SaveChanges(); List <string> narudzbenicePairsString = Narudzbenice.Split(',').ToList(); // --> [ "1:1", "7:1", "3:2" ] Debug.WriteLine("COUNT: " + narudzbenicePairsString.Count()); List <Narudzbina_Knjiga> narudzbina_Knjigas = new List <Narudzbina_Knjiga>(); foreach (var stringPair in narudzbenicePairsString) { List <string> narudzbeniceKeyVal = stringPair.Split(':').ToList(); // --> [ "1", "1" ] int IDKnjige = int.Parse(narudzbeniceKeyVal.ElementAt(0)); // --> 1 int Kolicina = int.Parse(narudzbeniceKeyVal.ElementAt(1)); // --> 1 Narudzbina_Knjiga nk = new Narudzbina_Knjiga { id_knjige = IDKnjige, kolicina = Kolicina, id_narudzbine = narudzbina.id_narudzbine }; narudzbina_Knjigas.Add(nk); } db.Narudzbina_Knjiga.AddRange(narudzbina_Knjigas); db.SaveChanges(); Session["Cart"] = null; return(View("~/Views/Front-end/FrontKnjige/Narudzbina.cshtml")); }
public ActionResult EndPoint(string clientid, string status, int amount, double enduserprise) { string decodedID = Base64Decode(clientid); string[] splitedWords = decodedID.Split('_'); int id = Int32.Parse(splitedWords[0]); using (var context = new IEPVebAukcijaEntities7()) { if (status.Equals("success")) { Narudzbina narudzbina = context.Narudzbinas.Find(id); Korisnik korisnik = context.Korisniks.Find(narudzbina.KorisnikID); narudzbina.CenaTokena = (decimal)enduserprise; narudzbina.BrojTokena = amount; narudzbina.Status = "realizovana"; korisnik.BrojTokena += amount; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); context.Entry(korisnik).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } else { Narudzbina narudzbina = context.Narudzbinas.Find(id); narudzbina.Status = "poništena"; context.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; context.SaveChanges(); } } return(ViewProfile()); }
public async Task <IActionResult> OnGet(int?pageIndex) { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idKupac")); if (log) { idKupac = HttpContext.Session.GetString("idKupac"); var coll = _db.GetCollection <Kupac>("Kupci"); Ja = coll.Find(x => x.ID == idKupac.ToString()).SingleOrDefault(); var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); List <Narudzbina> pom = new List <Narudzbina>(); if (Ja.MojeNarudzbine_ != null) { foreach (MongoDBRef n in Ja.MojeNarudzbine_) { var filter = Builders <Narudzbina> .Filter.Eq(e => e.ID, n.Id.AsString); Narudzbina npom = coll2.Find(filter).SingleOrDefault(); if (npom.Status != "Korpa") { pom.Add(npom); } } } Ja.MojeNarudzbine = pom; IQueryable <Narudzbina> narudzbineIQ = pom.AsQueryable(); pageSize = Convert.ToInt32(HttpContext.Session.GetString("pageSize")); narudzbine = await PaginatedList <Narudzbina> .CreateAsync( narudzbineIQ, pageIndex ?? 1, pageSize); return(Page()); } else { return(RedirectToPage("../Index")); } }
public IHttpActionResult NapraviNovuNarudzbinu(NovaNarudzbinaDto novaNarduzvina) { double ukupnaVrednost = 0; foreach (var jelo in novaNarduzvina.Jela) { ukupnaVrednost = ukupnaVrednost + Convert.ToDouble(jelo.UkupnaVrednost); } var narudzbina = new Narudzbina { DatumVreme = DateTime.Now, UkupnaVrednost = ukupnaVrednost, Kompletirana = true }; _context.Narudzbina.Add(narudzbina); _context.SaveChanges(); foreach (var jelo in novaNarduzvina.Jela) { var id = Convert.ToInt32(jelo.JeloId); var jeloInDb = _context.Jelo.Single(j => j.Id == id); var stavkaNarudzbine = new StavkaNarudzbine() { JeloId = Convert.ToInt32(jelo.JeloId), JedinicnaCena = jeloInDb.JedinicnaCena, Kolicina = jelo.Kolicina, Vrednost = jelo.UkupnaVrednost, NarudzbinaId = narudzbina.Id }; _context.StavkaNarudzbine.Add(stavkaNarudzbine); _context.SaveChanges(); } return(Ok()); }
public ActionResult CentiliReturn(string status) { if (Session["uloga"] == null || Session["uloga"].ToString() == "admin") { return(RedirectToAction("UnauthorizedAccess")); } using (baza db = new baza()) { string email = Session["email"].ToString(); Korisnik korisnik = db.Korisniks.Where(a => a.Email == email).FirstOrDefault <Korisnik>(); Narudzbina narudzbina = db.Narudzbinas.Where(a => a.IdKor == korisnik.IdKor).OrderByDescending(x => x.IdNar).FirstOrDefault(); if (status == "success") { narudzbina.Status = "realizovana"; db.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; korisnik.BrTokena = korisnik.BrTokena + narudzbina.BrTokena; korisnik.PotvrdaLozinke = korisnik.Lozinka; db.Entry(korisnik).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); SendEmail(); return(RedirectToAction("Tokens")); } else { narudzbina.Status = "ponistena"; db.Entry(narudzbina).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(RedirectToAction("FailedPurchase")); } } }
public async Task <IActionResult> OnGet() { bool log = !string.IsNullOrEmpty(HttpContext.Session.GetString("idKupac")); if (log) { idKupac = HttpContext.Session.GetString("idKupac"); var coll = _db.GetCollection <Kupac>("Kupci"); Ja = coll.Find(x => x.ID == idKupac.ToString()).SingleOrDefault(); var coll2 = _db.GetCollection <Narudzbina>("Narudzbine"); List <Narudzbina> pom = new List <Narudzbina>(); if (Ja.MojeNarudzbine_ != null) { foreach (MongoDBRef n in Ja.MojeNarudzbine_) { var filter = Builders <Narudzbina> .Filter.Eq(e => e.ID, n.Id.AsString); Narudzbina npom = coll2.Find(filter).SingleOrDefault(); if (npom.Status != "Korpa") { npom.ProfilKorisnika_ = Ja; pom.Add(npom); } } } Ja.MojeNarudzbine = pom; Narudzbine = pom; IzabraniID = null; return(Page()); } else { return(RedirectToPage("../Index")); } }
public ActionResult Order(int numOfTokens) { if (Session["uloga"] == null || Session["uloga"].ToString() == "admin") { return(RedirectToAction("UnauthorizedAccess")); } using (baza db = new baza()) { string email = Session["email"].ToString(); Korisnik korisnik = db.Korisniks.Where(a => a.Email.Equals(email)).FirstOrDefault <Korisnik>(); Narudzbina narudzbina = new Narudzbina(); narudzbina.IdKor = korisnik.IdKor; narudzbina.Korisnik = korisnik; narudzbina.Status = "cekanje na obradu"; narudzbina.Cena = 50; narudzbina.BrTokena = numOfTokens; db.Narudzbinas.Add(narudzbina); db.SaveChanges(); return(Redirect("http://stage.centili.com/payment/widget?apikey=7a6ac8db85d69ee617967f6b11548879&returnurl=iep_projekat.cloudapp.net/Home/CentiliReturn/?status=success")); } }
public async Task <List <OutOrderDTO> > Add(InOrderDTO model, HttpContext context) { if (model == null || model.ListaElemenata == null || model.ListaElemenata.Count == 0) { return(null); } string userName = TokensHelper.GetClaimFromJwt(context, ClaimTypes.Name); var user = await _userManager.FindByNameAsync(userName); if (user == null) { throw new ErrorException(ErrorCode.UserNotFound, "Prodavac ne postoji u sistemu."); } var listaNarudzbina = new List <Narudzbina>(); foreach (var el in model.ListaElemenata) { var proizvod = _db.Proizvodi.Where(p => p.Id == el.Id)?.Include(i => i.Prodavac).FirstOrDefault(); if (proizvod == null) { continue; } var narudzbinaZaOvogProdavca = listaNarudzbina.FirstOrDefault(n => n.Prodavac.Id == proizvod.Prodavac.Id); if (narudzbinaZaOvogProdavca == null) { narudzbinaZaOvogProdavca = new Narudzbina { Id = Guid.NewGuid(), ListaElemenata = new List <ElementKorpe> { new ElementKorpe { Id = Guid.NewGuid(), Kolicina = el.Kolicina, Proizvod = proizvod } }, Kupac = user, StatusNarudzbine = StatusNarudzbine.Nova, VremeIsporukeUDanima = null, Prodavac = proizvod.Prodavac }; listaNarudzbina.Add(narudzbinaZaOvogProdavca); } else { narudzbinaZaOvogProdavca.ListaElemenata.Add(new ElementKorpe { Id = Guid.NewGuid(), Kolicina = el.Kolicina, Proizvod = proizvod }); } } foreach (var narudzbina in listaNarudzbina) { narudzbina.DatumNarudzbine = DateTime.UtcNow; _db.Narudzbine.Add(narudzbina); } try { await _db.SaveChangesAsync(); } catch (Exception) { throw new ErrorException(ErrorCode.DbError, "Greška pri čuvanju narudzbine u bazu podataka."); } var outListaNarudzbina = new List <OutOrderDTO>(); foreach (var narudzbina in listaNarudzbina) { var outNar = new OutOrderDTO { Id = narudzbina.Id, Prodavac = new Account { FirstName = narudzbina.Prodavac.FirstName, LastName = narudzbina.Prodavac.LastName, Email = narudzbina.Prodavac.Email, PhoneNumber = narudzbina.Prodavac.PhoneNumber }, ListaElemenata = new List <OutElementKorpeDTO>() }; foreach (var el in narudzbina.ListaElemenata) { outNar.ListaElemenata.Add(new OutElementKorpeDTO { Kolicina = el.Kolicina, Proizvod = new OutProizvodDTO { Id = el.Proizvod.Id, Naziv = el.Proizvod.Naziv, Cena = el.Proizvod.Cena, Opis = el.Proizvod.Opis, NacinKoriscenja = el.Proizvod.NacinKoriscenja, Prodavac = null } }); } outListaNarudzbina.Add(outNar); } return(outListaNarudzbina); }