Beispiel #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);
        }