public ArticleInfo[] GetTopN(UserInfo userInfo, int topN) { var articleIdList = _hitDao.GetResourceIds(0, topN, HitType.Article); var articleIds = articleIdList.Cast <int>().ToList(); var articles = _articleDao.Get(articleIds); var sortedArticles = SortArticles(articles, articleIds); return(_articleConverter.ToDataTransferObject(sortedArticles)); }
public PageOf <ArticleInfo> Search(UserInfo user, QueryPackage queryPackage, int pageIndex, int pageSize) { var keyword = queryPackage.QueryString; var sorting = _sortingConverter.ToDomainObject(queryPackage.SortingInfo); var startDate = queryPackage.StartDate; var endDate = queryPackage.EndDate; var articles = _searchDao.Search( keyword, sorting, startDate, endDate, pageIndex, pageSize); var articleInfos = _articleConverter.ToDataTransferObject(articles); return(new PageOf <ArticleInfo>() { TotalCount = _searchDao.GetTotalCount(keyword, sorting, startDate, endDate), PageSize = pageSize, PageIndex = pageIndex, Results = articleInfos }); }