From 1342b50b68094321bde0766a02c71690c19dc50c Mon Sep 17 00:00:00 2001 From: lzw <605106923@qq.com> Date: Sun, 24 Oct 2021 14:33:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=A0=B9=E6=8D=AE=E8=B7=AF?= =?UTF-8?q?=E7=94=B1=E8=8E=B7=E5=8F=96=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/UserController.cs | 19 ++++++++++++------- .../Yi.Framework.Interface/IUserService.cs | 2 +- .../Yi.Framework.Service/UserService.cs | 14 +++++++++++--- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/UserController.cs b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/UserController.cs index 2eec5b16..70d4bb64 100644 --- a/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/UserController.cs +++ b/Yi.Framework/Yi.Framework.ApiMicroservice/Controllers/UserController.cs @@ -135,14 +135,12 @@ namespace Yi.Framework.ApiMicroservice.Controllers var _user = HttpContext.GetCurrentUserInfo(); return Result.Success().SetData(await _userService.GetMenuById(_user.id)); } - [HttpPost] - public async Task GetRouterByUserId( AxiosUrlsModel urlsModel,string router) + [HttpGet] + public async Task GetRouterByUserId(string router) { var _user = HttpContext.GetCurrentUserInfo(); - var menuList = await _userService.GetMenuById(_user.id); - //var menu_data= await _userService.GetMenuByUserId(router); - var menu_data =menuList.Where(u=>u.router==router).FirstOrDefault(); - + var menu_data = await _userService.GetMenuByUserId(router,_user.id); + AxiosUrlsModel urlsModel = new(); foreach (var _menu in menu_data.children) if (_menu.mould.mould_name == "get") { @@ -159,7 +157,14 @@ namespace Yi.Framework.ApiMicroservice.Controllers else if (_menu.mould.mould_name == "add") { urlsModel.add = _menu.mould.url ; - } + } + else + { + urlsModel.add = null; + urlsModel.del = null; + urlsModel.update = null; + urlsModel.get = null; + } return Result.Success().SetData(urlsModel); } diff --git a/Yi.Framework/Yi.Framework.Interface/IUserService.cs b/Yi.Framework/Yi.Framework.Interface/IUserService.cs index 3c66e0b0..5c4a4799 100644 --- a/Yi.Framework/Yi.Framework.Interface/IUserService.cs +++ b/Yi.Framework/Yi.Framework.Interface/IUserService.cs @@ -86,7 +86,7 @@ namespace Yi.Framework.Interface /// /// /// - Task GetMenuByUserId(string router); + Task GetMenuByUserId(string router,int userId); } } diff --git a/Yi.Framework/Yi.Framework.Service/UserService.cs b/Yi.Framework/Yi.Framework.Service/UserService.cs index 32c987a4..3096ff8a 100644 --- a/Yi.Framework/Yi.Framework.Service/UserService.cs +++ b/Yi.Framework/Yi.Framework.Service/UserService.cs @@ -204,10 +204,18 @@ namespace Yi.Framework.Service - public async Task GetMenuByUserId(string router) + public async Task GetMenuByUserId(string router,int userId) { - return await _Db.Set().Include(u => u.children).ThenInclude(u => u.mould) - .Where(u => u.router==router&&u.is_delete == (short)Common.Enum.DelFlagEnum.Normal && u.is_delete == (short)Common.Enum.ShowFlagEnum.Show).FirstOrDefaultAsync(); + var user_data= await _Db.Set().Include(u => u.roles).ThenInclude(u => u.menus).ThenInclude(u => u.mould) + .Where(u => u.id==userId&&u.is_delete == (short)Common.Enum.DelFlagEnum.Normal && u.is_delete == (short)Common.Enum.ShowFlagEnum.Show).FirstOrDefaultAsync(); + var roleList= user_data.roles.ToList(); + menu menu_data=new(); + foreach(var item in roleList) + { + menu_data = item.menus.Where(u => u.router == router).FirstOrDefault(); + } + + return menu_data; } } }