Example #1
0
        public QueryResult <Product> Search(Query query)
        {
            var options = new QueryOptions();

            AbstractSolrQuery q = new SolrQuery(!string.IsNullOrEmpty(query.SearchText) ? query.SearchText : "*");

            options.ExtraParams = new[] { new KeyValuePair <string, string>("df", "description") };

            options.Rows          = query.NumToReturn ?? DefaultSettings.DefaultNumToReturn;
            options.StartOrCursor = OffsetConverter.GetOffsetFromCurrentPage(query.Page);

            options.OrderBy = SortOrderConverter.GetSortOrder(query);

            string facetToExclude;

            options.FilterQueries = FilterConverter.GetSolrNetFilters(query, out facetToExclude);

            options.Facet = FacetConverter.GetSolrNetFacetParameters(query, facetToExclude);

            options.Highlight = HighlightConverter.GetSolrNetHighlightingParameters(query.SearchText);

            var results = SolrOperations.Query(q, options);

            var convertedResults = ResultConverter.GetQueryResult(results);

            if (convertedResults == null)
            {
                convertedResults.ErrorMessages = new[] { "An error occured communicating with the solr instance" };
            }

            return(convertedResults);
        }
Example #2
0
        public async Task <MoviesWithPagination> GetMovies(int page, int rows, string orderProperty = "Name", string order = "asc")
        {
            var orderEnum = SortOrderConverter.GetSortOrderFromString(order);
            Tuple <IList <MovieDTO>, PaginationInfo> tupleMovieAndPagination = await _service.GetMovies(page, rows, orderProperty, orderEnum);

            MoviesWithPagination response = new MoviesWithPagination();

            response.Movies         = PLMapperConfigurer.Mapper.Map <IList <MovieDTO>, List <MoviePL> >(tupleMovieAndPagination.Item1);
            response.PaginationInfo = tupleMovieAndPagination.Item2;
            return(response);
        }
        public JsonResult GetPhoneCallsJsonList(bool _search, int page, int rows, string sidx, string sord, string filters)
        {
            FilterJqdrid jqgridFilter;

            HolodDAL.Filtering.Filter filter = null;

            if (_search)
            {
                jqgridFilter = FilterJqdrid.DeserializeJson(filters);
                filter       = PLMapperConfigurer.Mapper.Map <FilterJqdrid, HolodDAL.Filtering.Filter>(jqgridFilter);
            }

            PaginationInfo          paginationInfo;
            IList <PhoneCallDTO>    phoneCallsDTOList = _phoneCallService.GetPhoneCalls(new FilterWithOperators(filter, new JqgridFilterOperators()), page, rows, sidx, SortOrderConverter.GetSortOrderFromString(sord), out paginationInfo);
            IList <PhoneCallPL>     phoneCallsPLList  = PLMapperConfigurer.Mapper.Map <IList <PhoneCallDTO>, IList <PhoneCallPL> >(phoneCallsDTOList);
            PhoneCallsListForJqgrid result            = new PhoneCallsListForJqgrid(paginationInfo, phoneCallsPLList);

            return(this.Json(result, JsonRequestBehavior.AllowGet));
        }