diff --git a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Config/SwaggerDoc.xml b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Config/SwaggerDoc.xml index 088c6d29..a609e384 100644 --- a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Config/SwaggerDoc.xml +++ b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Config/SwaggerDoc.xml @@ -294,6 +294,14 @@ + + + 更改角色状态 + + + + + 测试控制器 diff --git a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/RoleController.cs b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/RoleController.cs index 02e49d05..84703810 100644 --- a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/RoleController.cs +++ b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/RoleController.cs @@ -74,5 +74,18 @@ namespace Yi.Framework.ApiMicroservice.Controllers { return Result.Success().SetStatus(await _iRoleService.UpdateInfo(roleDto)); } + + /// + /// 更改角色状态 + /// + /// + /// + /// + [HttpPut] + public async Task UpdateStatus(long roleId, bool isDel) + { + return Result.Success().SetData(await _iRoleService._repository.UpdateIgnoreNullAsync(new RoleEntity() { Id = roleId, IsDeleted = isDel })); + + } } } diff --git a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/TestController.cs b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/TestController.cs index 9bd99c92..b52deaf4 100644 --- a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/TestController.cs +++ b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/Controllers/TestController.cs @@ -190,9 +190,9 @@ namespace Yi.Framework.ApiMicroservice.Controllers { List vueRouterModels = new() { - new VueRouterModel { Id = 1, Sort = 1, ParentId = 0, Name = "001" }, - new VueRouterModel { Id = 2, Sort = 1, ParentId = 1, Name = "001001" }, - new VueRouterModel { Id = 3, Sort = 1, ParentId = 1, Name = "001002" } + new VueRouterModel { Id = 1, OrderNum = 1, ParentId = 0, Name = "001" }, + new VueRouterModel { Id = 2, OrderNum = 1, ParentId = 1, Name = "001001" }, + new VueRouterModel { Id = 3, OrderNum = 1, ParentId = 1, Name = "001002" } }; var treeData = Common.Helper.TreeHelper.SetTree(vueRouterModels); return Result.Success().SetData(treeData); diff --git a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/yi-sqlsugar-dev.db b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/yi-sqlsugar-dev.db index a200c92d..33cc8114 100644 Binary files a/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/yi-sqlsugar-dev.db and b/Yi.Framework.Net6/Yi.Framework.ApiMicroservice/yi-sqlsugar-dev.db differ diff --git a/Yi.Framework.Net6/Yi.Framework.Common/Helper/TreeHelper.cs b/Yi.Framework.Net6/Yi.Framework.Common/Helper/TreeHelper.cs index b6b9c03f..4ff321a1 100644 --- a/Yi.Framework.Net6/Yi.Framework.Common/Helper/TreeHelper.cs +++ b/Yi.Framework.Net6/Yi.Framework.Common/Helper/TreeHelper.cs @@ -9,7 +9,7 @@ namespace Yi.Framework.Common.Helper { public static class TreeHelper { - public static IList SetTree(IList list, Action action = null) + public static List SetTree(List list, Action action = null) { if (list != null && list.Count > 0) { @@ -30,7 +30,7 @@ namespace Yi.Framework.Common.Helper SetTreeChildren(list, children, model, action); } } - return result.OrderBy(m => (m as ITreeModel).Sort).ToList(); + return result.OrderBy(m => (m as ITreeModel).OrderNum).ToList(); } return null; } @@ -52,7 +52,7 @@ namespace Yi.Framework.Common.Helper SetTreeChildren(list, _children, item, action); } } - mm.Children = mm.Children.OrderBy(m => (m as ITreeModel).Sort).ToList(); + mm.Children = mm.Children.OrderBy(m => (m as ITreeModel).OrderNum).ToList(); } } } diff --git a/Yi.Framework.Net6/Yi.Framework.Common/Models/ITreeModel.cs b/Yi.Framework.Net6/Yi.Framework.Common/Models/ITreeModel.cs index be450770..ed6bb3af 100644 --- a/Yi.Framework.Net6/Yi.Framework.Common/Models/ITreeModel.cs +++ b/Yi.Framework.Net6/Yi.Framework.Common/Models/ITreeModel.cs @@ -8,10 +8,10 @@ namespace Yi.Framework.Common.Models { public interface ITreeModel { - public int Id { get; set; } - public int ParentId { get; set; } - public int Sort { get; set; } + public long Id { get; set; } + public long ParentId { get; set; } + public int OrderNum { get; set; } - public IList Children { get; set; } + public List Children { get; set; } } } diff --git a/Yi.Framework.Net6/Yi.Framework.Common/Models/VueRouterModel.cs b/Yi.Framework.Net6/Yi.Framework.Common/Models/VueRouterModel.cs index cfe24942..a6bb5cf4 100644 --- a/Yi.Framework.Net6/Yi.Framework.Common/Models/VueRouterModel.cs +++ b/Yi.Framework.Net6/Yi.Framework.Common/Models/VueRouterModel.cs @@ -8,9 +8,9 @@ namespace Yi.Framework.Common.Models { public class VueRouterModel : ITreeModel { - public int Id { get; set; } - public int ParentId { get; set; } - public int Sort { get; set; } + public long Id { get; set; } + public long ParentId { get; set; } + public int OrderNum { get; set; } public string Name { get; set; } public string Path { get; set; } @@ -19,7 +19,7 @@ namespace Yi.Framework.Common.Models public string Component { get; set; } public bool AlwaysShow { get; set; } public Meta Meta { get; set; } - public IList Children { get; set; } + public List Children { get; set; } } diff --git a/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/RoleEntity.cs b/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/RoleEntity.cs index 024827e3..02458345 100644 --- a/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/RoleEntity.cs +++ b/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/RoleEntity.cs @@ -13,7 +13,7 @@ namespace Yi.Framework.Model.Models { public RoleEntity() { - this.IsDeleted = false; + //this.IsDeleted = false; this.CreateTime = DateTime.Now; } [JsonConverter(typeof(ValueToStringConverter))] diff --git a/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/UserEntity.cs b/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/UserEntity.cs index ce0be875..62c42358 100644 --- a/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/UserEntity.cs +++ b/Yi.Framework.Net6/Yi.Framework.Model/ModelsTemplate/UserEntity.cs @@ -13,7 +13,6 @@ namespace Yi.Framework.Model.Models { public UserEntity() { - this.IsDeleted = false; this.CreateTime = DateTime.Now; } [JsonConverter(typeof(ValueToStringConverter))] diff --git a/Yi.Framework.Net6/Yi.Framework.Service/RoleService.cs b/Yi.Framework.Net6/Yi.Framework.Service/RoleService.cs index b808dc17..290165e3 100644 --- a/Yi.Framework.Net6/Yi.Framework.Service/RoleService.cs +++ b/Yi.Framework.Net6/Yi.Framework.Service/RoleService.cs @@ -60,7 +60,7 @@ namespace Yi.Framework.Service .WhereIF(!string.IsNullOrEmpty(role.RoleName), u => u.RoleName.Contains(role.RoleName)) .WhereIF(!string.IsNullOrEmpty(role.RoleCode), u => u.RoleCode.Contains(role.RoleCode)) .WhereIF(page.StartTime.IsNotNull() && page.EndTime.IsNotNull(), u => u.CreateTime >= page.StartTime && u.CreateTime <= page.EndTime) - .Where(u => u.IsDeleted == role.IsDeleted) + .WhereIF(role.IsDeleted.IsNotNull(), u => u.IsDeleted == role.IsDeleted) .OrderBy(u => u.OrderNum, OrderByType.Desc) .ToPageListAsync(page.PageNum, page.PageSize, total); diff --git a/Yi.Framework.Net6/Yi.Framework.Service/UserService.cs b/Yi.Framework.Net6/Yi.Framework.Service/UserService.cs index 387575eb..46d8992d 100644 --- a/Yi.Framework.Net6/Yi.Framework.Service/UserService.cs +++ b/Yi.Framework.Net6/Yi.Framework.Service/UserService.cs @@ -132,10 +132,10 @@ namespace Yi.Framework.Service if (!string.IsNullOrEmpty(menu.PermissionCode)) { userRoleMenu.PermissionCodes.Add(menu.PermissionCode); - userRoleMenu.Menus.Add(menu); + } - + userRoleMenu.Menus.Add(menu); } } @@ -164,7 +164,7 @@ namespace Yi.Framework.Service .WhereIF(!string.IsNullOrEmpty(user.Name), u => u.Name.Contains(user.Name)) .WhereIF(!string.IsNullOrEmpty(user.Phone), u => u.Phone.Contains(user.Phone)) .WhereIF(page.StartTime.IsNotNull() && page.EndTime.IsNotNull(), u => u.CreateTime >= page.StartTime && u.CreateTime <= page.EndTime) - .Where(u => u.IsDeleted == user.IsDeleted) + .WhereIF(user.IsDeleted.IsNotNull(),u => u.IsDeleted == user.IsDeleted) .Includes(u => u.Roles) .OrderBy(u => u.OrderNum, OrderByType.Desc) .ToPageListAsync(page.PageNum, page.PageSize, total); @@ -179,8 +179,12 @@ namespace Yi.Framework.Service List routers = new(); foreach (var m in menus) { + var r = new VueRouterModel(); var routerName = m.Router.Split("/").LastOrDefault(); + r.Id = m.Id; + r.ParentId = (long)m.ParentId; + //开头大写 r.Name = routerName.First().ToString().ToUpper() + routerName.Substring(1); r.Path = m.Router; @@ -195,6 +199,9 @@ namespace Yi.Framework.Service } if (m.MenuType == MenuTypeEnum.Menu.GetHashCode()) { + + r.Redirect = "noRedirect"; + r.AlwaysShow = true; r.Component = m.Component; } @@ -212,7 +219,7 @@ namespace Yi.Framework.Service routers.Add(r); } - return routers; + return Common.Helper.TreeHelper.SetTree(routers) ; } public async Task UpdateInfo(UserInfoDto userDto) diff --git a/Yi.Vue3.X.RuoYi/src/api/menu.js b/Yi.Vue3.X.RuoYi/src/api/menu.js index faef101c..5d4a7718 100644 --- a/Yi.Vue3.X.RuoYi/src/api/menu.js +++ b/Yi.Vue3.X.RuoYi/src/api/menu.js @@ -3,7 +3,7 @@ import request from '@/utils/request' // 获取路由 export const getRouters = () => { return request({ - url: '/getRouters', + url: '/account/GetRouterInfo', method: 'get' }) } \ No newline at end of file diff --git a/Yi.Vue3.X.RuoYi/src/api/system/role.js b/Yi.Vue3.X.RuoYi/src/api/system/role.js index 65267251..60ec5f10 100644 --- a/Yi.Vue3.X.RuoYi/src/api/system/role.js +++ b/Yi.Vue3.X.RuoYi/src/api/system/role.js @@ -47,15 +47,10 @@ export function dataScope(data) { } // 角色状态修改 -export function changeRoleStatus(roleId, status) { - const data = { - roleId, - status - } +export function changeRoleStatus(roleId, isDel) { return request({ - url: '/system/role/changeStatus', - method: 'put', - data: data + url: `/role/updateStatus?roleId=${roleId}&isDel=${isDel}`, + method: 'put' }) } diff --git a/Yi.Vue3.X.RuoYi/src/store/modules/permission.js b/Yi.Vue3.X.RuoYi/src/store/modules/permission.js index d4768cd1..7f626039 100644 --- a/Yi.Vue3.X.RuoYi/src/store/modules/permission.js +++ b/Yi.Vue3.X.RuoYi/src/store/modules/permission.js @@ -35,8 +35,8 @@ const usePermissionStore = defineStore( generateRoutes(roles) { return new Promise(resolve => { // 向后端请求路由数据 - // getRouters().then(res => { - +// getRouters().then(response => { +// const res=response.data; const res=[ { "name": "System", @@ -344,6 +344,7 @@ const res=[ } ]; + const sdata = JSON.parse(JSON.stringify(res)) const rdata = JSON.parse(JSON.stringify(res)) const defaultData = JSON.parse(JSON.stringify(res)) @@ -357,7 +358,10 @@ const res=[ this.setDefaultRoutes(sidebarRoutes) this.setTopbarRoutes(defaultRoutes) resolve(rewriteRoutes) - // }) + + + + // }) }) } } diff --git a/Yi.Vue3.X.RuoYi/src/views/system/user/index.vue b/Yi.Vue3.X.RuoYi/src/views/system/user/index.vue index cad31c11..10c55011 100644 --- a/Yi.Vue3.X.RuoYi/src/views/system/user/index.vue +++ b/Yi.Vue3.X.RuoYi/src/views/system/user/index.vue @@ -66,8 +66,8 @@ - - + @@ -177,7 +177,7 @@ + :value="item.postId" :disabled="item.isDeleted == true">