public async Task <PagedResultDto <BlogPostPublicDto> > GetListAsync(string blogSlug, PagedAndSortedResultRequestDto input) { var blog = await BlogRepository.GetBySlugAsync(blogSlug); var blogPosts = await BlogPostRepository.GetPagedListAsync(blog.Id, input.SkipCount, input.MaxResultCount, input.Sorting); return(new PagedResultDto <BlogPostPublicDto>( await BlogPostRepository.GetCountAsync(blog.Id), ObjectMapper.Map <List <BlogPost>, List <BlogPostPublicDto> >(blogPosts))); }
public virtual async Task <PagedResultDto <BlogPostDto> > GetListAsync(BlogPostGetListInput input) { var blogPosts = await BlogPostRepository.GetListAsync(input.Filter, input.BlogId, input.MaxResultCount, input.SkipCount, input.Sorting); var count = await BlogPostRepository.GetCountAsync(input.Filter); var dtoList = ObjectMapper.Map <List <BlogPost>, List <BlogPostDto> >(blogPosts); return(new PagedResultDto <BlogPostDto>(count, dtoList)); }
public virtual async Task <PagedResultDto <BlogPostPublicDto> > GetListAsync([NotNull] string blogSlug, BlogPostGetListInput input) { var blog = await BlogRepository.GetBySlugAsync(blogSlug); var blogPosts = await BlogPostRepository.GetListAsync(null, blog.Id, input.AuthorId, input.TagId, BlogPostStatus.Published, input.MaxResultCount, input.SkipCount, input.Sorting); return(new PagedResultDto <BlogPostPublicDto>( await BlogPostRepository.GetCountAsync(blogId: blog.Id, tagId: input.TagId, statusFilter: BlogPostStatus.Published, authorId: input.AuthorId), ObjectMapper.Map <List <BlogPost>, List <BlogPostPublicDto> >(blogPosts))); }
public virtual async Task <PagedResultDto <BlogPostDto> > GetListAsync(PagedAndSortedResultRequestDto input) { if (input.Sorting.IsNullOrEmpty()) { input.Sorting = nameof(BlogPost.CreationTime) + " desc"; } var blogPosts = await BlogPostRepository.GetPagedListAsync(input.SkipCount, input.MaxResultCount, input.Sorting, includeDetails : true); var count = await BlogPostRepository.GetCountAsync(); return(new PagedResultDto <BlogPostDto>( count, ObjectMapper.Map <List <BlogPost>, List <BlogPostDto> >(blogPosts))); }
public virtual async Task <PagedResultDto <BlogPostListDto> > GetListAsync(BlogPostGetListInput input) { var blogs = (await BlogRepository.GetListAsync()).ToDictionary(x => x.Id); var blogPosts = await BlogPostRepository.GetListAsync(input.Filter, input.BlogId, input.MaxResultCount, input.SkipCount, input.Sorting); var count = await BlogPostRepository.GetCountAsync(input.Filter); var dtoList = blogPosts.Select(x => { var dto = ObjectMapper.Map <BlogPost, BlogPostListDto>(x); dto.BlogName = blogs[x.BlogId].Name; return(dto); }).ToList(); return(new PagedResultDto <BlogPostListDto>(count, dtoList)); }