Ejemplo n.º 1
0
        public async Task <JsonResult> GetNavs()
        {
            var jm = new AdminUiCallBack();

            //先获取用户关联角色
            var roles = await _sysUserRoleServices.QueryListByClauseAsync(p => p.userId == _user.ID);

            if (roles.Any())
            {
                var roleIds     = roles.Select(p => p.roleId).ToList();
                var sysRoleMenu = await _sysRoleMenuServices.QueryListByClauseAsync(p => roleIds.Contains(p.roleId));


                var menuIds = sysRoleMenu.Select(p => p.menuId).ToList();


                var where = PredicateBuilder.True <SysMenu>();
                where     = where.And(p => p.deleted == false && p.hide == false && p.menuType == 0);
                where     = where.And(p => menuIds.Contains(p.id));

                var navs = await _sysMenuServices.QueryListByClauseAsync(where, p => p.sortNumber, OrderByType.Asc);

                var menus = GetMenus(navs, 0);

                jm.data = menus;
            }

            jm.msg  = "数据获取正常";
            jm.code = 0;

            return(new JsonResult(jm));
        }
Ejemplo n.º 2
0
        public async Task <JsonResult> GetSysMenu([FromBody] FMIntId entity)
        {
            var jm = new AdminUiCallBack();

            var model = await _sysMenuServices.QueryListByClauseAsync(p => p.deleted == false && p.hide == false,
                                                                      p => p.sortNumber, OrderByType.Asc);

            if (model == null)
            {
                jm.msg = "不存在此信息";
                return(new JsonResult(jm));
            }

            var roleMenus = await _sysRoleMenuServices.QueryListByClauseAsync(p => p.roleId == entity.id);

            var list = new List <SysMenuTreeDto>();

            if (model.Any())
            {
                model.ForEach(p =>
                {
                    list.Add(new SysMenuTreeDto
                    {
                        authority  = p.authority,
                        @checked   = roleMenus.Exists(m => m.menuId == p.id),
                        children   = null,
                        component  = p.component,
                        createTime = p.createTime,
                        deleted    = p.deleted,
                        hide       = p.hide,
                        iconColor  = p.iconColor,
                        menuName   = p.menuName,
                        menuIcon   = p.menuIcon,
                        menuType   = p.menuType,
                        id         = p.id,
                        open       = true,
                        parentId   = p.parentId,
                        parentName = "",
                        path       = p.path,
                        sortNumber = p.sortNumber,
                        target     = p.target,
                        updateTime = p.updateTime
                    });
                });
            }
            jm.code      = 0;
            jm.data      = list;
            jm.otherData = new
            {
                entity,
                roleMenus
            };

            return(new JsonResult(jm));
        }
Ejemplo n.º 3
0
        public async Task <JsonResult> GetPageList()
        {
            var jm = new AdminUiCallBack();

            var where = PredicateBuilder.True <SysMenu>();
            where     = where.And(p => p.deleted == false);
            //查询筛选

            ////菜单名称 nvarchar
            //var menuName = Request.Form["menuName"].FirstOrDefault();
            //if (!string.IsNullOrEmpty(menuName))
            //{
            //    where = where.And(p => p.menuName.Contains(menuName));
            //}

            ////菜单组件地址 nvarchar
            //var component = Request.Form["component"].FirstOrDefault();
            //if (!string.IsNullOrEmpty(component))
            //{
            //    where = where.And(p => p.component.Contains(component));
            //}

            ////权限标识 nvarchar
            //var authority = Request.Form["authority"].FirstOrDefault();
            //if (!string.IsNullOrEmpty(authority))
            //{
            //    where = where.And(p => p.authority.Contains(authority));
            //}

            //获取数据
            var list = await _sysMenuServices.QueryListByClauseAsync(where, p => p.sortNumber, OrderByType.Asc);

            //返回数据
            jm.data  = list;
            jm.code  = 0;
            jm.count = list.Count;
            jm.msg   = "数据调用成功!";
            return(new JsonResult(jm));
        }