/// <summary> /// Get Employee Status /// </summary> public EmpSearchRequestResponse Get([FromUri] EmpSearchRequest request) { if (request == null || !ModelState.IsValid) { throw new HttpException((int)HttpStatusCode.BadRequest, "Invalid Request"); } return(empStatusService.SearchEmployeeStatus(request).CreateFrom()); }
/// <summary> /// Search Employee Status /// </summary> public EmpSearchRequestResponse SearchEmployeeStatus(EmpSearchRequest request) { int rowCount; return(new EmpSearchRequestResponse { EmployeeStatuses = employeeStatusRepository.SearchEmpStatus(request, out rowCount), TotalCount = rowCount }); }
/// <summary> /// Search Employee status /// </summary> public IEnumerable <EmpStatus> SearchEmpStatus(EmpSearchRequest request, out int rowCount) { int fromRow = (request.PageNo - 1) * request.PageSize; int toRow = request.PageSize; Expression <Func <EmpStatus, bool> > query = empStatus => (string.IsNullOrEmpty(request.EmpFilterText) || (empStatus.EmpStatusCode.Contains(request.EmpFilterText)) || (empStatus.EmpStatusName.Contains(request.EmpFilterText))); rowCount = DbSet.Count(query); return(request.IsAsc ? DbSet.Where(query) .OrderBy(empStatusOrderByClause[request.EmpStatusOrderBy]) .Skip(fromRow) .Take(toRow) .ToList() : DbSet.Where(query) .OrderByDescending(empStatusOrderByClause[request.EmpStatusOrderBy]) .Skip(fromRow) .Take(toRow) .ToList()); }