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); }
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); }
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)); }
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)); }
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); }
public async Task <IActionResult> GetCategoriesPaging([FromQuery] GetCategoryPagingRequest request) { var users = await _categoryService.GetCategoriesPaging(request); return(Ok(users)); }
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); }
public async Task <IActionResult> GetAllPaging([FromQuery] GetCategoryPagingRequest requet) { var customer = await _categoryService.GetAllPaging(requet); return(Ok(customer)); }