Esempio n. 1
0
        public async Task <PagedResult <CategoryVm> > GetCategoriesPagings(GetCategoryPagingRequest request)
        {
            var data = await GetAsync <PagedResult <CategoryVm> >(
                $"/api/categories/paging?pageIndex={request.PageIndex}" +
                $"&pageSize={request.PageSize}" +
                $"&keyword={request.Keyword}&languageId={request.LanguageId}&categoryId={request.CategoryId}");

            return(data);
        }
Esempio n. 2
0
        public async Task <PagedResult <CategoryViewModel> > GetCategoryPagings(GetCategoryPagingRequest request)
        {
            var client = _httpClientFactory.CreateClient();

            client.BaseAddress = new Uri(_configuration["BaseAddress"]);
            var respone = await client.GetAsync($"/api/category/paging?Keyword={request.Keyword}&pageIndex=" +
                                                $"{request.PageIndex}&pageSize={request.PageSize}");

            var body = await respone.Content.ReadAsStringAsync();

            var brand = JsonConvert.DeserializeObject <PagedResult <CategoryViewModel> >(body);

            return(brand);
        }
Esempio n. 3
0
        public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 10)
        {
            var sessions = HttpContext.Session.GetString("Token");
            var request  = new GetCategoryPagingRequest()
            {
                Keyword   = keyword,
                PageIndex = pageIndex,
                PageSize  = pageSize,
            };
            var data = await _categoryApiClient.GetCategoriesPagings(request);

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

            return(View(data));
        }
Esempio n. 4
0
        public async Task <IActionResult> Index(string keyword, int pageIndex = 1, int pageSize = 15)
        {
            var request = new GetCategoryPagingRequest()
            {
                Keyword   = keyword,
                PageIndex = pageIndex,
                PageSize  = pageSize,
            };
            var data = await _categoryApiClient.GetCategoryPagings(request);

            List <CategoryViewModel> tree = new List <CategoryViewModel>();

            if (keyword != null)
            {
                data.Items = data.Items.Skip((request.PageIndex - 1) * request.PageSize)
                             .Take(request.PageSize).ToList();
            }
            else
            {
                tree = await OrderCateToTree(data.Items);

                if (tree != null)
                {
                    data.Items = tree.Skip((request.PageIndex - 1) * request.PageSize)
                                 .Take(request.PageSize).ToList();
                    data.TotalRecords = tree.Count();
                }
            }
            ViewBag.Keyword = keyword;
            if (TempData["result"] != null)
            {
                ViewBag.SuccessMsg = TempData["result"];
            }
            if (TempData["error"] != null)
            {
                ViewBag.ErrorMsg = TempData["error"];
            }
            return(View(data));
        }
Esempio n. 5
0
        public async Task <PagedResult <CategoryViewModel> > GetAllPaging(GetCategoryPagingRequest request)
        {
            var query = from cate in _context.Categories
                        where cate.isDelete == false
                        select cate;

            if (!String.IsNullOrEmpty(request.Keyword))
            {
                query = query.Where(x => x.cate_name.Contains(request.Keyword));
            }

            int totalRow = await query.CountAsync();

            var data = query.Select(a => new CategoryViewModel()
            {
                id                = a.id,
                cate_name         = a.cate_name,
                cate_slug         = a.cate_slug,
                meta_descriptions = a.meta_descriptions,
                meta_keywords     = a.meta_keywords,
                meta_title        = a.meta_title,
                parent_id         = a.parent_id,
                create_at         = a.create_at,
                isActive          = a.isActive,
            }).ToListAsync();

            var pageResult = new PagedResult <CategoryViewModel>()
            {
                TotalRecords = totalRow,
                PageIndex    = request.PageIndex,
                PageSize     = request.PageSize,
                Items        = await data,
            };

            return(pageResult);
        }
        public async Task <ApiResult <PagedResult <CategoryViewModel> > > GetCategoriesPaging(GetCategoryPagingRequest request)
        {
            var query = _mockProjectDbContext.Categories.Select(x => new CategoryViewModel()
            {
                CategoryId   = x.Id,
                CategoryName = x.Name
            });

            if (!string.IsNullOrEmpty(request.Keyword))
            {
                query = query.Where(x => x.CategoryName.Contains(request.Keyword));
            }
            int totalRow = await query.CountAsync();

            var data = query.Skip((request.PageIndex - 1) * request.PageSize)
                       .Take(request.PageSize);
            var pagedResult = new PagedResult <CategoryViewModel>()
            {
                TotalRecords = totalRow,
                PageSize     = request.PageSize,
                PageIndex    = request.PageIndex,
                Items        = await data.ToListAsync()
            };

            return(new ApiSuccessResult <PagedResult <CategoryViewModel> >(pagedResult));
        }
        public async Task <ApiResult <PagedResult <CategoryViewModel> > > GetCategoriesPaging(GetCategoryPagingRequest request)
        {
            var sessions = _httpContextAccessor.HttpContext.Session.GetString("Token");
            var client   = _httpClientFactory.CreateClient();

            client.BaseAddress = new Uri(_configuration["BaseAddress"]);
            client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", sessions);
            var response = await client.GetAsync($"/api/category/paging?pageIndex=" +
                                                 $"{request.PageIndex}&pageSize={request.PageSize}&keyWord={request.Keyword}");

            var body = await response.Content.ReadAsStringAsync();

            var users = JsonConvert.DeserializeObject <ApiSuccessResult <PagedResult <CategoryViewModel> > >(body);

            return(users);
        }
Esempio n. 8
0
        public async Task <IActionResult> GetCategoriesPaging([FromQuery] GetCategoryPagingRequest request)
        {
            var users = await _categoryService.GetCategoriesPaging(request);

            return(Ok(users));
        }
Esempio n. 9
0
        public async Task <PagedResult <CategoryVm> > GetCategoriesPagings(GetCategoryPagingRequest request)
        {
            ////1. Select join
            //var query = from p in _context.Categories
            //            join pt in _context.CategoryTranslations on p.idCategory equals pt.CategoryId
            //            join pic in _context.ProductInCategories on p.idCategory equals pic.idCategory into ppic
            //            from pic in ppic.DefaultIfEmpty()
            //            join c in _context.products on pic.ProductId equals c.ProductId into picc
            //            from c in picc.DefaultIfEmpty()

            //            select new { p, pt, pic };
            ////2. filter
            //if (!string.IsNullOrEmpty(request.Keyword))
            //    query = query.Where(x => x.pt.Name.Contains(request.Keyword));

            //if (request.CategoryId != null && request.CategoryId != 0)
            //{
            //    query = query.Where(p => p.pic.idCategory == request.CategoryId);
            //}

            ////3. Paging
            //int totalRow = await query.CountAsync();

            //var data = await query.Skip((request.PageIndex - 1) * request.PageSize)
            //    .Take(request.PageSize)
            //    .Select(x => new CategoryVm()
            //    {
            //        Id = x.p.idCategory,
            //        ProductId = x.pic.ProductId,
            //        Name = x.pt.Name,
            //        SeoDescription = x.pt.SeoDescription,
            //        SeoAlias = x.pt.SeoAlias,
            //        SeoTitle = x.pt.SeoTitle,

            //    }).ToListAsync();

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

            //1. Select join
            var query = from p in _context.productCategories

                        select new { p };

            //2. filter
            if (!string.IsNullOrEmpty(request.Keyword))
            {
                query = query.Where(x => x.p.categoryName.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 CategoryVm()
            {
                Id   = x.p.idCategory,
                Name = x.p.categoryName
            }).ToListAsync();

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

            return(pagedResult);
        }
Esempio n. 10
0
        public async Task <IActionResult> GetAllPaging([FromQuery] GetCategoryPagingRequest requet)
        {
            var customer = await _categoryService.GetAllPaging(requet);

            return(Ok(customer));
        }