public void Execute()
        {
            var searchValue = CommonHelper.GetSearchValue(_httpContext);

            CompletedLoansListState completedLoansListState = _httpContext.Session[SessionHelper.CompletedLoansListState] != null ?
                                                              (CompletedLoansListState)_httpContext.Session[SessionHelper.CompletedLoansListState] :
                                                              new CompletedLoansListState();

            if (!InputParameters.ContainsKey("BorroweStatusFilter"))
            {
                throw new ArgumentException("BorroweStatusFilter was expected!");
            }

            completedLoansListState.BorrowerStatusFilter = InputParameters["BorroweStatusFilter"].ToString() == "0" ? null : InputParameters["BorroweStatusFilter"].ToString();

            UserAccount user = _httpContext.Session[SessionHelper.UserData] != null && ((UserAccount)_httpContext.Session[SessionHelper.UserData]).Username == _httpContext.User.Identity.Name ?
                               user = (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
            completedLoansListState.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();
            }

            CompletedLoansViewModel completedLoansViewModel = CompletedLoansDataHelper.RetrieveCompletedLoansViewModel(completedLoansListState,
                                                                                                                       _httpContext.Session[SessionHelper.UserAccountIds] != null
                                                                              ? (List <int>)
                                                                                                                       _httpContext.Session[SessionHelper.UserAccountIds]
                                                                              : new List <int> {
            },
                                                                                                                       user.UserAccountId, searchValue, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId);

            _viewName  = "Queues/_completedloans";
            _viewModel = completedLoansViewModel;

            /* Persist new state */
            _httpContext.Session[SessionHelper.CompletedLoansViewModel] = completedLoansViewModel.ToXml();
            _httpContext.Session[SessionHelper.CompletedLoansListState] = completedLoansListState;
        }
        public void Execute()
        {
            var searchValue = CommonHelper.GetSearchValue(_httpContext);

            /* State retrieval */
            var completedLoansViewModel =
                _httpContext.Session[SessionHelper.CompletedLoansViewModel] != null ?
                new CompletedLoansViewModel().FromXml(_httpContext.Session[SessionHelper.CompletedLoansViewModel].ToString()) :
                new CompletedLoansViewModel();

            CompletedLoansListState completedLoansListState;

            if (_httpContext.Session[SessionHelper.CompletedLoansListState] != null)
            {
                completedLoansListState = ( CompletedLoansListState )_httpContext.Session[SessionHelper.CompletedLoansListState];
            }
            else
            {
                completedLoansListState = new CompletedLoansListState();
            }

            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 */
            CompletedLoansAttribute newSortColumn;

            if (!InputParameters.ContainsKey("Column"))
            {
                throw new ArgumentException("Column value was expected!");
            }

            newSortColumn = ( CompletedLoansAttribute )Enum.Parse(typeof(CompletedLoansAttribute), InputParameters["Column"].ToString());

            // switch direction
            if (completedLoansListState.SortColumn == newSortColumn && completedLoansListState.SortDirection == "ASC")
            {
                completedLoansListState.SortDirection = "DESC";
            }
            else
            {
                completedLoansListState.SortDirection = "ASC";
            }

            completedLoansListState.SortColumn  = newSortColumn;
            completedLoansListState.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();
            }

            var completedLoansViewData = CompletedLoansDataHelper.RetrieveCompletedLoansViewModel(completedLoansListState,
                                                                                                  _httpContext.Session[SessionHelper.UserAccountIds] !=
                                                                                                  null
                                                                                    ? (List <int>)
                                                                                                  _httpContext.Session[
                                                                                                      SessionHelper.UserAccountIds]
                                                                                    : new List <int> {
            },
                                                                                                  user.UserAccountId, searchValue, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId);


            if (completedLoansViewModel != null)
            {
                completedLoansViewModel.CompletedLoansItems = completedLoansViewData.CompletedLoansItems;
                completedLoansViewModel.PageCount           = completedLoansViewData.PageCount;
                completedLoansViewModel.TotalItems          = completedLoansViewData.TotalItems;

                CompletedLoansGridHelper.ProcessPagingOptions(completedLoansListState, completedLoansViewModel);
            }


            _viewName  = "Queues/_completedloans";
            _viewModel = completedLoansViewModel;

            /* Persist new state */
            _httpContext.Session[SessionHelper.CompletedLoansViewModel] = completedLoansViewModel.ToXml();
            _httpContext.Session[SessionHelper.CompletedLoansListState] = completedLoansListState;
        }
        public void Execute()
        {
            var searchValue = CommonHelper.GetSearchValue(_httpContext);

            CompletedLoansListState completedLoansListState = null;

            if ((_httpContext != null) && (_httpContext.Session[SessionHelper.CompletedLoansListState] != null))
            {
                completedLoansListState = ( CompletedLoansListState )_httpContext.Session[SessionHelper.CompletedLoansListState];
            }
            else
            {
                completedLoansListState = new CompletedLoansListState();
            }

            FilterViewModel userFilterViewModel = null;

            if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null))
            {
                userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString());
                userFilterViewModel.FilterContext = FilterContextEnum.CompletedLoans;
            }
            else
            {
                // possible state retrieval?
                userFilterViewModel = new FilterViewModel
                {
                    FilterContext = FilterContextEnum.CompletedLoans
                };
            }

            Boolean refresh = InputParameters != null && InputParameters.ContainsKey("Refresh") && InputParameters["Refresh"].ToString().Trim() == "true";

            // reset Page Number to 1st on Tab change
            if (!refresh)
            {
                completedLoansListState.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 completedLoansViewModel = CompletedLoansDataHelper.RetrieveCompletedLoansViewModel(completedLoansListState,
                                                                                                   _httpContext.Session[SessionHelper.UserAccountIds] != null
                            ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds]
                            : new List <int> {
            }, user.UserAccountId, searchValue, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId);

            _viewName  = "Queues/_completedloans";
            _viewModel = completedLoansViewModel;

            /* Persist new state */
            _httpContext.Session[SessionHelper.CompletedLoansViewModel] = completedLoansViewModel.ToXml();
            _httpContext.Session[SessionHelper.CompletedLoansListState] = completedLoansListState;
            _httpContext.Session[SessionHelper.FilterViewModel]         = userFilterViewModel.ToXml();
            _httpContext.Session[SessionHelper.CurrentTab] = LoanCenterTab.CompletedLoans;
        }
Esempio n. 4
0
        public void Execute()
        {
            var searchValue = CommonHelper.GetSearchValue(_httpContext);

            CompletedLoansListState completedLoansListState;

            if (_httpContext.Session[SessionHelper.CompletedLoansListState] != null)
            {
                completedLoansListState = ( CompletedLoansListState )_httpContext.Session[SessionHelper.CompletedLoansListState];
            }
            else
            {
                completedLoansListState = new CompletedLoansListState();
            }

            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 */
            if (!InputParameters.ContainsKey("Page"))
            {
                throw new ArgumentException("Page number was expected!");
            }

            var newPageNumber = Convert.ToInt32(InputParameters["Page"]);

            completedLoansListState.CurrentPage = newPageNumber;

            FilterViewModel userFilterViewModel = null;

            if ((_httpContext != null) && (_httpContext.Session[SessionHelper.FilterViewModel] != null))
            {
                userFilterViewModel = new FilterViewModel().FromXml(_httpContext.Session[SessionHelper.FilterViewModel].ToString());
            }
            else
            {
                userFilterViewModel = new FilterViewModel();
            }

            CompletedLoansViewModel completedLoansViewModel = CompletedLoansDataHelper.RetrieveCompletedLoansViewModel(completedLoansListState,
                                                                                                                       _httpContext.Session[SessionHelper.UserAccountIds] != null
                                                              ? (List <int>)_httpContext.Session[SessionHelper.UserAccountIds]
                                                              : new List <int> {
            }, user.UserAccountId,
                                                                                                                       searchValue, userFilterViewModel.CompanyId, userFilterViewModel.ChannelId, userFilterViewModel.DivisionId, userFilterViewModel.BranchId);


            _viewName  = "Queues/_completedloans";
            _viewModel = completedLoansViewModel;

            /* Persist new state */
            _httpContext.Session[SessionHelper.CompletedLoansViewModel] = completedLoansViewModel.ToXml();
            _httpContext.Session[SessionHelper.CompletedLoansListState] = completedLoansListState;
        }