Exemple #1
0
        public async Task <PagedResult <SizeVm> > GetSizesPagings(GetSizePagingRequest request)
        {
            //1. Select join
            var query = from p in _context.productSize
                        select new { p };

            //2. filter
            if (!string.IsNullOrEmpty(request.Keyword))
            {
                query = query.Where(x => x.p.sizeName.Contains(request.Keyword));
            }
            //3. Paging
            int totalRow = await query.CountAsync();

            var data = await query.Skip((request.PageIndex - 1) *request.PageSize)
                       .Take(request.PageSize)
                       .Select(x => new SizeVm()
            {
                IdSize = x.p.idSize,
                Name   = x.p.sizeName,
            }).ToListAsync();

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

            return(pagedResult);
        }
Exemple #2
0
        public async Task <PagedResult <SizeVm> > GetSizesPagings(GetSizePagingRequest request)
        {
            var data = await GetAsync <PagedResult <SizeVm> >(
                $"/api/sizes/paging?pageIndex={request.PageIndex}" +
                $"&pageSize={request.PageSize}" +
                $"&keyword={request.Keyword}&categoryId={request.SizeId}");

            return(data);
        }
Exemple #3
0
        public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 10)
        {
            var languageId = HttpContext.Session.GetString(SystemConstants.AppSettings.DefaultLanguageId);

            var sessions = HttpContext.Session.GetString("Token");
            var request  = new GetSizePagingRequest()
            {
                Keyword   = keyword,
                PageIndex = pageIndex,
                PageSize  = pageSize,
            };
            var data = await _sizeApiClient.GetSizesPagings(request);

            ViewBag.Keyword = keyword;
            if (TempData["result"] != null)
            {
                ViewBag.SuccessMsg = TempData["result"];
            }

            return(View(data));
        }
        public async Task <IActionResult> GetAllPaging([FromQuery] GetSizePagingRequest request)
        {
            var sizes = await _sizeService.GetSizesPagings(request);

            return(Ok(sizes));
        }