Exemplo n.º 1
0
 /// <summary>
 /// Update an existing Booking in the Database.
 /// </summary>
 /// <param name="p_booking">Bookingobject with an ID.</param>
 /// <returns>The same Bookingobject, or NULL.</returns>
 public HttpResponseMessage Put([FromBody] CurrentBooking p_booking)
 {
     try
     {
         return(Request.CreateResponse(HttpStatusCode.OK, _bookingService.Save(p_booking)));
     }
     catch (Exception ex)
     {
         return(HandleGeneralError(ex));
     }
 }
Exemplo n.º 2
0
        public ActionResult SaveCart()
        {
            string     userid = FetchUserId();
            HttpCookie cookie = Request.Cookies["CartCookie"];

            if (cookie == null)
            {
                return(new HttpNotFoundResult());
            }
            int cartid = Convert.ToInt32(cookie["CartId"]);
            List <UnauthenticatedCart> unauthenticatedCarts = new List <UnauthenticatedCart>();

            unauthenticatedCarts = _context.UnauthenticatedCarts.Where(p => p.cartId == cartid).ToList();
            Bookings bookings = new Bookings();

            bookings.userId      = userid;
            bookings.bookingDate = DateTime.Now;
            List <Movie> movies = new List <Movie>();
            List <Genre> genres = new List <Genre>();

            movies = _context.Movies.Where(p => unauthenticatedCarts.Any(q => q.movieId == p.movieId)).ToList();
            genres = _context.Genres.Where(p => movies.Any(q => q.genreId == p.genreId)).ToList();
            foreach (var m in unauthenticatedCarts)
            {
                _context.UnauthenticatedCarts.Remove(m);
                _context.SaveChanges();
            }
            float totalprice = 0;

            foreach (var m in movies)
            {
                totalprice += m.moviePrice;
            }
            bookings.totalPrice = totalprice;
            _context.Bookings.Add(bookings);
            _context.SaveChanges();
            BookedMoviesList bookedMoviesList = new BookedMoviesList();

            bookedMoviesList.bookingId = bookings.BookingId;
            foreach (var m in movies)
            {
                bookedMoviesList.movieId = m.movieId;
                _context.bookedMoviesLists.Add(bookedMoviesList);
                _context.SaveChanges();
            }
            CurrentBooking currentBooking = new CurrentBooking();

            currentBooking.userid     = userid;
            currentBooking.totalprice = bookings.totalPrice;
            currentBooking.movies     = movies;
            currentBooking.genres     = genres;
            return(View(currentBooking));
        }
Exemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="p_booking"></param>
        /// <returns></returns>
        public Booking Save(CurrentBooking p_booking)
        {
            var availableRooms = _roomRepository.GetAvailableRooms(p_booking.Hotel.ID, p_booking.Arrival, p_booking.Departure);

            var booking = new Booking
            {
                Hotel     = p_booking.Hotel,
                Arrival   = p_booking.Arrival,
                Departure = p_booking.Departure,
                Guest     = p_booking.Guest,
                Rooms     = new List <Room>()
            };

            foreach (var availableRoom in availableRooms)
            {
                booking.Rooms.Add(availableRoom);
            }

            return(_bookingRepository.Insert(booking));
        }