public IActionResult Booking(int id)
        {
            var screening = _service.GetScreening(id);

            ViewData["Screening"] = screening;
            ViewData["Movie"]     = _service.GetMovie(screening.MovieId);

            var room = _service.GetRoom(screening.RoomId);

            ViewData["Room"] = room;

            if (_service.GetSeatsByScreeningId(id).Count <= 0)
            {
                for (Int32 i = 0; i < room.Rows; i++)
                {
                    for (Int32 j = 0; j < room.Columns; j++)
                    {
                        _service.CreateSeat(new Seat
                        {
                            ScreeningId = screening.Id,
                            RoomId      = room.Id,
                            Row         = i,
                            Column      = j,
                            Status      = Status.Free
                        });
                    }
                }
            }

            ViewData["Seats"] = _service.GetSeatsByScreeningId(id);

            return(View());
        }
        public ActionResult <IEnumerable <SeatDto> > GetSeats(Int32 id)
        {
            try
            {
                var seats = _service.GetSeatsByScreeningId(id).Select(seat => (SeatDto)seat).ToList();

                return(seats);
            }
            catch (InvalidOperationException)
            {
                return(NotFound());
            }
        }