public ActionResult GetTimeEntries(JqGridParametersModel parameters) { // Get a list of all time entries var timeEntries = _processor.GetAllTimeEntries(User.Identity.Name).ToList(); var entries = timeEntries.OrderByDescending(e => e.DateWorked) .ThenByDescending(e => e.FromTime) .Select(e => new TimeEntryModel(e)) .Skip(parameters.Rows * (parameters.Page - 1)) .Take(parameters.Rows).ToList(); var recordCount = timeEntries.Count; return (Json( new JqJsonModel <TimeEntryModel>(entries) { CurrentPage = parameters.Page == 0 ? 1 : parameters.Page, RecordCount = recordCount, TotalPages = recordCount % parameters.Rows == 0 ? recordCount / parameters.Rows : (recordCount / parameters.Rows) + 1 }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Gets the billing terms. /// </summary> public ActionResult GetBillingTerms(JqGridParametersModel parameters) { // Get the Billing terms from the database var terms = _processor.GetBillingTerms() .OrderBy(bt => bt.BillingTermsDescription) .Skip(parameters.Rows * (parameters.Page - 1)) .Take(parameters.Rows).ToList(); var recordCount = terms.Count; return(Json( new JqJsonModel <BillingTerm>(terms) { CurrentPage = parameters.Page == 0 ? 1 : parameters.Page, RecordCount = recordCount, TotalPages = recordCount % parameters.Rows == 0 ? recordCount / parameters.Rows : (recordCount / parameters.Rows) + 1 }, JsonRequestBehavior.AllowGet )); }
/// <summary> /// Gets the clients from the database. /// </summary> public ActionResult GetProjects(JqGridParametersModel parameters) { var projects = _processor.GetProjects(User.Identity.Name).ToList(); var models = projects.OrderBy(p => p.Client.ClientName).ThenBy(p => p.ProjectName) .Select(p => new ProjectModel(p)) .Skip(parameters.Rows * (parameters.Page - 1)) .Take(parameters.Rows).ToList(); var recordCount = projects.Count; return (Json( new JqJsonModel <ProjectModel>(models) { CurrentPage = parameters.Page == 0 ? 1 : parameters.Page, RecordCount = recordCount, TotalPages = recordCount % parameters.Rows == 0 ? recordCount / parameters.Rows : (recordCount / parameters.Rows) + 1 }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Gets the clients from the database. /// </summary> public ActionResult GetClients(JqGridParametersModel parameters) { // Get the list of clients from the database var clients = _processor.GetClients(User.Identity.Name) .OrderBy(c => c.ClientName) .Select(c => new ClientModel(c)) .Skip(parameters.Rows * (parameters.Page - 1)) .Take(parameters.Rows).ToList(); var recordCount = clients.Count; return(Json( new JqJsonModel <ClientModel>(clients) { CurrentPage = parameters.Page == 0 ? 1 : parameters.Page, RecordCount = recordCount, TotalPages = recordCount % parameters.Rows == 0 ? recordCount / parameters.Rows : (recordCount / parameters.Rows) + 1 }, JsonRequestBehavior.AllowGet )); }