From 1c4f0fc98bdc8e11dddd64f1025ce088876f30c7 Mon Sep 17 00:00:00 2001 From: "boxu.zheng" Date: Mon, 27 Mar 2023 19:23:20 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E8=8F=9C=E5=8D=95=20=E5=8E=9F=E6=9C=89=E6=96=B9=E6=B3=95?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E6=B2=A1=E4=BB=80=E4=B9=88=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20=E4=BD=86=E6=98=AF=E6=97=A0=E6=B3=95=E8=8E=B7=E5=8F=96=20?= =?UTF-8?q?=E6=9A=82=E6=97=B6=E8=A7=A3=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserMenus/UserMenuAppService.cs | 30 ++++++++++--------- .../Win_in.Sfs.Auth.Web.csproj | 5 ++-- ...yFrameworkCore.SqlServer.AuthDbContext.sql | 2 +- 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/UserMenus/UserMenuAppService.cs b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/UserMenus/UserMenuAppService.cs index 4ea1a4223..67b2cddde 100644 --- a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/UserMenus/UserMenuAppService.cs +++ b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Application/UserMenus/UserMenuAppService.cs @@ -66,20 +66,22 @@ public class UserMenuAppService : [HttpGet("web-menu/{userId}")] public virtual async Task> GetWebMenusOfUserAsync(Guid? userId) { + //var permissions = await GetPermissionsAsync(userId.Value).ConfigureAwait(false); - var permissions = await GetPermissionsAsync(userId.Value).ConfigureAwait(false); + //var menus = await _menuRepository + // .GetListAsync(p => (permissions.Contains(p.Permission) || p.Permission == "skip") + // && p.Portal == WEB_PORTAL + // && p.Status == MenuStatus.Enable).ConfigureAwait(false); + //var dtos = ObjectMapper.Map, List>(menus); + var userMenus = await _repository + .GetListAsync(p => p.UserId == userId); + + userMenus = userMenus.Where(p => (int)p.Portal == (int)EnumPortal.Web).ToList(); - var menus = await _menuRepository - .GetListAsync(p => (permissions.Contains(p.Permission) || p.Permission == "skip") - && p.Portal == WEB_PORTAL - && p.Status == MenuStatus.Enable).ConfigureAwait(false); - var dtos = ObjectMapper.Map, List>(menus); - // var userMenus = await _repository - // .GetListAsync(p => p.UserId == userId && p.Portal == WEB_PORTAL); - // var menuCodes = userMenus.Select(p => p.MenuCode).Distinct().ToList(); - // var menus = await GetListByPortalAndCodesAsync(WEB_PORTAL, menuCodes); + var menuCodes = userMenus.Select(p => p.MenuCode).Distinct().ToList(); + var menus = await GetListByPortalAndCodesAsync(WEB_PORTAL, menuCodes); - var result = BuildMenuTree(dtos); + var result = BuildMenuTree(menus); return result; } @@ -135,9 +137,9 @@ public class UserMenuAppService : private async Task> GetListByPortalAndCodesAsync(EnumPortal portal, List menuCodes) { var entities = await _menuRepository - .GetListAsync(p => menuCodes.Contains(p.Code) - && p.Portal == portal - && p.Status == MenuStatus.Enable).ConfigureAwait(false); + .GetListAsync(p => menuCodes.Contains(p.Code)); + + entities = entities.Where(p => p.Status == MenuStatus.Enable && p.Portal == EnumPortal.Web).ToList(); return ObjectMapper.Map, List>(entities); } diff --git a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj index a76df16b7..628a9913d 100644 --- a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj +++ b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/Win_in.Sfs.Auth.Web.csproj @@ -16,6 +16,7 @@ 1.yyyy.Mdd.Hmm 1.2023.327.1207 True + @@ -56,9 +57,9 @@ - + diff --git a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/scripts/db.Microsoft.EntityFrameworkCore.SqlServer.AuthDbContext.sql b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/scripts/db.Microsoft.EntityFrameworkCore.SqlServer.AuthDbContext.sql index a2fb392c6..feddf2794 100644 --- a/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/scripts/db.Microsoft.EntityFrameworkCore.SqlServer.AuthDbContext.sql +++ b/be/Hosts/Auth.Host/src/Win_in.Sfs.Auth.Web/scripts/db.Microsoft.EntityFrameworkCore.SqlServer.AuthDbContext.sql @@ -233,7 +233,7 @@ CREATE TABLE [Auth_Menu] ( [Portal] nvarchar(64) NOT NULL, [ParentCode] nvarchar(64) NULL, [Permission] nvarchar(64) NULL, - [Component] nvarchar(64) NULL, + [Component] nvarchar(1024) NULL, [GroupName] nvarchar(1024) NULL, [GroupSort] int NOT NULL, [CountUrl] nvarchar(max) NULL,