public async Task <FullFilmDetailsResponse> GetFilmDetailsAsync(long filmId, string userId)
        {
            var film = await _filmRepository.GetFilmAsync(filmId);

            if (film == null)
            {
                return(null);
            }

            var filmRating         = _filmRatingRepository.GetTotalRating(filmId);
            var filmPersonalRating = await _filmRatingRepository.GetPersonalRatingAsync(filmId, userId);

            var countries = await _filmCountryRepository.GetFilmCountriesAsync(filmId);

            var distributor = await _distributorRepository.GetDistributorAsync(film.DistributorId);

            var people = await _filmPeopleRepository.GetFilmPeopleAsync(film.Id);

            return(GetFullFilmDetailsResponse(film, filmRating, filmPersonalRating, people, distributor, countries));
        }