public IHttpActionResult RecallBook(int id) { var book = context.Books.Find(id); if (book == null) { return(this.BadRequest("Book doesn't exist.")); } string userId = this.User.Identity.GetUserId(); var purshase = context.Purshases .FirstOrDefault(p => p.UserId == userId && p.BookId == book.Id); if (purshase == null) { return(this.BadRequest("You don't have this book.")); } if (DateTime.Compare(DateTime.Now, purshase.DateOfPurshase.AddDays(30)) > 0) { return(this.BadRequest("Date of purshase is more then 30 days.")); } book.Copies++; purshase.isRecalled = true; context.SaveChanges(); var viewPurshase = new PurshaseViewModel { Price = purshase.Price, DateOfPurshase = purshase.DateOfPurshase, isRecalled = purshase.isRecalled, User = this.User.Identity.GetUserName(), Book = purshase.Book.Title }; return(this.Ok(viewPurshase)); }
public IHttpActionResult BuyBook(int id) { var book = context.Books.Find(id); if (book == null) { return(this.BadRequest("Book doesn't exist.")); } if (book.Copies < 1) { return(this.BadRequest("Book is out of stock.")); } string userId = this.User.Identity.GetUserId(); var purshase = new Purshase() { Price = book.Price, DateOfPurshase = DateTime.Now, isRecalled = false, UserId = userId, BookId = book.Id }; book.Copies--; context.Purshases.Add(purshase); context.SaveChanges(); var viewPurshase = new PurshaseViewModel { Price = purshase.Price, DateOfPurshase = purshase.DateOfPurshase, isRecalled = purshase.isRecalled, User = this.User.Identity.GetUserName(), Book = purshase.Book.Title }; return(this.Ok(viewPurshase)); }
public IHttpActionResult RecallBook(int id) { var book = context.Books.Find(id); if (book == null) { return this.BadRequest("Book doesn't exist."); } string userId = this.User.Identity.GetUserId(); var purshase = context.Purshases .FirstOrDefault(p => p.UserId == userId && p.BookId == book.Id); if (purshase == null) { return this.BadRequest("You don't have this book."); } if (DateTime.Compare(DateTime.Now, purshase.DateOfPurshase.AddDays(30)) > 0) { return this.BadRequest("Date of purshase is more then 30 days."); } book.Copies++; purshase.isRecalled = true; context.SaveChanges(); var viewPurshase = new PurshaseViewModel { Price = purshase.Price, DateOfPurshase = purshase.DateOfPurshase, isRecalled = purshase.isRecalled, User = this.User.Identity.GetUserName(), Book = purshase.Book.Title }; return this.Ok(viewPurshase); }
public IHttpActionResult BuyBook(int id) { var book = context.Books.Find(id); if (book == null) { return this.BadRequest("Book doesn't exist."); } if (book.Copies < 1) { return this.BadRequest("Book is out of stock."); } string userId = this.User.Identity.GetUserId(); var purshase = new Purshase() { Price = book.Price, DateOfPurshase = DateTime.Now, isRecalled = false, UserId = userId, BookId = book.Id }; book.Copies--; context.Purshases.Add(purshase); context.SaveChanges(); var viewPurshase = new PurshaseViewModel { Price = purshase.Price, DateOfPurshase = purshase.DateOfPurshase, isRecalled = purshase.isRecalled, User = this.User.Identity.GetUserName(), Book = purshase.Book.Title }; return this.Ok(viewPurshase); }