// GET: PSlots/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PSlot pSlot = db.PSlots.Find(id); if (pSlot == null) { return(HttpNotFound()); } return(View(pSlot)); }
// GET: PSlots/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PSlot pSlot = db.PSlots.Find(id); if (pSlot == null) { return(HttpNotFound()); } ViewBag.Id = id; ViewBag.MemberId = new SelectList(db.Members, "Id", "SSN", pSlot.MemberId); ViewBag.VehicleTypeId = new SelectList(db.VehicleTypes, "Id", "TypeOfVehicle", pSlot.VehicleTypeId); return(View(pSlot)); }
public ActionResult Create([Bind(Include = "Id,MemberId,VehicleTypeId,ParkingSlot,VehicleRegistrationNumber,VehicleBrand,VehicleModel,Color,TiresOnVehicle,StartParking")] PSlot pSlot) { ViewBag.FreeSlots = Capacity - db.PSlots.Where(g => (g.ParkingSlot > 0)).Count(); ViewBag.Capacity = Capacity; var model = db.PSlots.OrderBy(db => db.ParkingSlot); var usedSlots = model.Where(db => (db.ParkingSlot > 0)); int tester1 = 0; int tester2 = 0; int tester3 = 0; ViewBag.FreeSlot = 0; foreach (var item in usedSlots) { tester2 = item.ParkingSlot; if (tester2 - tester1 > 1) { ViewBag.FreeSlot = tester2 - 1; break; } tester1++; tester3 = item.ParkingSlot; } if (ViewBag.FreeSlot == 0 && tester3 < Capacity) { ViewBag.FreeSlot = tester3 + 1; } var model2 = new PSlot { ParkingSlot = ViewBag.FreeSlot }; if (ModelState.IsValid) { db.PSlots.Add(pSlot); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.MemberId = new SelectList(db.Members, "Id", "SSN", pSlot.MemberId); ViewBag.VehicleTypeId = new SelectList(db.VehicleTypes, "Id", "TypeOfVehicle", pSlot.VehicleTypeId); return(View(pSlot)); }
// GET: PSlots/Delete/5 public ActionResult Unpark(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } PSlot pSlot = db.PSlots.Find(id); if (pSlot == null) { return(HttpNotFound()); } ViewBag.timeInPSlots = Math.Round((DateTime.Now - db.PSlots.Find(id).StartParking).TotalHours, 2); //ViewBag.CurrentCost = Math.Max(Math.Round(ViewBag.timeInPSlots*2*60, 0),45); ViewBag.CurrentCost = Math.Round(ViewBag.timeInPSlots * MinutePrice * 60, 0); ViewBag.CurrentPricingModel = MinutePrice + " SEK/minute"; return(View(pSlot)); }
// GET: PSlots/Create public ActionResult Park() { ViewBag.FreeSlots = Capacity - db.PSlots.Where(g => (g.ParkingSlot > 0)).Count(); ViewBag.Capacity = Capacity; var model = db.PSlots.OrderBy(db => db.ParkingSlot); var usedSlots = model.Where(db => (db.ParkingSlot > 0)); int tester1 = 0; int tester2 = 0; int tester3 = 0; ViewBag.FreeSlot = 0; foreach (var item in usedSlots) { tester2 = item.ParkingSlot; if (tester2 - tester1 > 1) { ViewBag.FreeSlot = tester2 - 1; break; } tester1++; tester3 = item.ParkingSlot; } if (ViewBag.FreeSlot == 0 && tester3 < Capacity) { ViewBag.FreeSlot = tester3 + 1; } var model2 = new PSlot { ParkingSlot = ViewBag.FreeSlot }; ViewBag.MemberId = new SelectList(db.Members, "Id", "SSN"); ViewBag.VehicleTypeId = new SelectList(db.VehicleTypes, "Id", "TypeOfVehicle"); return(View(model2)); }