Пример #1
0
        public ProductCategoryFilters GetFilters()
        {
            var filters = new ProductCategoryFilters()
            {
                Page  = Convert.ToInt32(HttpContext.Request.Query["page"]),
                Limit = Convert.ToInt32(HttpContext.Request.Query["limit"]),
                Name  = HttpContext.Request.Query["name"],
                Code  = HttpContext.Request.Query["code"],
            };

            return(filters);
        }
        public async Task <ResponseModel <ProductCategoryViewModel> > GetList(ProductCategoryFilters filters, SortCol sortCol
                                                                              , AccountViewModel account)
        {
            var query = _context.ProductCategory.Where(o => o.IsDelete == 0 && o.CompanyId == account.CompanyId);

            query = Search(query, filters);
            query = Sort(query, sortCol);
            var vms = await query.Skip((filters.Page - 1) *filters.Limit).Take(filters.Limit)
                      .ProjectTo <ProductCategoryViewModel>().ToListAsync();

            ResponseModel <ProductCategoryViewModel> result = new ResponseModel <ProductCategoryViewModel>();

            result.status  = 0;
            result.message = "";
            result.total   = query.Count();
            result.data    = vms;
            return(result);
        }
 public IQueryable <ProductCategory> Search(IQueryable <ProductCategory> query, ProductCategoryFilters filters)
 {
     if (!string.IsNullOrWhiteSpace(filters.Name))
     {
         query = query.Where(o => o.CateName.Contains(filters.Name));
     }
     return(query);
 }