public IHttpActionResult CreateNewRentals(NewRentalsDto newRentals) { var customer = _context.Customers.Single(m => m.Id == newRentals.CustomerId); var movies = _context.Movies.Where(m => newRentals.MovieIds.Contains(m.Id)); foreach (var movie in movies) { if (movie.NumberAvailable == 0) { return(BadRequest("This movie is not available at the moment")); } movie.NumberAvailable--; var rental = new NewRentals { Customer = customer, Movie = movie, DateRented = DateTime.Now, DateReturned = DateTime.Now.AddDays(30) }; _context.NewRentals.Add(rental); } _context.SaveChanges(); return(Ok()); }
public IHttpActionResult CreateNewRentals(NewRentals newRental) { var customer = db.Customers.Single( x => x.Id == newRental.Custmerid); var movies = db.Movies.Where( x => newRental.Movieids.Contains(x.Id)); foreach (var movie in movies) { if (movie.MemberAvalible == 0) { return(BadRequest("One or more Movies are invalid. ")); } movie.MemberAvalible--; var rental = new Rentals { Customers = customer, Movies = movie, DateRented = DateTime.Now }; db.Rentals.Add(rental); } db.SaveChanges(); return(Ok()); }
public IHttpActionResult createNewRental(NewRentalDto NewRental) { var customer = _context.Customers.Include(c => c.MemberShipType).Single( c => c.id == NewRental.CustomerId); var movies = _context.Movies.Where( m => NewRental.MoviesIds.Contains(m.Id)); foreach (var movie in movies) { if (movie.NumberAvailable == 0) { return(BadRequest("Movie is not available")); } movie.NumberAvailable--; movie.NumberInStock--; var rental = new NewRentals { Customer = customer, Movie = movie, DateRented = DateTime.Now, }; _context.Rentals.Add(rental); } _context.SaveChanges(); return(Ok()); }