public static NewLoanApplicationViewModel RetrieveNewApplicationViewModel(NewLoanApplicationListState newLoanApplicationListState, List <int> userAccountIds, int userAccountId, Guid companyId, int channelId, int divisionId, Guid branchId, string searchTerm = null) { if (newLoanApplicationListState == null) { newLoanApplicationListState = new NewLoanApplicationListState(); } if (userAccountIds == null) { userAccountIds = new List <int>(); } string isOnLineUser = String.IsNullOrEmpty(newLoanApplicationListState.BorrowerStatusFilter) ? String.Empty : newLoanApplicationListState.BorrowerStatusFilter == BorrowerStatusType.Offline.GetStringValue() ? "0" : "1"; NewLoanApplicationViewData newLoanApplicationViewData = LoanServiceFacade.RetrieveNewLoanApplicationItemsView(userAccountIds, newLoanApplicationListState.CurrentPage, newLoanApplicationListState.SortColumn.GetStringValue(), newLoanApplicationListState.SortDirection, newLoanApplicationListState.BoundDate, userAccountId, searchTerm, companyId, channelId, divisionId, newLoanApplicationListState.LoanPurposeFilter, isOnLineUser, branchId ); if (newLoanApplicationViewData == null) { newLoanApplicationViewData = new NewLoanApplicationViewData { NewLoanApplicationItems = new List <NewLoanApplicationViewItem>(), TotalItems = 0, TotalPages = 0 }; } NewLoanApplicationViewModel newLoanApplicationViewModel = new NewLoanApplicationViewModel { NewLoanApplicationViewItems = newLoanApplicationViewData.NewLoanApplicationItems, PageCount = newLoanApplicationViewData.TotalPages, TotalItems = newLoanApplicationViewData.TotalItems, LoanPurposeList = new List <LoanTransactionType>(Enum.GetValues(typeof(LoanTransactionType)).Cast <LoanTransactionType>().Skip(1)), BorrowerStatusList = new List <BorrowerStatusType>(Enum.GetValues(typeof(BorrowerStatusType)).Cast <BorrowerStatusType>().Skip(1)), }; NewLoanApplicationGridHelper.ProcessPagingOptions(newLoanApplicationListState, newLoanApplicationViewModel); NewLoanApplicationGridHelper.ApplyClassCollection(newLoanApplicationViewModel); return(newLoanApplicationViewModel); }
public static void ApplyClassCollection(NewLoanApplicationViewModel newLoanApplicationViewModel) { if (newLoanApplicationViewModel.NewLoanApplicationViewItems != null) { // Business rule foreach (var newLoanApplicationItem in newLoanApplicationViewModel.NewLoanApplicationViewItems) { foreach (var item in newLoanApplicationItem.NewLoanApplicationViewItems) { if (item.LockExpiration < DateTime.Now && item.LockExpiration != DateTime.MinValue) { item.ClassCollection = "newloanapplicationtablelistduedate"; } else { item.ClassCollection = "newloanapplicationtablelist"; } if (item.ExceptionItemMaxWeight != -1) { item.ExceptionClassCollection = item.ExceptionItemMaxWeight < 300 ? "exceptionIcon exceptionIcon0" : "exceptionIcon exceptionIcon1"; } if (item == newLoanApplicationItem.NewLoanApplicationViewItems.First()) { item.ClassCollection = item.ClassCollection + " first last"; } if (item == newLoanApplicationItem.NewLoanApplicationViewItems.Last()) { item.ClassCollection = item.ClassCollection + " last"; } } } } }
public static void ProcessPagingOptions(NewLoanApplicationListState newLoanApplicationListState, NewLoanApplicationViewModel newLoanApplicationViewModel) { if (newLoanApplicationViewModel.PageCount % 10 == 0) { newLoanApplicationViewModel.PageGroups = (newLoanApplicationViewModel.PageCount / 10); } else { newLoanApplicationViewModel.PageGroups = (newLoanApplicationViewModel.PageCount / 10) + 1; } newLoanApplicationViewModel.PageGroups = ( int )newLoanApplicationViewModel.PageGroups; if (newLoanApplicationViewModel.PageCount % 10 != 0) { newLoanApplicationViewModel.LastPageItems = newLoanApplicationViewModel.PageCount % 10; } else { newLoanApplicationViewModel.LastPageItems = 10; } newLoanApplicationViewModel.CurrentPage = newLoanApplicationListState.CurrentPage; if (newLoanApplicationViewModel.CurrentPage % 10 != 0) { newLoanApplicationViewModel.StartPage = ( int )(newLoanApplicationViewModel.CurrentPage / 10) * 10 + 1; if ((( int )((newLoanApplicationViewModel.CurrentPage) / 10) + 1) == newLoanApplicationViewModel.PageGroups) { newLoanApplicationViewModel.EndPage = ( int )(newLoanApplicationViewModel.CurrentPage / 10) * 10 + newLoanApplicationViewModel.LastPageItems; newLoanApplicationViewModel.LastPageDots = true; } else { newLoanApplicationViewModel.EndPage = ( int )(newLoanApplicationViewModel.CurrentPage / 10) * 10 + 10; newLoanApplicationViewModel.LastPageDots = false; } } else { newLoanApplicationViewModel.StartPage = ( int )((newLoanApplicationViewModel.CurrentPage - 1) / 10) * 10 + 1; if ((( int )((newLoanApplicationViewModel.CurrentPage - 1) / 10) + 1) == newLoanApplicationViewModel.PageGroups) { newLoanApplicationViewModel.EndPage = ( int )(newLoanApplicationViewModel.CurrentPage / 10) * 10; newLoanApplicationViewModel.LastPageDots = true; } else { newLoanApplicationViewModel.EndPage = ( int )((newLoanApplicationViewModel.CurrentPage - 1) / 10) * 10 + 10; newLoanApplicationViewModel.LastPageDots = false; } } }
public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); /* State retrieval */ NewLoanApplicationViewModel newLoanApplicationViewModel = null; if (_httpContext.Session[SessionHelper.NewLoanApplicationViewModel] != null) { newLoanApplicationViewModel = new NewLoanApplicationViewModel().FromXml(_httpContext.Session[SessionHelper.NewLoanApplicationViewModel].ToString()); } else { newLoanApplicationViewModel = new NewLoanApplicationViewModel(); } NewLoanApplicationListState newLoanApplicationListState = null; if (_httpContext.Session[SessionHelper.NewLoanApplicationListState] != null) { newLoanApplicationListState = ( NewLoanApplicationListState )_httpContext.Session[SessionHelper.NewLoanApplicationListState]; } else { newLoanApplicationListState = new NewLoanApplicationListState(); } if (!InputParameters.ContainsKey("LoanPurposeFilter")) { throw new ArgumentException("LoanPurposeFilter was expected!"); } if (InputParameters["LoanPurposeFilter"].ToString() == "0") { newLoanApplicationListState.LoanPurposeFilter = ""; } else { newLoanApplicationListState.LoanPurposeFilter = InputParameters["LoanPurposeFilter"].ToString(); } UserAccount user = null; if (_httpContext.Session[SessionHelper.UserData] != null && (( UserAccount )_httpContext.Session[SessionHelper.UserData]).Username == _httpContext.User.Identity.Name) { user = ( UserAccount )_httpContext.Session[SessionHelper.UserData]; } else { user = UserAccountServiceFacade.GetUserByName(_httpContext.User.Identity.Name); } if (user == null) { throw new InvalidOperationException("User is null"); } // on date filter change, reset page number FilterViewModel userFilterViewModel = null; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null)) { userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString()); } else { userFilterViewModel = new FilterViewModel(); } newLoanApplicationListState.CurrentPage = 1; newLoanApplicationViewModel = NewLoanApplicationDataHelper.RetrieveNewApplicationViewModel(newLoanApplicationListState, _httpContext.Session[SessionHelper.UserAccountIds] != null ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds] : new List <int> { }, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_newLoanApplication"; _viewModel = newLoanApplicationViewModel; /* Persist new state */ _httpContext.Session[SessionHelper.NewLoanApplicationViewModel] = newLoanApplicationViewModel.ToXml(); _httpContext.Session[SessionHelper.NewLoanApplicationListState] = newLoanApplicationListState; }
public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); NewLoanApplicationListState newLoanApplicationListState = null; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.NewLoanApplicationListState] != null)) { newLoanApplicationListState = ( NewLoanApplicationListState )_httpContext.Session["NewLoanApplicationListState"]; } else { newLoanApplicationListState = new NewLoanApplicationListState(); } FilterViewModel userFilterViewModel = null; if ((_httpContext != null) && (_httpContext.Session["FilterViewModel"] != null)) { userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session["FilterViewModel"].ToString()); userFilterViewModel.FilterContext = FilterContextEnum.NewLoanApplication; } else { // possible state retrieval? userFilterViewModel = new FilterViewModel(); userFilterViewModel.FilterContext = FilterContextEnum.NewLoanApplication; } Boolean refresh = InputParameters != null && InputParameters.ContainsKey("Refresh") && InputParameters["Refresh"].ToString().Trim() == "true"; // reset Page Number to 1st on Tab change if (!refresh) { newLoanApplicationListState.CurrentPage = 1; } UserAccount user = null; if (_httpContext.Session[SessionHelper.UserData] != null) { user = ( UserAccount )_httpContext.Session[SessionHelper.UserData]; } else { throw new InvalidOperationException("UserData is null"); } NewLoanApplicationViewModel newLoanApplicationViewModel = new NewLoanApplicationViewModel(); newLoanApplicationViewModel = NewLoanApplicationDataHelper.RetrieveNewApplicationViewModel(newLoanApplicationListState, _httpContext.Session[SessionHelper.UserAccountIds] != null ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds] : new List <int> { }, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_newLoanApplication"; _viewModel = newLoanApplicationViewModel; /* Persist new state */ _httpContext.Session["NewLoanApplicationViewModel"] = newLoanApplicationViewModel.ToXml(); _httpContext.Session["NewLoanApplicationListState"] = newLoanApplicationListState; _httpContext.Session["FilterViewModel"] = userFilterViewModel.ToXml(); _httpContext.Session["CurrentTab"] = LoanCenterTab.NewLoanApplication; }
public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); /* State retrieval */ NewLoanApplicationViewModel newLoanApplicationViewModel = null; if (_httpContext.Session[SessionHelper.NewLoanApplicationViewModel] != null) { newLoanApplicationViewModel = new NewLoanApplicationViewModel().FromXml(_httpContext.Session[SessionHelper.NewLoanApplicationViewModel].ToString()); } else { newLoanApplicationViewModel = new NewLoanApplicationViewModel(); } NewLoanApplicationListState newLoanApplicationListState = null; if (_httpContext.Session[SessionHelper.NewLoanApplicationListState] != null) { newLoanApplicationListState = ( NewLoanApplicationListState )_httpContext.Session[SessionHelper.NewLoanApplicationListState]; } else { newLoanApplicationListState = new NewLoanApplicationListState(); } UserAccount user = null; if (_httpContext.Session[SessionHelper.UserData] != null && ((UserAccount)_httpContext.Session[SessionHelper.UserData]).Username == _httpContext.User.Identity.Name) { user = ( UserAccount )_httpContext.Session[SessionHelper.UserData]; } else { user = UserAccountServiceFacade.GetUserByName(_httpContext.User.Identity.Name); } if (user == null) { throw new InvalidOperationException("User is null"); } /* parameter processing */ NewLoanApplicationAttribute newSortColumn; if (!InputParameters.ContainsKey("Column")) { throw new ArgumentException("Column value was expected!"); } else { newSortColumn = ( NewLoanApplicationAttribute )Enum.Parse(typeof(NewLoanApplicationAttribute), InputParameters["Column"].ToString()); } // switch direction if (newLoanApplicationListState.SortColumn == newSortColumn && newLoanApplicationListState.SortDirection == "ASC") { newLoanApplicationListState.SortDirection = "DESC"; } else { newLoanApplicationListState.SortDirection = "ASC"; } newLoanApplicationListState.SortColumn = newSortColumn; newLoanApplicationListState.CurrentPage = 1; /* Command processing */ FilterViewModel userFilterViewModel = null; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null)) { userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString()); } else { userFilterViewModel = new FilterViewModel(); } newLoanApplicationViewModel = NewLoanApplicationDataHelper.RetrieveNewApplicationViewModel(newLoanApplicationListState, _httpContext.Session["UserAccountIds"] != null ? (List <int>) _httpContext.Session[ "UserAccountIds"] : new List <int> { }, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_newLoanApplication"; _viewModel = newLoanApplicationViewModel; /* Persist new state */ _httpContext.Session[SessionHelper.NewLoanApplicationViewModel] = newLoanApplicationViewModel.ToXml(); _httpContext.Session[SessionHelper.NewLoanApplicationListState] = newLoanApplicationListState; }