public async Task <ActionResult <AuthorDetailResource> > DeleteAuthor(int id) { AuthorResponse response = await _authorService.DeleteAsync(id); if (!response.Success) { return(BadRequest(response.Message)); } AuthorDetailResource deletedResource = _mapper.Map <AuthorDetailResource>(response.Author); return(Ok(deletedResource)); }
public async Task <ActionResult <AuthorDetailResource> > GetAuthor(int id) { AuthorResponse response = await _authorService.FindByIdAsync(id); if (!response.Success) { return(NotFound(response.Message)); } AuthorDetailResource resource = _mapper.Map <AuthorDetailResource>(response.Author); return(Ok(resource)); }
public async Task <ActionResult <AuthorDetailResource> > PutAuthor(int id, AuthorSaveResource resource) { Author author = _mapper.Map <Author>(resource); AuthorResponse response = await _authorService.UpdateAsync(id, author); if (!response.Success) { return(BadRequest(response.Message)); } AuthorDetailResource updatedResource = _mapper.Map <AuthorDetailResource>(response.Author); return(Ok(updatedResource)); }
public async Task <ActionResult <AuthorDetailResource> > PostAuthor(AuthorSaveResource resource) { Author author = _mapper.Map <Author>(resource); AuthorResponse response = await _authorService.SaveAsync(author); if (!response.Success) { return(BadRequest(response.Message)); } AuthorDetailResource savedResource = _mapper.Map <AuthorDetailResource>(response.Author); return(CreatedAtAction(nameof(GetAuthor), new { id = savedResource.Id }, savedResource)); }