public async Task <int> SaveSerieRatingAsync(SerieRatingDTO serieRatingDTO) { var rating = await _dbContext.SeriesRatings .FirstOrDefaultAsync(mr => mr.SerieId == serieRatingDTO.SerieId && mr.UserId == serieRatingDTO.UserId); if (rating != null) { rating.Rate = serieRatingDTO.Rate; } else { rating = new SeriesRating { SerieId = serieRatingDTO.SerieId, UserId = serieRatingDTO.UserId, Rate = serieRatingDTO.Rate }; await _dbContext.SeriesRatings.AddAsync(rating); } try { await _dbContext.SaveChangesAsync(); _logger.LogInfo($"Successfully saved SeriesRating with rating {serieRatingDTO.Rate} from user {serieRatingDTO.UserId} to serie {serieRatingDTO.SerieId}"); return(1); } catch (Exception ex) { _logger.LogWarn($"Failed to save MoviesRating with rating {serieRatingDTO.Rate} from user {serieRatingDTO.UserId} to serie {serieRatingDTO.SerieId}. Exception: {ex}"); return(-1); } }
public async Task <ActionResult> SaveUserSerieRating([FromBody] SerieRatingDTO serieRatingDTO) { var result = await _seriesService.SaveUserSerieRatingAsync(serieRatingDTO); if (result == -1) { return(BadRequest(ModelState)); } return(NoContent()); }
public async Task <int> SaveUserSerieRatingAsync(SerieRatingDTO serieRatingDTO) { serieRatingDTO.UserId = await _accountsService.GetCurrentUserIdAsync(); return(await _ratingService.SaveSerieRatingAsync(serieRatingDTO)); }