public ActionResult SearchResult(CatalogLogFilter filter) { var query = DB.cataloglogui.AsQueryable(); if (filter.Apply.HasValue && filter.IsUserFilter) { query = query.Where(x => x.Apply == filter.Apply); } else { if (!filter.IsUserFilter) { var defaultValue = int.Parse(ConfigurationManager.AppSettings["FilterDefault_LogCatalogList"]); query = query.Where(x => x.Apply == defaultValue); } } var itemsCount = query.Count(); var itemsPerPage = Convert.ToInt32(ConfigurationManager.AppSettings["ReportCountPage"]); var info = new SortingPagingInfo() { CurrentPageIndex = filter.CurrentPageIndex, ItemsCount = itemsCount, ItemsPerPage = itemsPerPage }; ViewBag.Info = info; var model = query.OrderByDescending(x => x.Id).Skip(itemsPerPage * filter.CurrentPageIndex).Take(itemsPerPage).ToList(); var modelUi = MapListToUi(model); return(View(modelUi)); }
public ActionResult Index(CatalogLogFilter model) { if (model.ApplyId.HasValue) { Apply(model.ApplyId.Value); SuccessMessage("Правки успешно внесены в каталог"); } if (model.RejectId.HasValue) { var result = Reject(model.RejectId.Value, model.RejectComment); if (result) { SuccessMessage("Правка отклонена, комментарий отправлен пользователю"); } else { SuccessMessage( "Правка отклонена, но комментарий не отправлен пользователю, т.к. его логин не является почтовым адресом"); } } var applyList = new List <SelectListItem>(); var emptyItem = new SelectListItem() { Value = "", Text = "Все правки" }; applyList.Add(emptyItem); if (model.Apply.HasValue && model.IsUserFilter) { applyList.AddRange(EnumHelper.GetSelectList(typeof(ApplyRedaction), (ApplyRedaction)model.Apply)); } else { if (model.IsUserFilter) { applyList.AddRange(EnumHelper.GetSelectList(typeof(ApplyRedaction))); } else { var defaultValue = int.Parse(ConfigurationManager.AppSettings["FilterDefault_LogCatalogList"]); applyList.AddRange(EnumHelper.GetSelectList(typeof(ApplyRedaction), (ApplyRedaction)defaultValue)); } } model.ApplyList = applyList; return(View(model)); }