Exemplo n.º 1
0
        public async Task <ApiResult <PagedResult <SupplierVm> > > GetUsersPaging(GetSupplierPagingRequest bundle)
        {
            var url = $"/api/supplier/paging?pageIndex=" +
                      $"{bundle.PageIndex}&pageSize={bundle.PageSize}&keyword={bundle.Keyword}";
            var result = await GetListAsync <SupplierVm>(url);

            return(result);
        }
Exemplo n.º 2
0
        public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 1)
        {
            var request = new GetSupplierPagingRequest()
            {
                Keyword   = keyword,
                PageIndex = pageIndex,
                PageSize  = pageSize
            };
            var data = await _supplierApiClient.GetUsersPaging(request);

            ViewBag.Keyword = keyword;

            return(View(data.ResultObj));
        }
Exemplo n.º 3
0
        public async Task <ApiResult <PagedResult <SupplierVm> > > GetUsersPaging(GetSupplierPagingRequest bundle)
        {
            IQueryable <Supplier> query = _context.Suppliers;

            if (!string.IsNullOrEmpty(bundle.Keyword))
            {
                query = query.Where(c => c.Name.Contains(bundle.Keyword) || c.Code.Contains(bundle.Keyword));
            }
            //3. Paging
            int totalRow = await query.CountAsync();

            query = query.OrderByDescending(c => c.Id);
            var data = await query.Skip((bundle.PageIndex - 1) *bundle.PageSize)
                       .Take(bundle.PageSize)
                       .Select(x => new SupplierVm()
            {
                Id      = x.Id,
                Code    = x.Code,
                Tax     = x.Tax,
                Name    = x.Name,
                Phone   = x.Phone,
                Email   = x.Email,
                Address = x.Address
            }).ToListAsync();

            //4. Select and projection
            var pagedResult = new PagedResult <SupplierVm>()
            {
                TotalRecords = totalRow,
                PageIndex    = bundle.PageIndex,
                PageSize     = bundle.PageSize,
                Items        = data
            };

            return(new ApiSuccessResult <PagedResult <SupplierVm> >(pagedResult));
        }
Exemplo n.º 4
0
        public async Task <IActionResult> GetAllPaging([FromQuery] GetSupplierPagingRequest request)
        {
            var result = await _supplierService.GetUsersPaging(request);

            return(Ok(result));
        }