public IQueryable <AppMenu> Search(IQueryable <AppMenu> query, AppmenuFilters filters)
 {
     if (!string.IsNullOrWhiteSpace(filters.Name))
     {
         query = query.Where(o => o.Name.Contains(filters.Name));
     }
     if (!string.IsNullOrWhiteSpace(filters.Code))
     {
         query = query.Where(o => o.Code.Contains(filters.Code));
     }
     return(query);
 }
Beispiel #2
0
        public AppmenuFilters GetFilters()
        {
            var filters = new AppmenuFilters()
            {
                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 <AppMenuViewModel> > GetList(AppmenuFilters filters, SortCol sortCol)
        {
            var query = _accessManagementContext.AppMenu.Where(o => o.Id != 0);

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

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

            result.status  = 0;
            result.message = "";
            result.total   = query.Count();
            result.data    = vms;
            return(result);
        }