public virtual ActionResult SearchEmployee(string query, int id) { var employees = _emplyeeMachineService.GetEmployees(id).OrderBy(x => x.Enrolled); var result = new List <EmployeeMachineDao>(); var firstNames = employees.Where(x => x.FirstName.Contains(query)).ToList(); var lastNames = employees.Where(x => x.LastName.Contains(query)).ToList(); var codes = employees.Where(x => x.EmployeeCode == query).ToList(); int employeeId; if (int.TryParse(query, out employeeId)) { var employee = employees.Where(x => x.EmployeeId == employeeId).ToList(); result.AddRange(employee); } result.AddRange(firstNames); result.AddRange(lastNames); result.AddRange(codes); ViewBag.SearchCriteria = query; var resultDistinct = result.Distinct(); var pagination = _webService.GetPaginationModel(Request, resultDistinct.Count()); var viewModel = new EmployeeMachineViewModel { Employees = _webService.TakePaginationModel(resultDistinct, pagination), Pagination = pagination, MachineNumber = id }; return(View("EnrolledEmployees", viewModel)); }
public virtual ActionResult EnrolledEmployees(int id, string ipAddress) { var employees = _emplyeeMachineService.GetEmployees(id).OrderBy(x => x.Enrolled); var pagination = _webService.GetPaginationModel(Request, employees.Count()); var viewModel = new EmployeeMachineViewModel { Employees = _webService.TakePaginationModel(employees, pagination), Pagination = pagination, MachineNumber = id, }; return(View(viewModel)); }