public Tuple <ICollection <BlogDto>, int> GetDataAdmin(int page, int pageSize, ProductPageFilterDto paramSearch) { var query = _unitOfWorfk.BlogRepository.Filter(o => o.NotUse != true).OrderByDescending(o => o.CreatedDate); var total = query.Count(); var entities = query.Skip((page - 1) * pageSize).Take(pageSize).ToList(); var dtos = new List <BlogDto>(); entities.ForEach(o => dtos.Add(_mapper.Map <BlogDto>(o))); dtos.SetIndex(page, pageSize); return(new Tuple <ICollection <BlogDto>, int>(dtos, total)); }
public Tuple <ICollection <ProductDto>, int> LoadDataPageAdmin(int page, int pageSize, ProductPageFilterDto paramSearch) { IQueryable <Product> query = null; if (paramSearch.CategoryIds != null && paramSearch.CategoryIds.Count > 0) { var queryChild = _unitOfWorfk.Products.Where(o => paramSearch.CategoryIds.Contains(o.Category.Id)); if (query == null) { query = queryChild; } else { query = query.Union(queryChild); } } else { query = _unitOfWorfk.Products; } if (!string.IsNullOrWhiteSpace(paramSearch.TextSearch)) { query = query.Where(o => o.Name.Contains(paramSearch.TextSearch)); } var queryDto = query .OrderByDescending(o => o.CreatedDate) .Select(m => new ProductDto() { Id = m.Id, Name = m.Name, Description = m.Description, AreaCode = m.AreaCode, Price = m.Price, TrackingLink = m.TrackingLink, Picture = $"{_infoServerConfig.FileRootPath}/{m.Picture}", NotUse = m.NotUse, IsHero = m.IsHero, Tag = (TagEnum)m.Tag }); var model = queryDto.Skip((page - 1) * pageSize).Take(pageSize).ToList(); var total = queryDto.Count(); model.SetIndex(page, pageSize); return(new Tuple <ICollection <ProductDto>, int>(model, total)); }