public void PartTwo() { //< Looking for IDs that are missing.. but also have existing +1/-1 seats var inputLines = Helpers.FileHelper.ParseFile(InputFile); //< Parse each input line into a final 'SeatID' var seatIDs = inputLines.Select(x => BoardingPass.GetSeatID(x)); //< Get a map of all existing ID -> SeatID pairs var seatMap = seatIDs.ToDictionary(x => x.ID, x => x); var possible = new List <SeatID>(); for (int x = 0; x < BoardingPass.Rows.Count(); x++) { for (int y = 0; y < BoardingPass.Columns.Count(); y++) { var seatID = new SeatID(x, y); if (!seatMap.ContainsKey(seatID.ID)) { int prevID = seatID.ID - 1; int nextID = seatID.ID + 1; if (seatMap.ContainsKey(prevID) && seatMap.ContainsKey(nextID)) { possible.Add(seatID); } } } } Assert.IsTrue(possible.Single().ID == 504); }
public ActionResult DeleteConfirmed(int id) { SeatID seatID = db.SeatIDs.Find(id); db.SeatIDs.Remove(seatID); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "SeatID1,TMID,TicketID")] SeatID seatID) { if (ModelState.IsValid) { db.Entry(seatID).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.TMID = new SelectList(db.TheaterMovies, "TMID", "TMID", seatID.TMID); ViewBag.TicketID = new SelectList(db.Tickets, "TicketID", "UserID", seatID.TicketID); return(View(seatID)); }
// GET: SeatIDs/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } SeatID seatID = db.SeatIDs.Find(id); if (seatID == null) { return(HttpNotFound()); } return(View(seatID)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } SeatID seatID = db.SeatIDs.Find(id); if (seatID == null) { return(HttpNotFound()); } ViewBag.TMID = new SelectList(db.TheaterMovies, "TMID", "TMID", seatID.TMID); ViewBag.TicketID = new SelectList(db.Tickets, "TicketID", "UserID", seatID.TicketID); return(View(seatID)); }
protected void bindSeatList() { DataTableConversion lsttodt = new DataTableConversion(); ISeatService service = new SeatService(); var lst = service.Lists().Select(x => new { Name = x.SeatNumber + " " + x.SeatSide, x.ID }).ToList(); DataTable dt = lsttodt.ToDataTable(lst); if (dt != null && dt.Rows.Count > 0) { SeatID.DataSource = dt; SeatID.DataTextField = "Name"; SeatID.DataValueField = "ID"; SeatID.DataBind(); } else { SeatID.DataBind(); } }
public ActionResult MakeReservation(int?numOfTickets, int?tmid) { if (numOfTickets < 1 || numOfTickets == null || tmid == null || tmid == 0) { var theaterMovies = db.TheaterMovies.Include(x => x.Movy).Include(x => x.Showtime).Include(x => x.Theater).Include(x => x.SeatIDs); TheaterMovy tm = db.TheaterMovies.Where(x => x.TMID == tmid).SingleOrDefault(); Session["error"] = "you missed something. Double check you chose a time AND how many tickets you want"; return(RedirectToAction("GetReservation", new { theaterID = (int)Session["selectedTheater"], movieID = (int)Session["selectedMovie"] })); } string userID; if (Request.IsAuthenticated) { userID = User.Identity.GetUserId(); } else { userID = "761aa9be-9849-4596-a8e7-d30611343cb9"; } for (int i = 0; i < numOfTickets; i++) { Ticket t = new Ticket(); t.UserID = userID; db.Tickets.Add(t); } db.SaveChanges(); var purchasedTickets = db.Tickets.Where(x => x.UserID == userID).OrderBy(x => x.TicketID).Take((int)numOfTickets).ToList(); foreach (var item in purchasedTickets) { SeatID s = new SeatID(); s.TMID = (int)tmid; s.TicketID = item.TicketID; db.SeatIDs.Add(s); } db.SaveChanges(); return(View()); }