Exemplo n.º 1
0
        public int AddMovie(MovieDetailsDto movieDetails, List <int> actorsIds, int?directorId, List <int> metadataIds,
                            List <int> categoryIds, string serverPath, string virtualPath)
        {
            var movie = new Movie();

            _movieFactory.SetValuesByMovieDetailsDto(movie, movieDetails);
            if (directorId.HasValue)
            {
                _movieFactory.SetDirector(movie, directorId.Value);
            }
            if (actorsIds != null && actorsIds.Any())
            {
                _movieFactory.SetActors(movie, actorsIds);
            }
            if (categoryIds != null && categoryIds.Any())
            {
                _movieFactory.SetCategories(movie, categoryIds);
            }
            _movieFactory.SetMetadata(movie, metadataIds);
            movie.Folder = _directoryFactory.CreateDirectoryForMovie(serverPath, movie.TitleEng, virtualPath);

            _uow.MovieRepository.Add(movie);

            _uow.Complete();

            return(movie.Id);
        }
Exemplo n.º 2
0
        public void EditMovie(MovieDetailsDto movieDetailsDto, List <int> actorIds, int?directorId, List <int> metadataIds, List <int> categoryIds)
        {
            var movie = _uow.MovieRepository.GetMovieById(movieDetailsDto.MovieId);

            _movieFactory.SetValuesByMovieDetailsDto(movie, movieDetailsDto);

            if (directorId.HasValue)
            {
                _movieFactory.SetDirector(movie, directorId.Value);
            }
            else
            {
                movie.Director = null;
            }
            if (actorIds != null && actorIds.Any())
            {
                _movieFactory.SetActors(movie, actorIds);
            }
            else
            {
                movie.Actors = new List <Actor>();
            }
            if (categoryIds != null && categoryIds.Any())
            {
                _movieFactory.SetCategories(movie, categoryIds);
            }
            else
            {
                movie.Categories = new List <Category>();
            }
            _movieFactory.SetMetadata(movie, metadataIds);

            _uow.Complete();
        }
        public async Task <ActionResult <MovieDetailsDto> > Get(int id)
        {
            var movie = await context.Movies.Where(x => x.Id == id)
                        .Include(x => x.MoviesGenres).ThenInclude(x => x.Genre)
                        .Include(x => x.MoviesActors).ThenInclude(x => x.Person)
                        .FirstOrDefaultAsync();

            if (movie == null)
            {
                return(NotFound());
            }

            movie.MoviesActors = movie.MoviesActors.OrderBy(x => x.Order).ToList();

            var model = new MovieDetailsDto();

            model.Movie  = movie;
            model.Genres = movie.MoviesGenres.Select(x => x.Genre).ToList();
            model.Actors = movie.MoviesActors.Select(x =>
                                                     new Person
            {
                Name      = x.Person.Name,
                Picture   = x.Person.Picture,
                Character = x.Person.Picture,
                Id        = x.PersonId
            }).ToList();

            return(model);
        }
Exemplo n.º 4
0
 public MovieDetailsDto AddPosterIfNoPoster(MovieDetailsDto myMovieDetails)
 {
     if (MovieHasPoster(myMovieDetails) == false)
     {
         myMovieDetails.Poster = "/assets/images/no-poster.png";
     }
     return(myMovieDetails);
 }
Exemplo n.º 5
0
 private static List <GenreDtOs> MapMovieGenres(Movie movie, MovieDetailsDto movieCreationDtos)
 {
     return(movie.MoviesGenres
            .Select(x => new GenreDtOs
     {
         Id = x.GenreId,
         Name = x.Genre.Name
     }).ToList());
 }
Exemplo n.º 6
0
 private static List <ActorDto> MapMovieActors(Movie movie, MovieDetailsDto movieDetailsDto)
 {
     return(movie.MoviesActors
            .Select(x => new ActorDto
     {
         PersonName = x.Person.Name,
         Character = x.Character,
         PersonId = x.PersonId
     }).ToList());
 }
Exemplo n.º 7
0
        private bool MovieIsValid(int iterations, MovieDetailsDto movie)
        {
            bool result = false;

            if (MovieHasPoster(movie) && iterations > 0 && MovieIsInCMDb(movie.imdbID) == false)
            {
                result = true;
            }
            return(result);
        }
Exemplo n.º 8
0
        private bool MovieHasPoster(MovieDetailsDto movie)
        {
            bool result = true;

            if (movie.Poster == "N/A" || movie.Poster == null)
            {
                result = false;
            }
            return(result);
        }
Exemplo n.º 9
0
        public Movie AdaptSingleMovie(MovieDetailsDto movieDetailsDto)
        {
            Movie movie = new Movie
            {
                Title = movieDetailsDto.title,
                Id    = movieDetailsDto.id,
                Rated = movieDetailsDto.imdbRating
            };

            return(movie);
        }
Exemplo n.º 10
0
        public MovieDetailsDto ObterDatails(Guid id)
        {
            var detalhes = _repository.GetAll()
                           .Include(x => x.Votes)
                           .Include(x => x.Staff)
                           .FirstOrDefault(x => x.Id == id);

            MovieDetailsDto detail = _mapper.Map <MovieDetailsDto>(detalhes);

            return(detail);
        }
Exemplo n.º 11
0
 public void SetValuesByMovieDetailsDto(Movie movie, MovieDetailsDto movieDetails)
 {
     if (movie != null)
     {
         movie.TitleEng            = movieDetails.Title;
         movie.TitlePl             = movieDetails.Title;
         movie.Content             = movieDetails.Content;
         movie.Duration            = movieDetails.Duration;
         movie.PremiereDate        = movieDetails.PremiereDate;
         movie.HeraldUrl           = movieDetails.HearldUrl;
         movie.ProductionCountries = movieDetails.ProductionCountries;
     }
 }
Exemplo n.º 12
0
        private List <ActorDto> MapMoviesActors(Movie movie, MovieDetailsDto movieDetailsDTO)
        {
            var result = new List <ActorDto>();

            foreach (var actor in movie.MoviesActors)
            {
                result.Add(new ActorDto()
                {
                    PersonId = actor.PersonId, Character = actor.Character, PersonName = actor.Person.Name
                });
            }
            return(result);
        }
Exemplo n.º 13
0
        private List <GenreDto> MapMoviesGenres(Movie movie, MovieDetailsDto movieDetailsDTO)
        {
            var result = new List <GenreDto>();

            foreach (var moviegenre in movie.MoviesGenres)
            {
                result.Add(new GenreDto()
                {
                    Id = moviegenre.GenreId, Name = moviegenre.Genre.Name
                });
            }
            return(result);
        }
Exemplo n.º 14
0
        public async Task <IEnumerable <IMovieSummaryDto> > GetToplistWithDetails(IEnumerable <CmdbMovieDto> myToplist)
        {
            List <MovieSummaryDto> movieSummaries = new List <MovieSummaryDto>();
            int movieNumber = 0;

            foreach (var movie in myToplist)
            {
                movieNumber++;
                MovieDetailsDto myMovieDetails = await GetMovieDetails(movie.ImdbId);

                MovieSummaryDto myMovieSummary = new MovieSummaryDto(movie, myMovieDetails, movieNumber);
                movieSummaries.Add(myMovieSummary);
            }
            return(movieSummaries);
        }
Exemplo n.º 15
0
 public MovieSummaryDto(CmdbMovieDto myMovie, MovieDetailsDto movieDetails, int movieNumber)
 {
     MovieNumber      = movieNumber;
     Title            = movieDetails.Title;
     ImdbId           = movieDetails.imdbID;
     Rated            = movieDetails.Rated;
     Year             = movieDetails.Year;
     Runtime          = movieDetails.Runtime;
     Genre            = movieDetails.Genre;
     Director         = movieDetails.Director;
     Actors           = movieDetails.Actors;
     Plot             = movieDetails.Plot;
     Language         = movieDetails.Language;
     Country          = movieDetails.Country;
     Poster           = movieDetails.Poster;
     Awards           = movieDetails.Awards;
     ImdbRating       = movieDetails.ImdbRating;
     NumberOfLikes    = myMovie.NumberOfLikes;
     NumberOfDislikes = myMovie.NumberOfDislikes;
 }