import UserInfoProps from './../../interface/userInfo'; export function getUserInfo(): UserInfoProps { const userInfoStr = window.sessionStorage.getItem('userInfo'); return userInfoStr ? JSON.parse(userInfoStr) : {}; } const iconMap = { 'icon-yewuzhongxin': 'icondingyizhongxin', 'icon-shujuzhongxin': 'iconpeizhizhongxin', 'icon-peizhizhongxin': 'iconyewuzhongxin', 'icon-baobiaozhongxin': 'iconbaobiaozhongxin' } type MenuProps = { title: string; icon: string; children: Array<{ name: string; path: string }> } /** 生成应用路由 */ export function handAppMenus(appCode: string, lang = 'zh-CN'): MenuProps[] { const roleModule = getUserInfo().menuList || [], appModule = roleModule.find(item => item.moduleCode === appCode)?.menu || [], arr: MenuProps[] = []; appModule.forEach(group => { const obj: MenuProps = { title: group.functionGroupDesc, icon: group.icona ? iconMap[group.icona] : '', children: [] }; group.children.forEach(item => { obj.children.push({ name: lang === 'zh-CN' ? item.functionName! : item.functionEnName!, path: '/' + item.functionUrl!.split('.')[1] }) }) arr.push(obj) }) return arr }