public RatingDto ToDto(RatingDbModel item) { return(new RatingDto { Id = item.Id, TestId = item.TestId, RatingList = _userRatingMapper.ToDtoList(item.UserRatings) }); }
public void AddRating(int filmId, int userId, int generalImpression, int actorPlay, int scenario, int filming) { UserDbModel currentUser = _dbContext.FilmHubUsers.Include(u => u.Favourite) .Include(u => u.Comments) .Include(u => u.Bookmarks) .Include(f => f.Ratings) .FirstOrDefault(u => u.Id == userId); FilmDbModel currentFilm = _dbContext.FilmHubFilms.Include(f => f.Comments) .Include(f => f.Ratings) .FirstOrDefault(f => f.Id == filmId); RatingDbModel newRating = new RatingDbModel() { User = currentUser, Film = currentFilm, GeneralImpression = generalImpression, ActorPlay = actorPlay, Scenario = scenario, Filming = filming }; if (currentFilm.Ratings.Find(r => r.User == currentUser) != null) { RatingDbModel currentRating = _dbContext.Ratings.FirstOrDefault(rating => rating.User == currentUser && rating.Film == currentFilm); currentRating.Filming = newRating.Filming; currentRating.Scenario = newRating.Scenario; currentRating.ActorPlay = newRating.ActorPlay; currentRating.GeneralImpression = newRating.GeneralImpression; FilmDbModel film = _dbContext.FilmHubFilms.FirstOrDefault(f => f.Id == currentFilm.Id); RatingDbModel filmRating = film.Ratings.FirstOrDefault(r => r.User == currentUser); filmRating.Filming = newRating.Filming; filmRating.Scenario = newRating.Scenario; filmRating.ActorPlay = newRating.ActorPlay; filmRating.GeneralImpression = newRating.GeneralImpression; } else { currentFilm.Ratings.Add(newRating); currentUser.Ratings.Add(newRating); _dbContext.Ratings.Add(newRating); } UpdateRating(currentFilm.Id); _dbContext.SaveChanges(); }