Example #1
0
        public ActionResult Search(bool?isBack)
        {
            if (isBack != null && isBack.Value == true && Session["doc_sc"] != null)
            {
                int ItemsCount = (int)Session["doc_ic"];
                int?p          = (int?)Session["doc_p"];
                return(Search(null, ItemsCount, p));
            }


            //DocumentsSortCriteria sortCriteria = new DocumentsSortCriteria()
            //{
            //    SortDirection = SortDirection.Descending,
            //    SortType = DocumentSortType.CreateDate
            //};

            DocumentSearchViewModel viewModel = new DocumentSearchViewModel()
            {
                //SortCriteria = sortCriteria,
                SearchCriteria = new DocumentsSearchCriteria()
                {
                    ItemsCount = 10
                },
                IsSearchPerformed = false,
                Categories        = _dictRepository.GetCategories().ToList(),
                Senders           = _dictRepository.GetSenders().ToList(),
                Types2            = _dictRepository.GetTypes2().ToList()
            };

            return(View(viewModel));
        }
Example #2
0
        public ActionResult Search(FormCollection formValues, int ItemsCount, int?p)
        {
            int?page        = p;
            int itemsOnPage = ItemsCount;

            DocumentsSearchCriteria searchCriteria = new DocumentsSearchCriteria();

            if (formValues != null)
            {
                UpdateModel <DocumentsSearchCriteria>(searchCriteria, formValues.AllKeys);
            }
            else
            {
                searchCriteria = Session["doc_sc"] as DocumentsSearchCriteria;
            }

            // olewamy sortowanie bo zmniejsza wydajnoϾ
            //DocumentsSortCriteria sortCriteria = new DocumentsSortCriteria();
            //if (formValues != null)
            //    UpdateModel<DocumentsSortCriteria>(sortCriteria, formValues.AllKeys);
            //else
            //    sortCriteria = Session["doc_soc"] as DocumentsSortCriteria;


            DocumentSearchViewModel viewModel = new DocumentSearchViewModel()
            {
                SearchCriteria = searchCriteria,
                //SortCriteria = sortCriteria,
                //SearchResults = new PaginatedList<DocumentDetails>(_repository.SearchDocuments(searchCriteria).SortDocuments(sortCriteria).AsQueryable<DocumentDetails>(), page ?? 0, itemsOnPage),
                IsSearchPerformed = true,
                Categories        = _dictRepository.GetCategories().ToList(),
                Senders           = _dictRepository.GetSenders().ToList(),
                Types2            = _dictRepository.GetTypes2().ToList()
            };


            Session["doc_sc"] = searchCriteria;
            //Session["doc_soc"] = sortCriteria;
            Session["doc_ic"] = ItemsCount;
            Session["doc_p"]  = p;


            if (searchCriteria.CategoryID.HasValue)
            {
                viewModel.Types = _dictRepository.GetTypes(searchCriteria.CategoryID.Value).ToList();
            }

            return(View(viewModel));
        }