// GET: Rezervacijas/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } EditReservation reservation = new EditReservation(); Rezervacija rez = db.Rezervacii.Include(m => m.Korisnik).Include(m => m.Vozilo).Where(m => m.RezervacijaId == id).First();; if (rez == null) { return(HttpNotFound()); } reservation.RezervacijaId = rez.RezervacijaId; reservation.DateFrom = rez.DateFrom.ToString("dd/MM/yyyy"); reservation.DateTo = rez.DateTo.ToString("dd/MM/yyyy"); ViewBag.Poraka = ""; return(View(reservation)); /* * Rezervacija rezervacija = db.Rezervacii.Include(m => m.Korisnik).Include(m => m.Vozilo).Where(m => m.RezervacijaId == id).First(); ; * if (rezervacija == null) * { * return HttpNotFound(); * } * ViewBag.KorisnikId = new SelectList(db.Korisnici, "KorisnikId", "Name", rezervacija.KorisnikId); * ViewBag.VoziloId = new SelectList(db.Vozila, "VoziloId", "ModelName", rezervacija.VoziloId); * return View(rezervacija); */ }
public ActionResult Edit([Bind(Include = "RezervacijaId,DateFrom,DateTo")] EditReservation model) { // if (ModelState.IsValid) // { // db.Entry(rezervacija).State = EntityState.Modified; // db.SaveChanges(); // return RedirectToAction("Index"); // } // ViewBag.KorisnikId = new SelectList(db.Korisnici, "KorisnikId", "Name", rezervacija.KorisnikId); // ViewBag.VoziloId = new SelectList(db.Vozila, "VoziloId", "ModelName", rezervacija.VoziloId); //return View(rezervacija); Rezervacija rezervacija = db.Rezervacii.Find(model.RezervacijaId); // rezervacija.denoviIznajmuvanje = model.denoviIznajmuvanje; string pattern = "dd/MM/yyyy"; DateTime.TryParseExact(model.DateFrom, pattern, null, DateTimeStyles.None, out DateTime dateFrom); DateTime.TryParseExact(model.DateTo, pattern, null, DateTimeStyles.None, out DateTime dateTo); // rezervacija.DateFrom = Convert.ToDateTime(model.DateFrom, new DateTimeFormatInfo { FullDateTimePattern = "dd/MM/yyyy" }); // rezervacija.DateTo = Convert.ToDateTime(model.DateTo, new DateTimeFormatInfo { FullDateTimePattern = "dd/MM/yyyy" }); string dif = (dateTo - dateFrom).TotalDays.ToString(); var vozilo = db.Vozila.Find(rezervacija.VoziloId); double cena = vozilo.PriceDay; if (DateTime.Compare(dateFrom, DateTime.Now.AddDays(-1)) < 0 || DateTime.Compare(dateTo, DateTime.Now) < 0) { ViewBag.Poraka = "Неможе да се резервира во минатото!!!"; return(View(model)); } if (DateTime.Compare(dateFrom, dateTo) >= 0) { ViewBag.Poraka = "Крајниот датум (Датум До) треба да биде поголем од почетниот датум (Датум Од)!!!"; return(View(model)); } var rezervacii = db.Rezervacii.Where(m => m.VoziloId == rezervacija.VoziloId); foreach (var r in rezervacii) { if (r == rezervacija) { continue; } DateTime datumOd = r.DateFrom; DateTime datumDo = r.DateTo; DateTime momentalenDatumOd = dateFrom; DateTime momentalenDatumDo = dateTo; int result1 = DateTime.Compare(datumOd, momentalenDatumOd); int result2 = DateTime.Compare(datumDo, momentalenDatumOd); if (result1 <= 0 && result2 >= 0) { ViewBag.Poraka = "Веќе постои резервација за внесениот термин!!!"; return(View(model)); } int result3 = DateTime.Compare(datumOd, momentalenDatumDo); int result4 = DateTime.Compare(datumDo, momentalenDatumDo); if (result3 <= 0 && result4 >= 0) { ViewBag.Poraka = "Веќе постои резервација за внесениот термин!!!"; return(View(model)); } int result5 = DateTime.Compare(datumOd, momentalenDatumOd); int result6 = DateTime.Compare(datumDo, momentalenDatumDo); if (result5 >= 0 && result6 <= 0) { ViewBag.Poraka = "Веќе постои резервација за внесениот термин!!!"; return(View(model)); } } rezervacija.DateFrom = dateFrom; rezervacija.DateTo = dateTo; rezervacija.denoviIznajmuvanje = Convert.ToInt32(dif); rezervacija.total = cena * rezervacija.denoviIznajmuvanje; db.SaveChanges(); return(RedirectToAction("Index")); }