public Task <FilterResultModel <CustomerOrderInvoiceList> > Handle(GetCustomerOrderInvoiceListQuery request, CancellationToken cancellationToken) { var sortBy = request.SortBy.Trim() != "" ? request.SortBy : "CustomerName"; var sortDirection = (request.SortDirection.ToUpper() == "DESCENDING") ? false : true; FilterResultModel <CustomerOrderInvoiceList> result = new FilterResultModel <CustomerOrderInvoiceList> (); var invoice = _database.Invoice .Select(CustomerOrderInvoiceList.Projection) .Select(DynamicQueryHelper.GenerateSelectedColumns <CustomerOrderInvoiceList> (request.SelectedColumns)) .AsQueryable(); if (request.Filter.Count() > 0) { invoice = invoice .Where(DynamicQueryHelper .BuildWhere <CustomerOrderInvoiceList> (request.Filter)).AsQueryable(); } result.Count = invoice.Count(); var PageSize = (request.PageSize == 0) ? result.Count : request.PageSize; var PageNumber = (request.PageSize == 0) ? 1 : request.PageNumber; result.Items = invoice.OrderBy(sortBy, sortDirection) .Skip(PageNumber - 1) .Take(PageSize) .ToList(); return(Task.FromResult <FilterResultModel <CustomerOrderInvoiceList> > (result)); }
public async Task<ActionResult<FilterResultModel<CustomerOrderInvoiceList>>> GetAllCustomerOrderInvoicess ([FromBody] GetCustomerOrderInvoiceListQuery query) { var CustomerOrders = await _Mediator.Send (query); return StatusCode (200, CustomerOrders); }