public static void ProcessPagingOptions(PipelineListState pipelineListState, PipelineViewModel pipelineViewModel) { if (pipelineViewModel.PageCount % 10 == 0) { pipelineViewModel.PageGroups = (pipelineViewModel.PageCount / 10); } else { pipelineViewModel.PageGroups = (pipelineViewModel.PageCount / 10) + 1; } pipelineViewModel.PageGroups = ( int )pipelineViewModel.PageGroups; if (pipelineViewModel.PageCount % 10 != 0) { pipelineViewModel.LastPageItems = pipelineViewModel.PageCount % 10; } else { pipelineViewModel.LastPageItems = 10; } pipelineViewModel.CurrentPage = pipelineListState.CurrentPage; if (pipelineViewModel.CurrentPage % 10 != 0) { pipelineViewModel.StartPage = ( int )(pipelineViewModel.CurrentPage / 10) * 10 + 1; if ((( int )((pipelineViewModel.CurrentPage) / 10) + 1) == pipelineViewModel.PageGroups) { pipelineViewModel.EndPage = ( int )(pipelineViewModel.CurrentPage / 10) * 10 + pipelineViewModel.LastPageItems; pipelineViewModel.LastPageDots = true; } else { pipelineViewModel.EndPage = ( int )(pipelineViewModel.CurrentPage / 10) * 10 + 10; pipelineViewModel.LastPageDots = false; } } else { pipelineViewModel.StartPage = ( int )((pipelineViewModel.CurrentPage - 1) / 10) * 10 + 1; if ((( int )((pipelineViewModel.CurrentPage - 1) / 10) + 1) == pipelineViewModel.PageGroups) { pipelineViewModel.EndPage = ( int )(pipelineViewModel.CurrentPage / 10) * 10; pipelineViewModel.LastPageDots = true; } else { pipelineViewModel.EndPage = ( int )((pipelineViewModel.CurrentPage - 1) / 10) * 10 + 10; pipelineViewModel.LastPageDots = false; } } }
public static PipelineViewModel RetrievePipelineViewModel(PipelineListState pipelineListState, List <int> userAccountIds, int userAccountId, Guid companyId, int channelId, int divisionId, Guid branchId, string searchTerm = null) { if (pipelineListState == null) { pipelineListState = new PipelineListState(); } if (userAccountIds == null) { userAccountIds = new List <int>(); } string isOnLineUser = pipelineListState.BorrowerStatusFilter == null ? null : pipelineListState.BorrowerStatusFilter == BorrowerStatusType.Offline.GetStringValue() ? "0" : "1"; PipelineViewData pipelineViewData = LoanServiceFacade.RetrievePipelineItemsView(userAccountIds, pipelineListState.CurrentPage, pipelineListState.SortColumn.GetStringValue(), pipelineListState.SortDirection, userAccountId, searchTerm, pipelineListState.ActivityTypeFilter, pipelineListState.BoundDate, pipelineListState.LoanPurposeFilter, isOnLineUser, companyId, channelId, divisionId, branchId ); if (pipelineViewData == null) { pipelineViewData = new PipelineViewData { PipelineItems = new List <PipelineViewItem>(), TotalItems = 0, TotalPages = 0 }; } // Set paging numbers else if (userAccountIds.Any()) { pipelineViewData.TotalItems = pipelineViewData.TotalItems; pipelineViewData.TotalPages = pipelineViewData.TotalItems / 10; if ((pipelineViewData.TotalItems % 10) != 0) { pipelineViewData.TotalPages++; } } for (int i = 0; i < pipelineViewData.PipelineItems.Count(); i++) { if (pipelineViewData.PipelineItems[i].PipelineViewItems.Count > 0) { DataForShortProductDescription data = LoanServiceFacade.RetrieveDataForShortProductDescription(pipelineViewData.PipelineItems[i].PipelineViewItems[0].LoanId); pipelineViewData.PipelineItems[i].PipelineViewItems[0].ProgramName = LoanHelper.FormatShortProductDescription(pipelineViewData.PipelineItems[i].PipelineViewItems[0].IsHarp, EnumHelper.GetStringValue((AmortizationType)data.AmortizationType), data.LoanTerm, data.FixedRateTerm, EnumHelper.GetStringValue((MortgageType)data.MortgageType)); } } PipelineViewModel pipelineViewModel = new PipelineViewModel { ActivityTypeList = CommonHelper.RetrieveActivityListForQueueFilter(), LoanPurposeList = new List <LoanTransactionType>(Enum.GetValues(typeof(LoanTransactionType)).Cast <LoanTransactionType>().Skip(1)), BorrowerStatusList = new List <BorrowerStatusType>(Enum.GetValues(typeof(BorrowerStatusType)).Cast <BorrowerStatusType>().Skip(1)), PipelineItems = pipelineViewData.PipelineItems, PageCount = pipelineViewData.TotalPages, TotalItems = pipelineViewData.TotalItems }; PipelineGridHelper.ProcessPagingOptions(pipelineListState, pipelineViewModel); PipelineGridHelper.ApplyClassCollection(pipelineViewModel); return(pipelineViewModel); }