From 58a4a54ed0dfb0b10a1cb2bd81f6a6044206c095 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=8D=E5=81=9A=E7=A0=81=E5=86=9C?= <599854767@qq.com> Date: Sun, 27 Feb 2022 09:02:18 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E7=94=A8=E6=88=B7=E5=A4=9A=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E6=9F=A5=E8=AF=A2=E9=87=8D=E5=A4=8D=E8=8F=9C=E5=8D=95?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ZR.Repository/System/SysMenuRepository.cs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/ZR.Repository/System/SysMenuRepository.cs b/ZR.Repository/System/SysMenuRepository.cs index cb03a0f0..6becc3b6 100644 --- a/ZR.Repository/System/SysMenuRepository.cs +++ b/ZR.Repository/System/SysMenuRepository.cs @@ -107,12 +107,13 @@ namespace ZR.Repository.System public List SelectMenuTreeByRoleIds(List roleIds) { var menuTypes = new string[] { "M", "C" }; - return Context.Queryable((menu, roleMenu) => new JoinQueryInfos( - JoinType.Left, menu.menuId == roleMenu.Menu_id - )) - .Where((menu, roleMenu) => roleIds.Contains(roleMenu.Role_id) && menuTypes.Contains(menu.menuType) && menu.status == "0") - .OrderBy((menu, roleMenu) => new { menu.parentId, menu.orderNum }) - .Select((menu, roleMenu) => menu).ToList(); + return Context.Queryable() + .Where((menu) => + menuTypes.Contains(menu.menuType) + && menu.status == "0" + && SqlFunc.Subqueryable().Where( s => roleIds.Contains(s.Role_id) && s.Menu_id == menu.menuId).Any()) + .OrderBy((menu) => new { menu.parentId, menu.orderNum }) + .Select((menu) => menu).ToList(); } #endregion