public long SearchHitsResultCount(List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { var fulltextServiceClient = m_communicationProvider.GetFulltextServiceClient(); var result = fulltextServiceClient.SearchHitsResultCount(project.SnapshotId, criteria); return(result); }
public long SearchHitsResultCount(List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { UpdateCriteriaWithBookVersionRestriction(criteria, new List <ProjectIdentificationResult> { project }); using (var ssc = m_communicationProvider.GetSearchServiceClient()) { var dbResult = ssc.ListSearchEditionsResults(criteria); var bookResult = dbResult.SearchResults.FirstOrDefault(); return(bookResult != null ? bookResult.TotalHitCount : 0); } }
public SearchHitsResultData SearchHitsWithPageContext(int start, int count, int contextLength, List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { var fulltextServiceClient = m_communicationProvider.GetFulltextServiceClient(); var result = fulltextServiceClient.SearchHitsWithPageContext(project.SnapshotId, start, count, contextLength, criteria); return(new SearchHitsResultData { SearchResultType = PageSearchResultType.TextExternalId, ResultList = result.ResultList.Select(x => new PageResultContextData { ContextStructure = x.ContextStructure, StringId = x.PageExternalId }).ToList(), }); }
public SearchHitsResultData SearchHitsWithPageContext(int start, int count, int contextLength, List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { UpdateCriteriaWithBookVersionRestriction(criteria, new List <ProjectIdentificationResult> { project }); criteria.Add(new ResultCriteriaContract { //Start = 0, //Count = 5, // if count == 1 then response is empty //Sorting = SortEnum.Title, //Direction = ListSortDirection.Ascending, HitSettingsContract = new HitSettingsContract { Start = start, Count = count, ContextLength = 50, } }); using (var ssc = m_communicationProvider.GetSearchServiceClient()) { var dbResult = ssc.ListSearchEditionsResults(criteria); var bookResult = dbResult.SearchResults.FirstOrDefault(); var resultList = new List <PageResultContextData>(); if (bookResult != null) { resultList = bookResult.Results.Select(x => new PageResultContextData { StringId = x.PageXmlId, ContextStructure = x.ContextStructure, }).ToList(); } return(new SearchHitsResultData { SearchResultType = PageSearchResultType.TextExternalId, ResultList = resultList }); } }
public virtual ProjectIdentificationResult GetProjectIdentification(long projectId) { ProjectIdentificationResult resultAlias = null; Snapshot snapshotAlias = null; BookVersionResource bookVersionResourceAlias = null; var dbResult = GetSession().QueryOver <Project>() .JoinAlias(x => x.LatestPublishedSnapshot, () => snapshotAlias) .JoinAlias(() => snapshotAlias.BookVersion, () => bookVersionResourceAlias, JoinType.LeftOuterJoin) .SelectList(list => list .Select(x => x.Id).WithAlias(() => resultAlias.ProjectId) .Select(x => x.ExternalId).WithAlias(() => resultAlias.ProjectExternalId) .Select(() => snapshotAlias.Id).WithAlias(() => resultAlias.SnapshotId) .Select(() => bookVersionResourceAlias.ExternalId).WithAlias(() => resultAlias.BookVersionExternalId) .Select(x => x.ProjectType).WithAlias(() => resultAlias.ProjectType) ) .Where(x => x.Id == projectId && x.IsRemoved == false) .TransformUsing(Transformers.AliasToBean <ProjectIdentificationResult>()) .SingleOrDefault <ProjectIdentificationResult>(); return(dbResult); }
public PageSearchResultData SearchPageByCriteria(List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { var fulltextServiceClient = m_communicationProvider.GetFulltextServiceClient(); var result = fulltextServiceClient.SearchPageByCriteria(project.SnapshotId, criteria); return(new PageSearchResultData { SearchResultType = PageSearchResultType.TextExternalId, StringList = result.TextIdList, }); }
public PageSearchResultData SearchPageByCriteria(List <SearchCriteriaContract> criteria, ProjectIdentificationResult project) { UpdateCriteriaWithBookVersionRestriction(criteria, new List <ProjectIdentificationResult> { project }); using (var ssc = m_communicationProvider.GetSearchServiceClient()) { var dbResult = ssc.GetSearchEditionsPageList(criteria); var projectIds = dbResult.PageList.Select(x => x.PageXmlId).ToList(); return(new PageSearchResultData { StringList = projectIds, SearchResultType = PageSearchResultType.TextExternalId, }); } }