Пример #1
0
        public QueryGroupResult QueryGroups(int organizationId, bool sortByCreatedAt)
        {
            var query = GetValidGroups(organizationId);

            if (sortByCreatedAt)
            {
                query = query.OrderByDescending(p => p.CreatedAt);
            }

            var results = query.Select(p => this.mapper.Map <GroupListModel>(p)).ToList();

            var result = new QueryGroupResult
            {
                Result = results
            };

            return(result);
        }
Пример #2
0
        public QueryGroupResult <T> GetGroup(QueryRequest request)
        {
            SetRequestDefaultValues(request);

            var solrProds = Execute(request);

            var searchResponse = new QueryGroupResult <T>
            {
                Groups = solrProds.Grouping[request.GroupByField].Groups.Select(x => new Domain.Response.Group <T>()
                {
                    Count      = x.NumFound,
                    value      = x.GroupValue,
                    Documents  = x.Documents.ToList(),
                    valueField = request.GroupByField
                }).ToList(),
                TotalResults    = solrProds.Grouping[request.GroupByField].Matches,
                CurrentPage     = request.Start + 1,
                PageSize        = request.Rows,
                FilteredResults = solrProds.Grouping[request.GroupByField].Ngroups.HasValue ? solrProds.Grouping[request.GroupByField].Ngroups.Value : 0,
            };

            return(searchResponse);
        }