public IActionResult Dodaj(int id) { string _id = User.FindFirstValue(ClaimTypes.NameIdentifier); int _PrijevoznikID = _db.Prijevoznik.Where(x => x.UserID == int.Parse(_id)).Select(x => x.PrijevoznikID).FirstOrDefault(); PrijevozDodajVM model = new PrijevozDodajVM(); model.PrijevoznikID = _PrijevoznikID; model.TeretRezervacijaID = id; model.BrojacVozila = _db.Vozilo.Where(x => x.PrijevoznikID == _PrijevoznikID).Count(); model.Vozila = _db.Vozilo.Include(x => x.ModelVozila).Where(x => x.PrijevoznikID == _PrijevoznikID).Select(x => new SelectListItem() { Text = x.ModelVozila.Naziv, Value = x.VoziloID.ToString() }).ToList(); return(View(model)); }
public IActionResult Dodaj(PrijevozDodajVM model, int id) { string _id = User.FindFirstValue(ClaimTypes.NameIdentifier); int _PrijevoznikID = _db.Prijevoznik.Where(x => x.UserID == int.Parse(_id)).Select(x => x.PrijevoznikID).FirstOrDefault(); bool trigger = false; List <Prijevoz> prijevozi = _db.Prijevoz.ToList(); List <TeretRezervacija> teretRezervacija = _db.TeretRezervacija.ToList(); foreach (var item in teretRezervacija) { foreach (var item2 in prijevozi) { if (item.PrijevozID == item2.PrijevozID && item2.DatumPotvrde == null && item.Prijevoz.PrijevoznikID == _PrijevoznikID) { Prijevoz prijevoz = _db.Prijevoz.Where(x => x.PrijevozID == item2.PrijevozID).FirstOrDefault(); if (prijevoz != null) { prijevoz.DatumPotvrde = DateTime.Now; prijevoz.DatumPrijevoza = model.DatumPrijevoza; prijevoz.Kilometraza = model.Kilometraza; prijevoz.Cijena = model.Cijena; prijevoz.TipPrijevoza = model.TipPrijevoza; prijevoz.VoziloID = model.VoziloID; TeretRezervacija temp = _db.TeretRezervacija.Where(x => x.TeretRezervacijaID == id).FirstOrDefault(); temp.Prihvaceno = true; _db.SaveChanges(); _notifikacijaService.posaljiNotifikacijeKlijentu(temp.UserID, temp.Prijevoz.PrijevoznikID, new NotifikacijaVM() { Poruka = "Prijevoznik je prihvatio vasu rezervaciju!", Url = "#" }); } trigger = true; } } } if (!trigger) { Prijevoz p = new Prijevoz() { PrijevoznikID = _PrijevoznikID, Cijena = model.Cijena, DatumPotvrde = DateTime.Now, DatumPrijevoza = model.DatumPrijevoza, Kilometraza = model.Kilometraza, TipPrijevoza = model.TipPrijevoza, VoziloID = model.VoziloID }; _db.Prijevoz.Add(p); _db.SaveChanges(); TeretRezervacija temp = _db.TeretRezervacija.Where(x => x.TeretRezervacijaID == id).FirstOrDefault(); if (temp != null) { temp.PrijevozID = p.PrijevozID; temp.Prihvaceno = true; _db.SaveChanges(); } _notifikacijaService.posaljiNotifikacijeKlijentu(temp.UserID, temp.Prijevoz.PrijevoznikID, new NotifikacijaVM() { Poruka = "Prijevoznik je prihvatio vasu rezervaciju!", Url = "#" }); } return(RedirectToActionPermanent(nameof(Index))); }