public ActionResult Index(SearchTermsModel search, int page = 1) { // Return all Terms // If not a post-back (i.e. initial load) set the searchModel to session if (Request.Form.Count <= 0) { if (search.IsEmpty() && Session["SearchTermsModel"] != null) { search = (SearchTermsModel)Session["SearchTermsModel"]; } } var helper = new TermHelper(); var model = helper.GetTermList(search, search.ParsePage(page)); Session["SearchTermsModel"] = search; //var term = context.Terms.Count() > 0 ? context.Terms.FirstOrDefault(x => x.IsCurrentTerm) : null; //if (term != null) //{ // helper.UpdateStudentsOldDebt(term); //} //else //{ // return View("New", GetTermModel(null)); //} //(search); return(View(model)); }
public static void SaveSearchTerms(string currentCharacter, SearchTermsModel data) { var workingPath = StringExtensions.MakeSafeFolderPath(currentCharacter, "Global", "Global"); var fileName = Path.Combine(workingPath, SearchTermsFileName); Serialize(fileName, data); }
public TermListViewModel GetTermList(SearchTermsModel searchModel, int page = 1) { int pageSize = 20; if (page < 1) { page = 1; } IEnumerable <Term> records = db.Terms.ToList(); // Remove any default information //searchModel.ParseRouteInfo(); if (!String.IsNullOrEmpty(searchModel.Name)) { string name = searchModel.Name.ToLower(); records = records.Where(x => x.GetTerm().ToLower().Contains(name)); } if (searchModel.StartDate.HasValue) { records = records.Where(x => x.StartDate >= searchModel.StartDate.Value); } if (searchModel.EndDate.HasValue) { records = records.Where(x => x.StartDate <= searchModel.EndDate.Value); } if (searchModel.Period.HasValue) { records = records.Where(x => x.Position == searchModel.Period); } records = records.Where(x => !x.Deleted.HasValue); return(new TermListViewModel { Terms = records .OrderByDescending(o => o.StartDate) .ThenBy(o => o.TermId) .Skip((page - 1) * pageSize) .Take(pageSize), SearchModel = searchModel, PagingInfo = new PagingInfo { CurrentPage = page, PageSize = pageSize, TotalItems = records.Count() } }); }