public ActionResult Advance(string account, string originator, string seller, string investor, string columnToSort, string sortDirection,GridSortOptions gridSortOptions, int? page) { if (Request.IsAjaxRequest()) { gridSortOptions.Column = columnToSort; gridSortOptions.Direction = (sortDirection == "ASC") ? MvcContrib.Sorting.SortDirection.Ascending : MvcContrib.Sorting.SortDirection.Descending; } if (account == "account #") account = ""; if (originator == "originator") originator = ""; if (seller == "seller") seller = ""; if (investor == "investor") investor = ""; var dataQueries = new DataQueries(); IQueryable<SearchResult> results = dataQueries.GetSearchResults(account, originator, seller, investor); //return PartialView("_BasicPartial", results); var pagedViewModel = new PagedViewModel<SearchResult> { ViewData = ViewData, Query = results, GridSortOptions = gridSortOptions, DefaultSortColumn = "ACCOUNT", Page = page, PageSize = 20, } .Setup(); if (Request.IsAjaxRequest()) return PartialView("_BasicPartial",pagedViewModel); return View("Basic",pagedViewModel); }
public virtual ActionResult List(GridSortOptions gridSortOptions, int? page = null, int? itemsPerPage = null, string search = null) { if (gridSortOptions.Column == null) { gridSortOptions.Column = "Id"; } var entitiesperPage = !itemsPerPage.HasValue ? PagedEntityListFilterDto.DefaultItemsPerPage : itemsPerPage.Value; var currentPage = !page.HasValue? 1 : page.Value; var userFilter = new PagedEntityListFilterDto { AscendingOrder = gridSortOptions.Direction == SortDirection.Ascending, Column = gridSortOptions.Column, StartPage = currentPage, ItemsPerPage = entitiesperPage, SearchText = search }; var users = userService.GetPage(userFilter); var userEntitiesViewModel = EntityToViewModelMapper.Mapper.Map(users.Entities, new List<UserViewModel>()); var pagination = new CustomPagination<UserViewModel>(userEntitiesViewModel, users.Page, entitiesperPage, users.Count); var usersViewModel = new UserListViewModel { Users = pagination, GridSortOptions = gridSortOptions, Page = currentPage, Search = search }; return View(usersViewModel); }
public ActionResult Basic(string basicSearchVal, string columnToSort, string sortDirection, GridSortOptions gridSortOptions, int? page) { if (Request.IsAjaxRequest()) { gridSortOptions.Column = columnToSort; gridSortOptions.Direction = (sortDirection == "ASC") ? MvcContrib.Sorting.SortDirection.Ascending : MvcContrib.Sorting.SortDirection.Descending; } var dataQueries = new DataQueries(); IQueryable<SearchResult> results = dataQueries.GetSearchResults(basicSearchVal); //return PartialView("_BasicPartial", results); var pagedViewModel = new PagedViewModel<SearchResult> { ViewData = ViewData, Query = results, GridSortOptions = gridSortOptions, DefaultSortColumn = "ACCOUNT", Page = page, PageSize = 50, } .Setup(); if (Request.IsAjaxRequest()) return PartialView("_BasicPartial", pagedViewModel); return View(pagedViewModel); //return PartialView("_BasicPartial",pagedViewModel); }
public ActionResult Index( GridSortOptions sort) { //BaseController var a = AdminUser; var b = User; return View(AdminUser); }
public ActionResult Index(int? page, GridSortOptions sort) { const int pageSize = 10; var pageNumber = page ?? 1; var source = DbProvider.D<Role>().Where(x => !x.IsDelete).OrderBy(x=>x.ID); return View(source.ToPagedList(pageNumber - 1, pageSize)); }
public void ConstructPageViewModelWithApplyMethodResult() { var query = MockRepositoryMethod(); var viewData = new ViewDataDictionary(); viewData["GridSortOptions"] = new GridSortOptions(); viewData["PageNumber"] = 1; viewData["PageSize"] = 10; var model = PagedViewModelFactory.Create<MockEntity>(viewData).Apply(query).Setup(); Assert.AreEqual(query.Count(), model.PagedList.Count()); }
public ActionResult Index(DealSearchViewModel search, GridSortOptions sort, int? page) { search.ControllerName = "ChannelDirector"; search.ActionName = "Index"; ViewBag.SearchModel = search; ViewBag.Sort = sort; IQueryable<Deal> deals = DealMgr.GetChannelDirectorDeals().Search(search); return View(SortAndPagingDeal(deals, sort, page)); }
/// <summary> /// This method takes in a filter list, paging/sort options and applies /// them to an IQueryable of type ProductViewModel /// </summary> /// <returns> /// The return object is a container that holds the sorted/paged list, /// state for the fiters and state about the current sorted column /// </returns> public ActionResult Index( string productName, int? supplierID, int? categoryID, GridSortOptions gridSortOptions, int? page) { var productList = productRepository.GetProductsProjected(); // Set default sort column if (string.IsNullOrWhiteSpace(gridSortOptions.Column)) { gridSortOptions.Column = "ProductID"; } // Filter on SupplierID if (supplierID.HasValue) { productList = productList.Where(a => a.SupplierID == supplierID); } // Filter on CategoryID if (categoryID.HasValue) { productList = productList.Where(a => a.CategoryID == categoryID); } // Filter on ProductName if (!string.IsNullOrWhiteSpace(productName)) { productList = productList.Where(a => a.ProductName.Contains(productName)); } // Create all filter data and set current values if any // These values will be used to set the state of the select list and textbox // by sending it back to the view. var productFilterViewModel = new ProductFilterViewModel(); productFilterViewModel.SelectedCategoryID = categoryID ?? -1; productFilterViewModel.SelectedSupplierID = supplierID ?? -1; productFilterViewModel.Fill(); // Order and page the product list var productPagedList = productList .OrderBy(gridSortOptions.Column, gridSortOptions.Direction) .AsPagination(page ?? 1, 10); var productListContainer = new ProductListContainerViewModel { ProductPagedList = productPagedList, ProductFilterViewModel = productFilterViewModel, GridSortOptions = gridSortOptions }; return View(productListContainer); }
public virtual ActionResult Grid(GridSortOptions sort, int? page) { var model = settings.GetAllSettings().AsPagination(page ?? 1, 10) as IEnumerable<Settings>; if (sort.Column != null) { model = model.OrderBy(sort.Column, sort.Direction); } ViewData["sort"] = sort; return View(model); }
public ActionResult Index(int? page,GridSortOptions sort) { ViewBag.Sort = sort; int pageSize = 20; int startRow = pageSize * ((page ?? 1) - 1); IEnumerable<Employee> customers = EmployeeTask.FindAll(startRow, pageSize, sort); IFutureValue<int> count = EmployeeTask.CountAll(); return View(new CustomPagination<Employee>(customers, page ?? 1, pageSize, count.Value)); }
public ActionResult Sorting(GridSortOptions sort) { ViewData["sort"] = sort; var people = _peopleFactory.CreatePeople(); if(!string.IsNullOrEmpty(sort.Column)) { people = people.OrderBy(sort.Column, sort.Direction); } return View(people); }
public ActionResult Index(LoveBank.Web.Admin.Models.Test model, GridSortOptions sort) { //var source = DbProvider.D<User>().Where(x => x.IsDelete).OrderBy(sort.Column, // sort.Direction == SortDirection.Ascending); //return View(source.ToPagedList(pageNumber - 1, pageSize)); //LoveBank.Web.Admin.Models.Test model = new Models.Test(); model.list = DbProvider.D<TestProduct>().Where(x => x.ID > 0).OrderBy(sort.Column, sort.Direction == SortDirection.Descending).ToPagedList<TestProduct>(Int32.Parse( model.UserName), 5); return View(model); }
public ActionResult SortingAndPaging(int? page, GridSortOptions sort) { ViewData["sort"] = sort; var people = _peopleFactory.CreatePeople(); if (!string.IsNullOrEmpty(sort.Column)) { people = people.OrderBy(sort.Column, sort.Direction); } people = people.AsPagination(page ?? 1, 10); return View(people); }
// // GET: /MVCContrib/ public ActionResult Index(GridSortOptions sort, int? page) { IPagination<Employee> emp = null; if (sort.Column == null) sort.Column = "Name"; if (sort.Direction.ToString().ToLower() == "descending") emp = db.Employees.AsEnumerable().OrderByDescending(i => i.GetType().GetProperty(sort.Column).GetValue(i, null)).AsPagination(page ?? 1, 2); else emp = db.Employees.AsEnumerable().OrderBy(i => i.GetType().GetProperty(sort.Column).GetValue(i, null)).AsPagination(page ?? 1, 2); ViewData["sort"] = sort; return View(emp); }
private RouteValueDictionary CreateRouteValuesForSortOptions(GridSortOptions sortOptions, string prefix) { if (string.IsNullOrEmpty(prefix)) { return(new RouteValueDictionary(sortOptions)); } //There must be a nice way to do this... return(new RouteValueDictionary(new Dictionary <string, object>() { { prefix + "." + "Column", sortOptions.Column }, { prefix + "." + "Direction", sortOptions.Direction } })); }
// // GET: /Contract/ public ViewResult Index(DealSearchViewModel search, GridSortOptions sort, int? page) { search.ControllerName = "Contract"; search.ActionName = "Index"; ViewBag.SearchModel = search; ViewBag.Sort = sort; COATMemebershipUser user = GetCurrentMemberShipUser(); IQueryable<Deal> deals = Db.Deals.Where(a => a.ApproverId == user.Id || user.SystemRole.Id == SystemRoleIds.Admin).Search(search); ViewBag.SummaryDeals = deals; return View(SortAndPagingDeal(deals, sort, page)); }
public ActionResult List(String BaseType, GridSortOptions sort, int? page) { if (Session[StashItemListVar] != null) { List<ExiledToolkit.Models.ToolkitObjects.Item> lItemList = (List<ExiledToolkit.Models.ToolkitObjects.Item>)Session[StashItemListVar]; ExiledToolkit.Models.ListViewModel model = new Models.ListViewModel(); model.ItemPagedList = lItemList.Where(it => it.BaseType == BaseType).AsPagination( page ?? 1, 20); model.ItemSorter = sort; return View(model); } return View(); }
// // GET: /Admin/ public ActionResult Index(DealSearchViewModel search, GridSortOptions sort, int? page) { search.ControllerName = "Admin"; search.ActionName = "Index"; search.IsHideStatus = true; ViewBag.SearchModel = search; ViewBag.Sort = sort; var deals = DealMgr.GetEndDeals() .Where(a => a.Status.ActionName != "") .Where(a => a.CreateDate <= DateTime.Today) .Search(search); ViewBag.SummaryDeals = deals; return View(SortAndPagingDeal(deals, sort, page)); }
public ActionResult ProductDetails(int id, GridSortOptions sort, int? page) { var product = _productRepository.GetByProductId(id); var reviews = _reviewRepository.List(id); // var total = reviews.Aggregate(0, (current, r) => current + r.Rating); // var avg = 0; // if(reviews.Count>0)avg = total / reviews.Count; ViewData["sort"] = sort; var reviewRowList = new List<ReviewRowModel>(); if (reviews.Count() > 0) { reviewRowList = reviews.Select(r => new ReviewRowModel { SubmitterName = _submitterRepository.GetByUserId(r.UserId).Name, DetailedReview = r.Detail, Rating = r.Rating, Id = r.Id, Flagged = r.Flagged }).ToList(); } IEnumerable<ReviewRowModel> orderedEnumerable = reviewRowList.OrderBy(r => r.SubmitterName); //Sort by product code as default if (sort.Column != null) orderedEnumerable = orderedEnumerable.OrderBy(sort.Column, sort.Direction); var productViewModel = new ProductViewModel { Description = product.Description, ManafacturerName = _manafacturerRepository.GetByManafacturerId(product.ManafacturerId).Name, Price = product.Price, ProductCode = product.ProductCode, ProductId = product.ProductId, ProductName = product.Name, ReviewRows = orderedEnumerable.AsPagination(page ?? 1, 10), TotalReviewRows = reviews.Count, AverageRating = _reviewRepository.GetAverageProductRating(product.ProductId) }; return View(productViewModel); }
public override void OnActionExecuting(ActionExecutingContext filterContext) { int page = 1; int pageSize = PageSize; var request = filterContext.HttpContext.Request; if (!string.IsNullOrWhiteSpace(request["page"])) int.TryParse(request["page"], out page); if (!string.IsNullOrWhiteSpace(request["size"])) int.TryParse(request["size"], out pageSize); filterContext.Controller.ViewBag.PageNumber = page; filterContext.Controller.ViewBag.PageSize = pageSize; GridSortOptions gso = new GridSortOptions(); gso.Column = request["column"]; gso.Direction = request.ToMaybe().With(r => r["direction"]).With(s => s.ToLower()).Value == "ascending" ? SortDirection.Ascending : SortDirection.Descending; filterContext.Controller.ViewBag.GridSortOptions = gso; }
public ActionResult List(string searchWord, int? genreId, int? artistId, GridSortOptions gridSortOptions, int? page) { PagedViewModel<C_Mechanism> pagedViewModel = new PagedViewModel<C_Mechanism> { ViewData = ViewData, Query = new BLL.C_Mechanism().GetList().AsQueryable(), GridSortOptions = gridSortOptions, DefaultSortColumn = "MECHANISMID", Page = page, PageSize = 10, } .AddFilter("searchWord", searchWord, a => a.机构名称.Contains(searchWord)) .Setup(); return View(pagedViewModel); }
public ActionResult Index(string filter, string level, DateTime? from, DateTime? to, int? page, GridSortOptions sort) { var profiler = MiniProfiler.Current; using (profiler.Step("Query database")) { ViewBag.Level = _db.Logs.Select(x => x.Level).Distinct() .Select(x => new SelectListItem {Text = x, Value = x}); var logs = _db.Logs.AsQueryable(); if (from.HasValue) { logs = logs.Where(x => x.Date >= from.Value); } if (to.HasValue) { logs = logs.Where(x => x.Date <= to.Value); } if (!string.IsNullOrWhiteSpace(filter)) { logs = logs.Where(x => x.Message.Contains(filter) || x.Exception.Contains(filter)); } if (!string.IsNullOrWhiteSpace(level)) { logs = logs.Where(x => x.Level == level); } if (sort.Column != null) logs = logs.OrderBy(sort.Column, sort.Direction); ViewBag.Sort = sort; using (profiler.Step("Build viewModel")) { var viewModel = new DashboardViewModel { Logs = logs.MapTo<LogViewModel>().AsPagination(page ?? 1, 10) }; return View(viewModel); } } }
public ActionResult Index(int? page, GridSortOptions sort) { ViewBag.Sort = sort; var contacts = contactRepository.All().Where(x => x.Status != Status.Deleted); if (sort != null && sort.Column != null) { var orderedContacts = contacts.OrderBy(sort.Column, sort.Direction); var pagedOrderedContacts = orderedContacts.AsPagination(page ?? 1, 10); return View(pagedOrderedContacts); } else { var pagedContacts = contacts.ToList().AsPagination(page ?? 1, 10); return View(pagedContacts); } }
protected override void RenderHeaderText(GridColumn <T> column) { if (IsSortingEnabled && column.Sortable) { string sortColumnName = GenerateSortColumnName(column); bool isSortedByThisColumn = GridModel.SortOptions.Column == sortColumnName; var sortOptions = new GridSortOptions { Column = sortColumnName }; if (isSortedByThisColumn) { sortOptions.Direction = (GridModel.SortOptions.Direction == SortDirection.Ascending) ? SortDirection.Descending : SortDirection.Ascending; } else //default sort order { sortOptions.Direction = column.InitialDirection ?? GridModel.SortOptions.Direction; } var routeValues = CreateRouteValuesForSortOptions(sortOptions, GridModel.SortPrefix); //Re-add existing querystring foreach (var key in Context.RequestContext.HttpContext.Request.QueryString.AllKeys.Where(key => key != null)) { if (!routeValues.ContainsKey(key)) { routeValues[key] = Context.RequestContext.HttpContext.Request.QueryString[key]; } } var link = HtmlHelper.GenerateLink(Context.RequestContext, RouteTable.Routes, column.DisplayName, null, null, null, routeValues, null); RenderText(link); } else { base.RenderHeaderText(column); } }
public static MvcHtmlString SortingOptions(this HtmlHelper helper, GridSortOptions sortOptions, object columnName, RouteValueDictionary getParams = null) { //copy existing parameters if (getParams == null) getParams = new RouteValueDictionary(); var linkParams = new RouteValueDictionary(); foreach (string key in helper.ViewContext.HttpContext.Request.QueryString) { getParams.Add(key, helper.ViewContext.HttpContext.Request.QueryString[key]); if (key != "Column" && key != "Direction") { if (key == "Filter.ShowClosed") { if (helper.ViewContext.HttpContext.Request.QueryString[key].Contains("true")) linkParams.Add(key, "true"); else linkParams.Add(key, "false"); } else linkParams.Add(key, helper.ViewContext.HttpContext.Request.QueryString[key]); } } if ((string)columnName == sortOptions.Column) { var direction = sortOptions.Direction; var newDirection = direction == SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending; linkParams.Add("Direction", newDirection); linkParams.Add("Column", columnName.ToString()); } else { linkParams.Add("Direction", SortDirection.Ascending); linkParams.Add("Column", columnName.ToString()); } var link = helper.ActionLink((string)columnName, "List", "Session", linkParams, null); return link; }
public ActionResult Index(int? page, GridSortOptions sortOptions) { if (sortOptions.Column == null) sortOptions = new GridSortOptions { Column = "CreateDate", Direction = SortDirection.Descending }; page = page ?? 1; var log = _logger.GetAll(); log = log.OrderBy(sortOptions.Column, sortOptions.Direction); var vm = new EventLogViewModel { Logs = log.AsPagination(page.Value, 10), SortOptions = sortOptions, Page = page.Value }; return View(vm); }
/// <summary> /// Secifies that the grid is currently being sorted by the specified column in a particular direction. /// </summary> public void Sort(GridSortOptions sortOptions) { _sortOptions = sortOptions; }
public IGridWithOptions <T> Sort(GridSortOptions sortOptions, string prefix) { _gridModel.SortOptions = sortOptions; _gridModel.SortPrefix = prefix; return(this); }
public IGridWithOptions <T> Sort(GridSortOptions sortOptions) { _gridModel.SortOptions = sortOptions; return(this); }
private SortableGridModel<Transfer> GetBalanceListModel(Func<IQueryable<Transfer>, IQueryable<Transfer>> query, GridSortOptions sortOptions, int? page) { if (sortOptions == null) sortOptions = new GridSortOptions(); if (sortOptions.Column == null) { sortOptions.Column = GridHelper.BalanceOrder.OrderDate; sortOptions.Direction = SortDirection.Descending; } var transferList = Repository.Transfer.Find(PagerHelper.PageSize, page ?? 1, query, GridHelper.BalanceOrder.ColumnOrders[sortOptions.Column], sortOptions.Direction == SortDirection.Ascending); var transferCount = Repository.Transfer.Count(query); return new SortableGridModel<Transfer> { Data = transferList, SortOptions = sortOptions, Pagination = PagerHelper.Pagination(page, transferCount) }; }
public IEnumerable<Employee> FindAll(int startRow, int pageSize, GridSortOptions sort) { return Session.QueryOver<Employee>().OrderBy(sort).Skip(startRow).Take(pageSize).Future<Employee>(); }
/// <summary> /// Specifies that the grid is currently being sorted by the specified column in a particular direction. /// This overload allows you to specify a prefix. /// </summary> public void Sort(GridSortOptions sortOptions, string prefix) { _sortOptions = sortOptions; _sortPrefix = prefix; }
public ActionResult Index(DealSearchViewModel search, GridSortOptions sort, int? page) { search.ControllerName = "SalesAssigner"; search.ActionName = "Index"; ViewBag.SearchModel = search; ViewBag.AssignToList = AssignToList; ViewBag.Sort = sort; IQueryable<Deal> deals = DealMgr.GetSalesAssignerDeals().Search(search); return View(SortAndPagingDeal(deals, sort, page)); }
public virtual ActionResult Index(int? page, GridSortOptions sort) { var authors = authorRepository.FindPage(page ?? 1, PageSize, sort.Column, sort.Direction == SortDirection.Ascending ? SortOrder.Ascending: SortOrder.Descending); var authorViewModels = Map<Page<Author>, IPagination<AuthorViewModel>>(authors); ViewData["sort"] = sort; return View(authorViewModels); }
/// <summary> /// Creates model for the Manage.UserController.Index action /// </summary> /// <returns></returns> public static PaginationModel<UserModel> GetUserModelForUsers(GridSortOptions sort, int pageNumber = 1) { var column = (sort.Column == null) ? Constants.Sort_Column_LastName : sort.Column; var direction = sort.Direction; var model = CommonModelHelper.GetPaginatedModel<UserModel>(column, direction); model.GetPaginatedUsers(pageNumber); Guid userIdKey = ManageUserModelHelper.GetFormsAuthenticationTicket().IdKey(); model.PageTitle = "Holy Angels System Users"; model.UserIdKey = userIdKey; model.MetaDescription = ""; model.MetaKeywords = ""; model.MetaSubject = ""; return model; }
public virtual ActionResult List(int? page, GridSortOptions sortOptions, string number, int? regionId, int? correctionFacilityId, string terminalAddress) { // реализация поиска и фильтрации //http://www.codeproject.com/KB/aspnet/Grid_Paging_In_MVC3.aspx var dbFacilities = _selectionRepository.GetAllObjects().Where(terminal => terminal.IsDeleted == false); if (!UserHelper.Instance.IsAdministrator && !UserHelper.Instance.IsManager && !UserHelper.Instance.IsCallCenterUser) //простым смертным показывать только активные терминалы dbFacilities = dbFacilities.Where(terminal => terminal.IsActive == true); var facilities = dbFacilities.Select(dbTerminal => new TerminalListModel { Id = dbTerminal.Id, PhoneNumber = dbTerminal.PhoneNumber, IsPublic = dbTerminal.IsPublic, CorrectionFacilityId = dbTerminal.CorrectionFacilityId, CorrectionFacilityName = dbTerminal.CorrectionFacility.Name, InstallationAddress = dbTerminal.CorrectionFacility.Address, RegionId = dbTerminal.RegionId, IsActive = dbTerminal.IsActive }); var pagedViewModel = new PagedViewModel<TerminalListModel> { ViewData = ViewData, Query = facilities, GridSortOptions = sortOptions, DefaultSortColumn = "PhoneNumber", Page = page, PageSize = 10 } .AddFilter("number", number, t => t.PhoneNumber.Contains(number)) .AddFilter("RegionId", regionId, t => t.RegionId == regionId, RegionController.GetDBRegionList(null), "Id", "Name") .AddFilter("CorrectionFacilityId", correctionFacilityId, t => t.CorrectionFacilityId == correctionFacilityId, CorrectionFacilityController.GetDbCorrectionFacilityList(-1, null), "Id", "Name") .AddFilter("terminalAddress", terminalAddress, t => t.InstallationAddress.ToLower().Contains(terminalAddress.ToLower())) .Setup(); return View(pagedViewModel); }