public async Task <List <Menu> > GetRoleMenuListAsync(int iUserId, string sOperator = null)
        {
            List <Menu> lstMenu        = new List <Menu>();
            UserInfo    entityUserInfo = await _userInfoService.SelectAsync(iUserId);

            if (entityUserInfo != null)
            {
                //查询用户拥有角色集合
                List <UserRole> lstUserRoleList = await _userRoleService.SelectALLAsync(new UserRole()
                {
                    IuserId = iUserId
                });

                List <RoleMenu> lstRoleMenu = new List <RoleMenu>();
                //查询角色所拥有的菜单集合
                if (lstUserRoleList?.Count > 0)
                {
                    foreach (UserRole entityUserRole in lstUserRoleList)
                    {
                        List <RoleMenu> lstRoleMenuList = await _roleMenuService.SelectALLAsync(new RoleMenu()
                        {
                            IroleId = entityUserRole.IroleId
                        });

                        if (lstRoleMenuList?.Count > 0)
                        {
                            lstRoleMenu.AddRange(lstRoleMenuList);
                        }
                    }
                    //去重
                    lstRoleMenu = lstRoleMenu.Where((x, i) => lstRoleMenu.FindIndex(z => z.ImenuId == x.ImenuId) == i).ToList();
                    //获取菜单
                    if (lstRoleMenu.Count > 0)
                    {
                        foreach (RoleMenu entityRoleMenu in lstRoleMenu)
                        {
                            Menu entityMenu = await _menuRepository.SelectAsync(entityRoleMenu.ImenuId);

                            if (entityMenu != null)
                            {
                                if (entityMenu.Bdisplay.Value == false)
                                {
                                    lstMenu.Add(entityMenu);
                                }
                            }
                        }
                    }
                }
            }
            return(lstMenu);
        }