public async Task <IActionResult> PutAsync(int id, [FromBody] SaveBookForSaleResource resource)
        {
            if (!ModelState.IsValid)
            {
                var badresult = new ResponseData
                {
                    Data    = null,
                    Message = string.Join(" ", ModelState.GetErrorMessages().ToArray()),
                    Success = false
                };
                return(Ok(badresult));
            }

            var bookForSale         = mapper.Map <SaveBookForSaleResource, BookForSale>(resource);
            var bookForSaleResponse = await bookForSaleService.UpdateAsync(id, bookForSale);

            var bookForSaleResource = mapper.Map <BookForSale, BookForSaleResource>(bookForSaleResponse.BookForSale);

            var result = new ResponseData
            {
                Data    = bookForSaleResource,
                Message = bookForSaleResponse.Message,
                Success = bookForSaleResponse.Success
            };

            return(Ok(result));
        }
        public async Task <IActionResult> PostAsync([FromBody] SaveBookForSaleResource resource)
        {
            if (!ModelState.IsValid)
            {
                var badresult = new ResponseData
                {
                    Data    = null,
                    Message = string.Join(" ", ModelState.GetErrorMessages().ToArray()),
                    Success = false
                };
                return(Ok(badresult));
            }

            var bookForSale = mapper.Map <SaveBookForSaleResource, BookForSale>(resource);

            bookForSale.UserId    = Convert.ToInt32(User.FindFirst("UserId").Value);
            bookForSale.DateAdded = DateTime.Now;

            var bookForSaleResponse = await bookForSaleService.SaveAsync(bookForSale);

            var bookForSaleResource = mapper.Map <BookForSale, BookForSaleResource>(bookForSaleResponse.BookForSale);
            var result = new ResponseData
            {
                Data    = bookForSaleResource,
                Message = bookForSaleResponse.Message,
                Success = bookForSaleResponse.Success
            };

            return(Ok(result));
        }