private async Task <List <PersonPoster> > GetMostFeaturedActorsPerGenre(List <string> collectionIds) { var movies = _movieRepository.GetAll(collectionIds); var genreIds = _movieRepository.GetGenres(collectionIds); var genres = _genreRepository.GetListByIds(genreIds); var list = new List <PersonPoster>(); foreach (var genre in genres.OrderBy(x => x.Name)) { var selectedMovies = movies.Where(x => x.MediaGenres.Any(y => y.GenreId == genre.Id)); var personId = selectedMovies .SelectMany(x => x.ExtraPersons) .Where(x => x.Type == Constants.Actor) .GroupBy(x => x.PersonId) .Select(group => new { Id = group.Key, Count = group.Count() }) .OrderByDescending(x => x.Count) .Select(x => x.Id) .FirstOrDefault(); var person = await _personService.GetPersonById(personId); list.Add(PosterHelper.ConvertToPersonPoster(person, genre.Name)); } return(list); }
private async Task <PersonPoster> GetMostFeaturedWriter(List <string> collectionIds) { var personId = _movieRepository.GetMostFeaturedPerson(collectionIds, Constants.Writer); var person = await _personService.GetPersonById(personId); return(PosterHelper.ConvertToPersonPoster(person, Constants.Movies.MostFeaturedWriter)); }
static void Main(string[] args) { string ceshiimg = @"D:\Temp\a.jpg"; string logo = @"D:\Temp\wechat.png"; var path = PosterHelper.CreatePoster("www.baidu.com", ceshiimg, "第一张海报", "这是一个测试海报的正文标题", logo); Console.WriteLine(path); Console.ReadKey(); }
private Poster YoungestAddedMovie(List <string> collectionIds) { var movie = _movieRepository.GetYoungestAddedMovie(collectionIds); if (movie != null) { return(PosterHelper.ConvertToPoster(movie, Constants.Movies.YoungestAdded)); } return(new Poster()); }
private Poster ShortestMovie(List <string> collectionIds) { var movie = _movieRepository.GetShortestMovie(collectionIds); if (movie != null) { return(PosterHelper.ConvertToPoster(movie, Constants.Movies.Shortest)); } return(new Poster()); }
private Poster OldestPremieredMovie(List <string> collectionIds) { var movie = _movieRepository.GetOlderPremieredMovie(collectionIds); if (movie != null) { return(PosterHelper.ConvertToPoster(movie, Constants.Movies.OldestPremiered)); } return(new Poster()); }
public dynamic SpecialPublicProfileComposeForwardToFriendEmail(string friendname, string friendemailaddress, string message, int id) { dynamic email = new Postal.Email("ForwardtoFriend/Multipart"); var newposter = new PosterHelper(UnitofWork, MembershipService); var poster = newposter.GetSendtoFriendPoster(HttpContext.Request.Url); email.To = friendemailaddress; email.FriendName = friendname; email.From = "*****@*****.**"; email.SenderFirstName = poster.FirstName; email.Title = string.Format("Request From {0}", poster.FirstName); email.SubTitle = "Request from "; email.Message = message; email.InvitationNote = " invite you to see this skilled professional."; email.FooterNote = "Check out this Professional"; var uri = HttpContext.Request.Url; if (uri != null) { var host = uri.Scheme + Uri.SchemeDelimiter + uri.Host + ":" + uri.Port; email.ProfileUrl = host + uri.AbsolutePath.Replace("ForwardtoFriend", ""); var currentSpecialist = UserHelper.SpecialistPublicProfileHelper.GetPublicProfileSpecialistBySpecialistId(id); if (currentSpecialist != null) { var specialistTitle = currentSpecialist.FirstName + " , " + currentSpecialist.LastName; if (specialistTitle.Length >= 50) { specialistTitle = specialistTitle.Substring(0, 50); } email.CustomTitle = specialistTitle; } if (currentSpecialist != null) { email.PhotoPath = host + "/" + GetSpecialistPrimaryWorkPhoto(id).Replace("../../", ""); } } return email; }