public async Task <PagedResultOutput <SupplierListDto> > GetSuppliers(GetSuppliersInput input) { IQueryable <Supplier> all = this._supplierRepository.GetAll(); IQueryable <Supplier> suppliers = all.WhereIf <Supplier>(!input.Filter.IsNullOrEmpty(), (Supplier p) => p.Name.Contains(input.Filter) || p.Description.Contains(input.Filter) || p.PhoneNumber.Contains(input.Filter) || p.MobilePhoneNumber.Contains(input.Filter) || p.Address.Contains(input.Filter) || p.SecondaryAddress.Contains(input.Filter) || p.City.Contains(input.Filter) || p.Country.Code.Contains(input.Filter) || p.Country.Name.Contains(input.Filter) || p.CountryRegion.Code.Contains(input.Filter) || p.CountryRegion.Name.Contains(input.Filter) || p.PostalCode.Contains(input.Filter) || p.ContactName.Contains(input.Filter) || p.ContactEmail.Contains(input.Filter)); int num = await suppliers.CountAsync <Supplier>(); List <Supplier> listAsync = await suppliers.OrderBy <Supplier>(input.Sorting, new object[0]).PageBy <Supplier>(input).ToListAsync <Supplier>(); return(new PagedResultOutput <SupplierListDto>(num, listAsync.MapTo <List <SupplierListDto> >())); }
public async Task <PagedResultDto <SupplierListDto> > GetPagedSupplierAsync(GetSuppliersInput input) { var query = _supplierRepository.GetAll(); var supplierCount = await query.CountAsync(); var suppliers = await query.OrderBy(input.Sorting).PageBy(input).ToListAsync(); var dtos = suppliers.MapTo <List <SupplierListDto> >(); return(new PagedResultDto <SupplierListDto>(supplierCount, dtos)); }
public ActionResult Index(GetSuppliersInput input) { return(base.View()); }