public Models.ResponseModels.EbayItemSearchResponse GetImports(Models.RequestModels.StagingEbayItemRequest searchRequest) { int batchId = 0; if (!string.IsNullOrEmpty(searchRequest.BatchId)) { if (!int.TryParse(searchRequest.BatchId, out batchId)) { batchId = -1; } } int fromRow = (searchRequest.PageNo - 1) * searchRequest.PageSize; int toRow = searchRequest.PageSize; Expression <Func <StagingEbayItem, bool> > query = s => ( ( (string.IsNullOrEmpty(searchRequest.StagingEbayTitle) || s.Title.Contains(searchRequest.StagingEbayTitle)) && (batchId == 0 || s.EbayBatchImportId.Equals(batchId)) && (string.IsNullOrEmpty(searchRequest.AFASerial) || s.AFASerial.Contains(searchRequest.AFASerial)) && (string.IsNullOrEmpty(searchRequest.ToyGraderID) || s.ToyGraderItemId.Value.ToString().Contains(searchRequest.AFASerial)) && (searchRequest.CreatedOn == null || EntityFunctions.TruncateTime(s.CreatedOn) == searchRequest.CreatedOn.Value) ) ); IEnumerable <StagingEbayItem> oList = searchRequest.IsAsc ? DbSet.Where(query) .OrderBy(batchClause[searchRequest.EbayItemOrderBy]) .Skip(fromRow) .Take(toRow) .ToList() : DbSet.Where(query) .OrderByDescending(batchClause[searchRequest.EbayItemOrderBy]) .Skip(fromRow) .Take(toRow) .ToList(); return(new EbayItemSearchResponse { EbayItemImports = oList, TotalCount = DbSet.Count(), FilteredCount = DbSet.Count(query) }); }
public Models.ResponseModels.EbayItemSearchResponse GetImports(Models.RequestModels.StagingEbayItemRequest oReq) { return(istgEbayItemRepository.GetImports(oReq)); }