public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); AlertsViewModel alertsViewModel = _httpContext.Session[SessionHelper.AlertViewModel] != null ? new AlertsViewModel().FromXml(_httpContext.Session[SessionHelper.AlertViewModel].ToString()) : new AlertsViewModel(); AlertsListState alertsListState = _httpContext.Session[SessionHelper.AlertsListState] != null ? (AlertsListState)_httpContext.Session[SessionHelper.AlertsListState] : new AlertsListState(); if (!InputParameters.ContainsKey("LoanPurposeFilter")) { throw new ArgumentException("LoanPurposeFilter was expected!"); } alertsListState.LoanPurposeFilter = InputParameters["LoanPurposeFilter"].ToString() == "0" ? "" : InputParameters["LoanPurposeFilter"].ToString(); UserAccount user = _httpContext.Session[SessionHelper.UserData] != null && ((UserAccount)_httpContext.Session[SessionHelper.UserData]).Username == _httpContext.User.Identity.Name ? (UserAccount)_httpContext.Session[SessionHelper.UserData] : UserAccountServiceFacade.GetUserByName(_httpContext.User.Identity.Name); if (user == null) { throw new InvalidOperationException("User is null"); } // on date filter change, reset page number alertsListState.CurrentPage = 1; FilterViewModel userFilterViewModel = null; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null)) { userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString()); } else { userFilterViewModel = new FilterViewModel(); } alertsViewModel = AlertsDataHelper.RetrieveAlertViewModel(alertsListState, _httpContext.Session[SessionHelper.UserAccountIds] != null ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds] : new List <int> { }, alertsListState.BoundDate, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_alerts"; _viewModel = alertsViewModel; /* Persist new state */ _httpContext.Session[SessionHelper.AlertViewModel] = alertsViewModel.ToXml(); _httpContext.Session[SessionHelper.AlertsListState] = alertsListState; }
public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); AlertsListState alertListState; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.AlertsListState] != null)) { alertListState = ( AlertsListState )_httpContext.Session[SessionHelper.AlertsListState]; } else { alertListState = new AlertsListState(); } FilterViewModel userFilterViewModel; if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null)) { userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString()); userFilterViewModel.FilterContext = FilterContextEnum.Alerts; } else { // possible state retrieval? userFilterViewModel = new FilterViewModel { FilterContext = FilterContextEnum.Alerts }; } Boolean refresh = InputParameters != null && InputParameters.ContainsKey("Refresh") && InputParameters["Refresh"].ToString().Trim() == "true"; // reset Page Number to 1st on Tab change if (!refresh) { alertListState.CurrentPage = 1; } UserAccount user; if (_httpContext != null && _httpContext.Session[SessionHelper.UserData] != null) { user = ( UserAccount )_httpContext.Session[SessionHelper.UserData]; } else { throw new InvalidOperationException("UserData is null"); } var alertsViewModel = AlertsDataHelper.RetrieveAlertViewModel(alertListState, _httpContext.Session[SessionHelper.UserAccountIds] != null ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds] : new List <int> { }, alertListState.BoundDate, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_alerts"; _viewModel = alertsViewModel; /* Persist new state */ _httpContext.Session[SessionHelper.AlertViewModel] = alertsViewModel.ToXml(); _httpContext.Session[SessionHelper.AlertsListState] = alertListState; _httpContext.Session[SessionHelper.FilterViewModel] = userFilterViewModel.ToXml(); _httpContext.Session[SessionHelper.CurrentTab] = LoanCenterTab.Alerts; }
public void Execute() { String searchValue = CommonHelper.GetSearchValue(_httpContext); AlertsListState alertListState = null; if (_httpContext.Session[SessionHelper.AlertsListState] != null) { alertListState = ( AlertsListState )_httpContext.Session[SessionHelper.AlertsListState]; } else { alertListState = new AlertsListState(); } UserAccount user; 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 */ var newPageNumber = 0; if (!InputParameters.ContainsKey("Page")) { throw new ArgumentException("Page number was expected!"); } else { newPageNumber = Convert.ToInt32(InputParameters["Page"]); } alertListState.CurrentPage = newPageNumber; /* 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(); } var alertViewModel = AlertsDataHelper.RetrieveAlertViewModel(alertListState, _httpContext.Session[SessionHelper.UserAccountIds] != null ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds] : new List <int> { }, alertListState.BoundDate, user.UserAccountId, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId, searchValue); _viewName = "Queues/_alerts"; _viewModel = alertViewModel; /* Persist new state */ _httpContext.Session[SessionHelper.AlertViewModel] = alertViewModel.ToXml(); _httpContext.Session[SessionHelper.AlertsListState] = alertListState; }