public async Task <ActionResult <BooksResponseBoolModel> > Post([FromBody] RentBookModel model) { var response = new BooksResponseBoolModel(); var Book = await Task.FromResult(_context.Books.FirstOrDefault(x => x.Id == model.BookId && !x.Excluded)); if (Book.Rented) { response.Success = false; response.Errors = new List <Error> { new Error { code = "01", message = "o Livro esta indisponível" }, new Error { code = "02", message = "Já foi alugado." } }; return(await Task.FromResult(BadRequest(response))); } _context.Books.Update(Book.Rent()); var rent = model.MapperBook(); _context.RentBooks.Add(rent); _context.SaveChanges(); response.Success = true; response.Result = true; return(Ok(response)); }
public async Task <ActionResult <BooksResponseBoolModel> > Delete([FromRoute] string id) { var response = new BooksResponseBoolModel(); if (!string.IsNullOrEmpty(id) && _context.Books.Any(x => !x.Excluded && x.Id.ToString() == id)) { var book = _context.Books.SingleOrDefault(x => !x.Excluded && x.Id.ToString() == id); book.Deleted(); _context.Books.Update(book); await _context.SaveChangesAsync(); response.Success = true; response.Result = true; return(Ok(response)); } if (!response.Success) { response.Errors = new List <Error> { new Error { code = "02", message = "Não foi possivel remover o Livro" } }; return(await Task.FromResult(BadRequest(response))); } response.Errors = new List <Error> { new Error { code = "01", message = "Dados Enviados são inválidos" } }; return(await Task.FromResult(BadRequest(response))); }