diff --git a/src/api/sys/menu.ts b/src/api/sys/menu.ts index 8b08b68..35f863e 100644 --- a/src/api/sys/menu.ts +++ b/src/api/sys/menu.ts @@ -2,15 +2,15 @@ import { defHttp } from '/@/utils/http/axios' import { getMenuListResultModel, RolePageListGetResultModel } from './model/menuModel' enum Api { - GetMenuList = '/dating-agency-uec/user/list/user-org-role/application-resource', + GetMenuList = '/dating-agency-uec/user/list/user-clue-org-role/application-resource', RolePageList = '/dating-agency-uec/user/page/organization-role', CreateMenu = '/dating-agency-uec/user/create/application-resource', DeleteMenu = '/dating-agency-uec/user/delete/application-resource', EditMenu = '/dating-agency-uec/user/edit/application-resource', - GetAllMenuList = '/dating-agency-uec/user/list/application-resource/by-app-program-id', + GetAllMenuList = '/dating-agency-uec/user/list/clue/application-resource', CreateRole = '/dating-agency-uec/user/create/organization-role', EditRole = '/dating-agency-uec/user/edit/organization-role', - RoleMenu = '/dating-agency-uec/user/list/organization-role/application-resource', + RoleMenu = '/dating-agency-uec/user/list/clue-org-role/application-resource', DeleteRole = '/dating-agency-uec/user/delete/organization-role', } diff --git a/src/locales/lang/zh-CN/routes/system.ts b/src/locales/lang/zh-CN/routes/system.ts index 5cef726..ddb3287 100644 --- a/src/locales/lang/zh-CN/routes/system.ts +++ b/src/locales/lang/zh-CN/routes/system.ts @@ -1,5 +1,5 @@ export default { - system: '企业管理', + system: '门店管理', role: '角色管理', menu: '菜单管理' } diff --git a/src/router/helper/menuHelper.ts b/src/router/helper/menuHelper.ts index 5712417..849519b 100644 --- a/src/router/helper/menuHelper.ts +++ b/src/router/helper/menuHelper.ts @@ -114,19 +114,23 @@ export function configureDynamicParamsMenu(menu: Menu, params: RouteParams) { /** * 对后端返回的menus和前端路由进行对比然后组成新的菜单,目前只针对两级菜单,通用的多级菜单需要进行修改 */ -export function transformMenu(menus: string[]): Menu[] { +export function transformMenu(menus: any[]): Menu[] { // 如果没有菜单数据,按照管理员来处理 if(menus.length == 0){ return [] } + // const menuArray = flattenTree(menus) let menuList: Menu[] = [] appMenuList.forEach(item => { let element: Menu = {path: item.path, name: item.name, component: 'LAYOUT', redirect: item.redirect, meta: item.meta} let children: Menu[] = [] item.children?.forEach(menu => { + + // 这里只考虑二级菜单,没有做 if(menus.includes(menu.path)){ children.push(cloneDeep(menu)) } + }) if(children.length){ element.children = children @@ -134,4 +138,32 @@ export function transformMenu(menus: string[]): Menu[] { } }) return menuList +} + +function flattenSingleNode(root: Menu): string[] { + const stack: Menu[] = [root]; + const result: string[] = []; + while (stack.length) { + const node = stack.pop()!; + result.push(node.path); + if (node.children) { + // 从右向左压栈,保证从左到右遍历 + for (let i = node.children.length - 1; i >= 0; i--) { + stack.push(node.children[i]); + } + } + } + return result; } + +function flattenTree(nodes: Menu | Menu[]): string[] { + if (Array.isArray(nodes)) { + let result: string[] = []; + nodes.forEach(node => { + result = result.concat(flattenSingleNode(node)); + }); + return result; + } else { + return flattenSingleNode(nodes); + } +} \ No newline at end of file diff --git a/src/settings/projectSetting.ts b/src/settings/projectSetting.ts index 26cb69e..47b62bd 100644 --- a/src/settings/projectSetting.ts +++ b/src/settings/projectSetting.ts @@ -24,7 +24,7 @@ const setting: ProjectConfig = { settingButtonPosition: SettingButtonPositionEnum.AUTO, // Permission mode - permissionMode: PermissionModeEnum.ROLE, + permissionMode: PermissionModeEnum.BACK, // Permission-related cache is stored in sessionStorage or localStorage permissionCacheType: CacheTypeEnum.LOCAL, diff --git a/src/views/invite/index/index.vue b/src/views/invite/index/index.vue index cc663d2..a217767 100644 --- a/src/views/invite/index/index.vue +++ b/src/views/invite/index/index.vue @@ -48,14 +48,6 @@