public async Task <IActionResult> Put(int id, [FromBody] EditBookRequestModel model)
        {
            if (!await this.authorService.Exist(model.AuthorId))
            {
                return(BadRequest("Author does not exist."));
            }


            var success = await this.bookService.Edit(
                id,
                model.Title,
                model.Description,
                model.Price,
                model.Copies,
                model.Edition,
                model.AgeRestriction,
                model.ReleaseDate,
                model.AuthorId);

            if (!success)
            {
                return(BadRequest());
            }

            return(Ok(id));
        }
        public async Task <IActionResult> Put(int id, [FromBody] EditBookRequestModel model)
        {
            if (!await this.books.BookIdExistsAsync(id))
            {
                return(this.BadRequest("Fault! Such 'bookId' does not exist in database."));
            }

            if (model.AuthorId > 0 && !await this.authors.AuthorIdExistsAsync(model.AuthorId))
            {
                return(this.BadRequest("Fault! Such 'authorId' does not exist in database."));
            }

            var result = await this.books.EditAsync(
                id,
                model.Title,
                model.Description,
                model.Price,
                model.Copies,
                model.Edition,
                model.ReleaseDate,
                model.AgeRestriction,
                model.AuthorId);

            if (result == 0)
            {
                return(this.BadRequest("Fault! This book cannot be edited."));
            }

            return(this.OkOrNotFound($"Book with Id={result} was edited."));
        }
Esempio n. 3
0
 public async Task <IActionResult> Put(int id, [FromBody] EditBookRequestModel model)
 => this.OkOrNotFound(await this.books.UpdateAsync(
                          id,
                          model.Title,
                          model.Description,
                          model.Price,
                          model.Copies,
                          model.ReleaseDate,
                          model.AuthorId,
                          model.Edition,
                          model.AgeRestriction));
Esempio n. 4
0
        public IHttpActionResult Edit(int id, EditBookRequestModel editModel)
        {
            var book = this.books.GetById(id);

            if (book == null || !this.ModelState.IsValid)
            {
                if (book == null)
                {
                    return(this.BadRequest("There is no such book with this Id!"));
                }

                return(this.BadRequest(this.ModelState));
            }

            this.Mapper.Map(editModel, book);
            this.books.Save();

            return(this.Ok(this.Mapper.Map <BookResponceModel>(book)));
        }