/// <summary> /// The get all paged. /// </summary> /// <param name="pageIndex"> /// The page index. /// </param> /// <param name="pageSize"> /// The page items. /// </param> /// <param name="totalCount"> /// The total Count. /// </param> /// <returns> /// The <see cref="IEnumerable{AppletItem}"/>. /// </returns> public IEnumerable <AppletItem> GetAllPaged(int pageIndex, int pageSize, out int totalCount) { QueryOver <AppletItem, AppletItem> queryOver = new DefaultQueryOver <AppletItem, int>().GetQueryOver(); QueryOver <AppletItem, AppletItem> rowCountQuery = queryOver.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; QueryOver <AppletItem> pagedQuery = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(this.Repository.FindAll(pagedQuery)); }
/// <summary> /// The get all paged. /// </summary> /// <param name="pageIndex"> /// The page index. /// </param> /// <param name="pageSize"> /// The page items. /// </param> /// <param name="totalCount"> /// The total Count. /// </param> /// <returns> /// The <see cref="IEnumerable{SubModuleCategory}"/>. /// </returns> public IEnumerable <SubModuleCategory> GetAllPaged(int pageIndex, int pageSize, out int totalCount) { var queryOver = new DefaultQueryOver <SubModuleCategory, int>().GetQueryOver(); var rowCountQuery = queryOver.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; var pagedQuery = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(this.Repository.FindAll(pagedQuery)); }
/// <summary> /// The find all paged. /// </summary> /// <param name="pageIndex"> /// The page index. /// </param> /// <param name="pageSize"> /// The page size. /// </param> /// <returns> /// The <see cref="IEnumerable{TEntity}"/>. /// </returns> public IEnumerable <TEntity> FindAllPaged(int pageIndex, int pageSize) { if (pageIndex <= default(int)) { pageIndex = 1; } var queryOver = new DefaultQueryOver <TEntity, TId>().GetQueryOver(); var pagedQuery = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(this.FindAll(pagedQuery)); }
public IEnumerable <Contact> GetAllByCompanyAndNamePaged(string searchPattern, int companyId, int pageIndex, int pageSize, out int totalCount) { var searchIds = new List <int>(); if (pageIndex <= default(int)) { pageIndex = 1; } var queryOver = new DefaultQueryOver <Contact, int>().GetQueryOver(); if (!string.IsNullOrWhiteSpace(searchPattern)) { searchIds = this._fullTextModel.Search(searchPattern, typeof(Contact), int.MaxValue).ToList(); queryOver = queryOver.AndRestrictionOn(x => x.Id).IsIn(searchIds); } if (companyId != 0) { CompanyContact companyContact = null; var queryOver2 = queryOver.JoinQueryOver(x => x.CompanyContacts, () => companyContact).Where(() => companyContact.Company.Id == companyId); var rowCountQuery = queryOver2.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; if (pageSize > 0) { var pagedQueryOver = queryOver2.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(searchIds.Any() ? this.Repository.FindAll(pagedQueryOver).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(pagedQueryOver)); } return(searchIds.Any() ? this.Repository.FindAll(queryOver2).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(queryOver2)); } else { var rowCountQuery = queryOver.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; if (pageSize > 0) { var pagedQueryOver = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(searchIds.Any() ? this.Repository.FindAll(pagedQueryOver).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(pagedQueryOver)); } return(searchIds.Any() ? this.Repository.FindAll(queryOver).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(queryOver)); } }
/// <summary> /// The get recent splash screen reports paged. /// </summary> /// <param name="userId"> /// The user id. /// </param> /// <param name="pageIndex"> /// The page index. /// </param> /// <param name="pageSize"> /// The page size. /// </param> /// <param name="totalCount"> /// The total count. /// </param> /// <returns> /// The <see cref="IEnumerable{RecentReportDTO}"/>. /// </returns> // ReSharper disable ImplicitlyCapturedClosure public IEnumerable <RecentReportDTO> GetRecentSplashScreenReportsPaged( int userId, int pageIndex, int pageSize, out int totalCount) { RecentReportFromStoredProcedureDTO dto = null; SubModuleCategory category = null; QueryOver <SubModuleItem, SubModuleItem> queryOver = new DefaultQueryOver <SubModuleItem, int>().GetQueryOver() .Where(x => x.CreatedBy.Id == userId) .JoinAlias(x => x.SubModuleCategory, () => category) .OrderBy(x => x.DateModified) .Desc.SelectList( list => list.Select(x => x.DateModified) .WithAlias(() => dto.dateModified) .Select(() => category.Id) .WithAlias(() => dto.subModuleCategoryId) .Select(x => x.Id) .WithAlias(() => dto.subModuleItemId) .Select(() => category.SubModule.Id) .WithAlias(() => dto.type)) .TransformUsing(Transformers.AliasToBean <RecentReportFromStoredProcedureDTO>()); QueryOver <SubModuleItem, SubModuleItem> rowCountQuery = queryOver.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; QueryOver <SubModuleItem> pagedQuery = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); var reports = this.Repository.FindAll <RecentReportFromStoredProcedureDTO>(pagedQuery) .ToList() .Select(x => new RecentReportDTO(x)) .ToList(); List <int> reportsIds = reports.Select(x => x.subModuleItemId).ToList(); Dictionary <int, RecentReportDTO> crosswords = this.appletItemModel.GetCrosswords(reportsIds); Dictionary <int, RecentReportDTO> quizes = this.quizModel.GetQuizes(reportsIds); Dictionary <int, RecentReportDTO> surveys = this.surveyModel.GetSurveys(reportsIds); Dictionary <int, RecentReportDTO> tests = this.testModel.GetTests(reportsIds); Dictionary <int, RecentReportDTO> socialProfiles = this.socialProfileModel.GetSNProfiles(reportsIds); return(this.MergeData(reports, new List <Dictionary <int, RecentReportDTO> > { crosswords, quizes, surveys, socialProfiles, tests })); }
public IEnumerable <Topic> GetAllByCategoryAndNamePaged(string searchPattern, int categoryId, int companyId, int pageIndex, int pageSize, out int totalCount) { var searchIds = new List <int>(); if (pageIndex <= default(int)) { pageIndex = 1; } var queryOver = new DefaultQueryOver <Topic, int>().GetQueryOver(); if (companyId != 0) { var subquery = QueryOver.Of <Category>().Where(x => x.CompanyId == companyId).Select(x => x.Id); queryOver = queryOver.WithSubquery.WhereProperty(x => x.Category.Id).In(subquery); } if (categoryId != 0) { queryOver = queryOver.Where(x => x.Category.Id == categoryId); } if (!string.IsNullOrWhiteSpace(searchPattern)) { searchIds = this.fullTextModel.Search(searchPattern, typeof(Topic), int.MaxValue).ToList(); queryOver = queryOver.AndRestrictionOn(x => x.Id).IsIn(searchIds); } var rowCountQuery = queryOver.ToRowCountQuery(); totalCount = this.Repository.FindOne <int>(rowCountQuery).Value; if (pageSize > 0) { var pagedQueryOver = queryOver.Take(pageSize).Skip((pageIndex - 1) * pageSize); return(searchIds.Any() ? this.Repository.FindAll(pagedQueryOver).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(pagedQueryOver)); } return(searchIds.Any() ? this.Repository.FindAll(queryOver).ToList().OrderBy(x => searchIds.IndexOf(x.Id)) : this.Repository.FindAll(queryOver)); }