public IActionResult Search(SearchPackageOptions options) { var result = packageService_ .SearchPackage(options) .Data .ToList(); return(Json(result)); }
public ApiResult <Package> GetPackageById(int?id) { if (id == null) { return(ApiResult <Package> .Failed(StatusCode.BadRequest, "Null Package Id")); } var options = new SearchPackageOptions() { PackageId = id }; return(ApiResult <Package> .Successful(SearchPackage(options).Data.SingleOrDefault())); }
public ApiResult <IQueryable <Package> > SearchPackage(SearchPackageOptions options) { if (options == null) { return(ApiResult <IQueryable <Package> > .Failed(StatusCode.BadRequest, "Null options")); } var query = context_ .Set <Package>() .AsQueryable(); if (options.PackageId != null) { query = query.Where(p => p.PackageId == options.PackageId); } if (!string.IsNullOrWhiteSpace(options.Description)) { query = query.Where(p => p.Description == options.Description); } if (options.Reward != null) { query = query.Where(p => p.Reward == options.Reward); } if (options.IsActive != null) { query = query.Where(p => p.IsActive == options.IsActive); } if (options.CreatedFrom != null) { query = query.Where(c => c.Created >= (options.CreatedFrom)); } if (options.CreatedTo != null) { query = query.Where(c => c.Created <= options.CreatedTo); } return(ApiResult <IQueryable <Package> > .Successful(query.Take(500))); }