public async Task <IHttpActionResult> Get([FromUri] DiscountQuery query) { IHttpActionResult res = BadRequest(); var serviceRes = await _discountService.Get(new DiscountListRequest() { Query = query ?? new DiscountQuery(), RequestOwner = this.User }); if (serviceRes.Access == ResponseAccess.Deny) { res = Unauthorized(serviceRes.Message); } if (serviceRes.Access == ResponseAccess.Granted) { res = Ok(serviceRes); } return(res); }
public static IQueryable <Discount> FilterByQuery(this IQueryable <Discount> discounts, DiscountQuery query) { if (!string.IsNullOrEmpty(query.Name)) { discounts = discounts.Where(x => x.Name.Contains(query.Name)); } if (!string.IsNullOrEmpty(query.CouponCode)) { discounts = discounts.Where(x => x.CouponCode.Contains(query.CouponCode)); } if (query.DiscountType.HasValue) { discounts = discounts.Where(x => x.DiscountType == query.DiscountType); } return(discounts); }