예제 #1
0
        /// <summary>
        /// 返回树形结构的评论
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task <PagedResultDto <ReviewViewDto> > GetSubjectReviewsAsync(SubjectReviewsRequestDto input)
        {
            var totalCount = await _repository.GetCountAsync(null, input.ModuleName, input.SubjectId, null, null, AuditStatus.Passed, null, true);

            var list = await _repository.GetListAsync(null, input.ModuleName, input.SubjectId, null, null,
                                                      AuditStatus.Passed, null, true, input.MaxResultCount, input.SkipCount, input.Sorting);

            var parentIds = list.Select(x => x.Id).ToList();
            var childrens = await _repository.GetByRootAsync(parentIds, AuditStatus.Passed);

            var reviews = ObjectMapper.Map <List <Review>, List <ReviewViewDto> >(list);

            foreach (var review in reviews)
            {
                review.Childrens = GetChildrens(childrens, review.Id);
            }

            return(new PagedResultDto <ReviewViewDto>(totalCount, reviews));
        }
예제 #2
0
 public Task <PagedResultDto <ReviewViewDto> > GetSubjectReviewsAsync(SubjectReviewsRequestDto input)
 {
     return(_service.GetSubjectReviewsAsync(input));
 }