示例#1
0
        public ActionResult SearchIdea(IdeaSearchFilter filter)
        {
            if (filter == null)
            {
                filter = new IdeaSearchFilter();
            }

            filter.AuthorId = HttpContext.User.FindFirst(JwtClaimIdentifiers.Id)?.Value;

            return(Ok(ideaService.Search(filter)));
        }
示例#2
0
        public AggregateContent <IdeaViewModel> Search(IdeaSearchFilter filter)
        {
            var query = uow.IdeasRepository
                        .GetAll();

            if (filter.IsUserAuthor)
            {
                query = query.Where(idea =>
                                    (idea.AuthorId == filter.AuthorId));
            }

            return(new AggregateContent <IdeaViewModel>
            {
                Source = Mapper.Map <IEnumerable <Idea>, IEnumerable <IdeaViewModel> >(
                    query
                    .Skip((filter.Page - 1) * filter.PageSize)
                    .Take(filter.PageSize)
                    .OrderByDescending(item => item.DateOfCreation)
                    .ToList()),
                Total = query.Count()
            });
        }