public async Task <string> QueryPagedAsync([FromQuery] MenuParam param)
        {
            var result = await _menuRepository.QueryPagedAsync(c => c.ParentId == null, param);

            //var allSubMenu = await _menuRepository.QueryAsync(c => c.ParentId != null);
            var list = new List <MenuDto>();

            if (result.Items != null)
            {
                foreach (var item in result.Items)
                {
                    var menuDto = item.EntityMap <Menu, MenuDto>();
                    menuDto.HasChildren = true;
                    list.Add(menuDto);
                }
            }

            var pageData = new PagedDto <MenuDto>
            {
                Code  = 200,
                Msg   = "获取数据成功",
                Total = result.TotalResults,
                //PageSize = param.P,
                Data = list
            };
            var json = pageData.ToString();

            return(json);
        }
        //[SupportFilter]
        public JsonResult GetData(MenuParam menuParam)
        {
            int total     = 0;
            var queryData = SMMENUTBService.LoadSearchEntities(menuParam);

            total = menuParam.TotalCount;

            //构造成Json的格式传递
            var result = new { total = total, rows = queryData };

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Пример #3
0
        /// <summary>
        /// 多条件搜索角色信息
        /// </summary>
        /// <param name="menuParam">查询参数实体</param>
        /// <returns></returns>
        public IQueryable <SMMENUTB> LoadSearchEntities(MenuParam menuParam)
        {
            Expression <Func <SMMENUTB, bool> > whereLambda = PredicateBuilder.True <SMMENUTB>();
            int count = 0;
            IQueryable <SMMENUTB> queryData = null;

            if (!string.IsNullOrEmpty(menuParam.order) && !string.IsNullOrEmpty(menuParam.sort))
            {
                bool isAsc = menuParam.order == "asc" ? true : false;
                queryData = LoadPageEntities <SMMENUTB>(menuParam.page, menuParam.rows, out count, whereLambda, menuParam.sort, isAsc);
            }
            else
            {
                queryData = LoadPageEntities <SMMENUTB>(menuParam.page, menuParam.rows, out count, whereLambda, menuParam.sort, null);
            }
            menuParam.TotalCount = count;

            return(queryData);
        }