public IActionResult Create(int Id) { ScreeningRoom screeningRoom = _db.ScreeningRoom.Find(Id); List <List <Seat> > seats = new List <List <Seat> >(); for (int i = 0; i < screeningRoom.NumberOfRows; i++) { List <Seat> tempList = new List <Seat>(); for (int j = 0; j < screeningRoom.NumberOfSeatsPerRow; j++) { tempList.Add(new Seat() { RowNumber = i, SeatNumber = j, IdScreeningRoom = Id, IsValid = true }); } seats.Add(tempList); } SeatVM obj = new SeatVM() { IdCinema = (int)screeningRoom.IdCinema, Seats = seats }; return(View(obj)); }
public async Task <ActionResult <ScreeningRoom> > PatchRoom(int id, [FromForm] ScreeningRoom room) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var existingRoom = context.ScreeningRooms.FirstOrDefault(sm => sm.ScreeningRoomId == id); if (existingRoom == null) { return(NotFound()); } if (room.ScreeningRoomId != id) { return(BadRequest()); } existingRoom.Patch(room); context.Update(existingRoom); await context.SaveChangesAsync(); return(new OkObjectResult(room)); }
//Create Get public IActionResult Create(int Id) { ScreeningRoom obj = new ScreeningRoom() { IdCinema = Id }; return(View(obj)); }
public IActionResult Create(ScreeningRoom obj) { if (ModelState.IsValid) { obj.Id = 0; _db.Add(obj); _db.SaveChanges(); return(RedirectToAction("Create", "Seat", new { Id = obj.Id })); } return(View(obj)); }
public async void AddsScreeningRoom() { var context = InMemoryDbContextFactory.GetDbContext(); var controller = new ScreeningRoomsController(context); var ScreeningRoom = new ScreeningRoom { Name = "room1" }; var response = await controller.AddScreeningRoom(ScreeningRoom); Assert.IsType <OkObjectResult>(response.Result); var okRes = (OkObjectResult)response.Result; Assert.Equal("room1", ((ScreeningRoom)okRes.Value).Name); }
public async Task <ActionResult <ScreeningRoom> > AddScreeningRoom([FromForm] ScreeningRoom room) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (context.ScreeningRooms.FirstOrDefault(sm => sm.Name == room.Name) != null) { return(Conflict()); } context.Add(room); await context.SaveChangesAsync(); return(new OkObjectResult(room)); }
public IActionResult Edit(ScreeningRoom obj) { if (ModelState.IsValid) { var objFromDb = _db.ScreeningRoom.AsNoTracking().FirstOrDefault(m => m.Id == obj.Id); if (obj.NumberOfRows != objFromDb.NumberOfRows || obj.NumberOfSeatsPerRow != objFromDb.NumberOfSeatsPerRow) { IEnumerable <Seat> seats = _db.Seat.Where(s => s.IdScreeningRoom == obj.Id).ToList(); foreach (var seat in seats) { _db.Remove(seat); } _db.Update(obj); _db.SaveChanges(); return(RedirectToAction("Create", "Seat", new { Id = obj.Id })); } _db.Update(obj); _db.SaveChanges(); return(RedirectToAction("Index", new { Id = obj.IdCinema })); } return(View(obj)); }
public async void PatchesScreeningRoom() { var context = InMemoryDbContextFactory.GetDbContext(); context.Add(new ScreeningRoom { ScreeningRoomId = 1, Name = "room1" }); await context.SaveChangesAsync(); var controller = new ScreeningRoomsController(context); var ScreeningRoom = new ScreeningRoom { ScreeningRoomId = 1, Name = "room2" }; var response = await controller.PatchRoom(ScreeningRoom.ScreeningRoomId, ScreeningRoom); Assert.IsType <OkObjectResult>(response.Result); var okRes = (OkObjectResult)response.Result; Assert.Equal("room2", ((ScreeningRoom)okRes.Value).Name); }
private static void LoadScreeningRooms() { screeningRooms = new List <ScreeningRoom>(); //define room 1 and 2 ScreeningRoom screeningRoom1 = new ScreeningRoom(); screeningRoom1.Name = "1"; screeningRoom1.NumberOfSeats = 150; screeningRooms.Add(screeningRoom1); ScreeningRoom screeningRoom2 = new ScreeningRoom(); screeningRoom2.Name = "2"; screeningRoom2.NumberOfSeats = 365; screeningRooms.Add(screeningRoom2); ScreeningRoom screeningRoom3 = new ScreeningRoom(); screeningRoom3.Name = "3"; screeningRoom3.NumberOfSeats = 289; screeningRooms.Add(screeningRoom3); }
protected override void Seed(CinemaSupport.Data.CinemaSupportContext context) { // This method will be called after migrating to the latest version. // You can use the DbSet<T>.AddOrUpdate() helper extension method // to avoid creating duplicate seed data. //seats screening room a var seatARoomIdACinemaA = new Seat() { SeatId = 1, ScreeningRoomId = 1, State = false }; var seatBRoomIdACinemaA = new Seat() { SeatId = 2, ScreeningRoomId = 1, State = false }; var seatCRoomIdACinemaA = new Seat() { SeatId = 3, ScreeningRoomId = 1, State = false }; var seatDRoomIdACinemaA = new Seat() { SeatId = 4, ScreeningRoomId = 1, State = false }; var seatERoomIdACinemaA = new Seat() { SeatId = 5, ScreeningRoomId = 1, State = false }; var seatFRoomIdACinemaA = new Seat() { SeatId = 6, ScreeningRoomId = 1, State = false }; //seats screening room b var seatARoomIdBCinemaA = new Seat() { SeatId = 7, ScreeningRoomId = 2, State = false }; var seatBRoomIdBCinemaA = new Seat() { SeatId = 8, ScreeningRoomId = 2, State = false }; var seatCRoomIdBCinemaA = new Seat() { SeatId = 9, ScreeningRoomId = 2, State = false }; var seatDRoomIdBCinemaA = new Seat() { SeatId = 10, ScreeningRoomId = 2, State = false }; // c var seatARoomIdCCinemaA = new Seat() { SeatId = 11, ScreeningRoomId = 3, State = false }; var seatBRoomIdCCinemaA = new Seat() { SeatId = 12, ScreeningRoomId = 3, State = false }; var seatCRoomIdCCinemaA = new Seat() { SeatId = 13, ScreeningRoomId = 4, State = false }; //d var seatARoomIdDCinemaA = new Seat() { SeatId = 14, ScreeningRoomId = 5, State = false }; //movies var movieA = new Movie() { MovieId = 1, Duration = 150, Picture = "https://cdn.galleries.smcloud.net/t/photos/gf-hYbT-USnH-FeHt_harry-potter-zabity-przez-voldemorta-szokujaca-teoria-o-zakonczeniu-kultowej-serii.jpg", Title = "Harry Potter" }; var movieB = new Movie() { MovieId = 2, Duration = 200, Picture = "https://is4-ssl.mzstatic.com/image/thumb/Video49/v4/0f/af/2d/0faf2dee-0f61-0da7-5a92-c460617bca80/pr_source.lsr/268x0w.png", Title = "Dirty Harry" }; var movieC = new Movie() { MovieId = 3, Duration = 60, Picture = "https://is2-ssl.mzstatic.com/image/thumb/Music/y2004/m05/d21/h00/s05.hpejtcra.jpg/268x0w.jpg", Title = "E.T." }; //screenings var screeningARoomIdACinemaA = new Screening() { ScreeningId = 1, ScreeningRoomId = 1, MovieId = 1, Status = false, ScreeningDate = "18 July 2019 - 15.00", }; var screeningBRoomIdACinemaA = new Screening() { ScreeningId = 2, ScreeningRoomId = 1, MovieId = 1, Status = false, ScreeningDate = "18 July 2019 - 21.30", }; var screeningCRoomIdACinemaA = new Screening() { ScreeningId = 3, ScreeningRoomId = 1, MovieId = 1, Status = false, ScreeningDate = "20 July 2019 - 9.30", }; var screeningDRoomIdACinemaA = new Screening() { ScreeningId = 4, ScreeningRoomId = 1, MovieId = 2, Status = false, ScreeningDate = "18 July 2019 - 9.00", }; var screeningERoomIdACinemaA = new Screening() { ScreeningId = 5, ScreeningRoomId = 1, MovieId = 2, Status = false, ScreeningDate = "19 July 2019 - 21.30", }; var screeningFRoomIdACinemaA = new Screening() { ScreeningId = 6, ScreeningRoomId = 1, MovieId = 3, Status = false, ScreeningDate = "20 July 2019 - 9.30", }; //screening rooms var screeningRoomACinemaA = new ScreeningRoom() { ScreeningRoomId = 1, Name = "ScreeningRoom 1", CinemaId = 1, Floor = 1, }; var screeningRoomBCinemaA = new ScreeningRoom() { ScreeningRoomId = 2, Name = "ScreeningRoom 2", CinemaId = 1, Floor = 2, }; var screeningRoomCCinemaA = new ScreeningRoom() { ScreeningRoomId = 3, Name = "ScreeningRoom 3", CinemaId = 1, Floor = 3, }; var screeningRoomDCinemaA = new ScreeningRoom() { ScreeningRoomId = 4, Name = "ScreeningRoom 4", CinemaId = 1, Floor = 1, }; //cinemas var cinemaIdA = 1; var cinemaA = new Cinema() { CinemaId = cinemaIdA, Name = "Cinema1", }; // tickets var ticketA = new Ticket() { TicketId = 1, Actor = "Filip", Price = 20, TicketType = TicketType.Normal, Purchased = true, Validated = false, ScreeningId = 1, SeatId = 1 }; var ticketB = new Ticket() { TicketId = 2, Actor = "Filip", Price = 15, TicketType = TicketType.Reduced, Purchased = true, Validated = false, ScreeningId = 1, SeatId = 2 }; var ticketC = new Ticket() { TicketId = 3, Price = 20, TicketType = TicketType.Normal, Purchased = true, Validated = false, ScreeningId = 2, SeatId = 4 }; //clients //cinemas //adding to db context.Cinemas.AddOrUpdate(cinemaA); context.Movies.AddOrUpdate(new Movie[] { movieA, movieB, movieC }); context.ScreeningRooms.AddOrUpdate(screeningRoomACinemaA, screeningRoomBCinemaA, screeningRoomCCinemaA, screeningRoomDCinemaA); context.Screenings.AddOrUpdate(new Screening[] { screeningARoomIdACinemaA, screeningBRoomIdACinemaA, screeningCRoomIdACinemaA, screeningDRoomIdACinemaA, screeningERoomIdACinemaA, screeningFRoomIdACinemaA }); context.Seats.AddOrUpdate(new Seat[] { seatARoomIdACinemaA, seatBRoomIdACinemaA, seatCRoomIdACinemaA, seatDRoomIdACinemaA, seatERoomIdACinemaA, seatFRoomIdACinemaA, seatARoomIdBCinemaA, seatBRoomIdBCinemaA, seatCRoomIdBCinemaA, seatDRoomIdBCinemaA, seatARoomIdCCinemaA, seatBRoomIdCCinemaA, seatCRoomIdCCinemaA, seatARoomIdDCinemaA }); context.Tickets.AddOrUpdate(new Ticket[] { ticketA, ticketB, ticketC }); }
public static ScreeningRoomDto ConvertDto(this ScreeningRoom value) { return(ScreeningRoomDto.Map(value)); }
public static ScreeningRoomDto Map(ScreeningRoom value) { return(Mapper.Map <ScreeningRoomDto>(value)); }