public async Task <List <Sale> > GetSaleList(SaleListFilterModel filter) { return(await context.Sales .Where(s => (filter.Id > 0 ? s.Id == filter.Id : true) && (string.IsNullOrEmpty(filter.ProductName) ? true : s.ProductName.Contains(filter.ProductName)) && (string.IsNullOrEmpty(filter.UserName) ? true : s.UserName.Contains(filter.UserName)) && (string.IsNullOrEmpty(filter.ProductId) ? true : s.ProductId.Contains(filter.ProductId)) && (filter.MaxPrice > 0 ? s.Price <= filter.MaxPrice : true) && s.Price > filter.MinPrice) .Include(s => s.City).Where(s => string.IsNullOrEmpty(filter.CityName) ? true : s.City.Name.Contains(filter.CityName)) .OrderByDescending(s => s.Id).Skip(filter.Page * filter.Count).Take(filter.Count).ToListAsync()); }
public GetSaleListQuery(SaleListFilterModel filter) { Filter = filter; }
public async Task <IActionResult> GetList(SaleListFilterModel filter) { return(Ok(await mediator.Send(new GetSaleListQuery(filter)))); }
public async Task <long> GetLastSalePrice(SaleListFilterModel filter) { var sale = await context.Sales.Where(s => s.CityId == filter.MaxPrice && s.ProductId == filter.ProductId && s.UserName == filter.UserName).OrderByDescending(s => s.Id).FirstOrDefaultAsync(); return(sale == null ? 0 : sale.Price); }