public async Task <IActionResult> Post(BeerWithReviewDto beerDto) { var userId = Convert.ToInt64(User.Identity.Name); if (await _beerService.Add(beerDto, userId)) { return(Ok()); } else { return(BadRequest()); } }
public async Task <bool> Add(BeerWithReviewDto beerWithReviewDto, long userId) { try { var beer = beerWithReviewDto.Beer; var review = beerWithReviewDto.Review; var user = await _beerContext. User. SingleAsync(u => u.Id == userId); var createdBeer = await _beerContext.Beer.AddAsync(new BeerEntity { Producer = beer.Producer, Title = beer.Title, Creater = user }); var reviewModel = new BeerReviewEntity { Beer = createdBeer.Entity, Price = review.Price, Mark = review.Mark, Description = review.Description, IsDiscount = review.IsDiscount }; var createdReview = await _beerContext.Review.AddAsync(reviewModel); return(await _beerContext.SaveChangesAsync() != 0); } catch (Exception ex) { _logger.LogError(ex.Message); return(false); } }