From 06404e701a89955958cbf56213e2eec618d8644d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 16 十二月 2020 18:36:16 +0800 Subject: [PATCH] 2020-12-16 --- src/components/header/index.jsx | 49 +++++++++++++++++++++++++------------------------ 1 files changed, 25 insertions(+), 24 deletions(-) diff --git a/src/components/header/index.jsx b/src/components/header/index.jsx index 5bfd07a..ab1c8c7 100644 --- a/src/components/header/index.jsx +++ b/src/components/header/index.jsx @@ -160,15 +160,15 @@ if (!result) return if (result.status) { - let res = this.getMenulist(result) + const { menulist } = this.getMenulist(result) this.setState({ - menulist: res.menulist, + menulist, systems: [] }) - this.props.modifyMenuTree(res.menulist) - this.props.modifyMainMenu(res.menulist[0] || null) + this.props.modifyMenuTree(menulist) + this.props.modifyMainMenu(menulist[0] || null) } else { notification.error({ top: 92, @@ -218,32 +218,32 @@ _param.pro_sys = window.GLOB.systemType === 'production' ? 'Y' : '' Api.getSystemConfig(_param).then(result => { - if (!result.status || !result.fst_menu) { + if (!result.status) { notification.error({ top: 92, - message: result.message || '鏈煡璇㈠埌鑿滃崟淇℃伅锛�', + message: result.message, duration: 10 }) return } - let res = this.getMenulist(result) + const { menulist, thdMenuList } = this.getMenulist(result) this.setState({ - menulist: res.menulist, - thdMenuList: res.thdMenuList, + menulist, + thdMenuList, systems: window.GLOB.systemType === 'production' || options.sysType === 'SSO' ? (result.sys_list || []) : [] }) - let mainMenu = res.menulist[0] || null + let mainMenu = menulist[0] || '' let _menu = null if (sessionStorage.getItem('ThirdMenu')) { // 鏄惁涓烘墦寮�鏂伴〉闈� let ThirdMenuId = sessionStorage.getItem('ThirdMenu') - _menu = res.thdMenuList.filter(item => item.MenuID === ThirdMenuId)[0] // 閫氳繃url涓璵enuid绛涢�夊嚭閫変腑鐨勪富鑿滃崟 + _menu = thdMenuList.filter(item => item.MenuID === ThirdMenuId)[0] // 閫氳繃url涓璵enuid绛涢�夊嚭閫変腑鐨勪富鑿滃崟 if (_menu) { - mainMenu = res.menulist.filter(item => item.MenuID === _menu.FstId)[0] + mainMenu = menulist.filter(item => item.MenuID === _menu.FstId)[0] mainMenu = fromJS(mainMenu).toJS() mainMenu.openId = _menu.ParentId } @@ -251,9 +251,9 @@ sessionStorage.removeItem('ThirdMenu') } - this.props.modifyMenuTree(res.menulist) + this.props.modifyMenuTree(menulist) this.props.modifyMainMenu(mainMenu) - this.props.initMenuPermission(res.thdMenuList) + this.props.initMenuPermission(thdMenuList) resolve(_menu) }) @@ -279,7 +279,8 @@ getMenulist = (result) => { let thdMenuList = [] let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt'] - let menulist = result.fst_menu.map(fst => { + let menulist = [] + result.fst_menu && result.fst_menu.forEach(fst => { let fstItem = { MenuID: fst.MenuID, MenuName: fst.MenuName, @@ -392,7 +393,7 @@ }) } - return fstItem + menulist.push(fstItem) }) return { menulist, thdMenuList } @@ -698,7 +699,7 @@ render () { const { mainMenu, collapse } = this.props - const { thdMenuList, searchkey, oriVersion, newVersion, debug } = this.state + const { thdMenuList, searchkey, oriVersion, newVersion, debug, menulist } = this.state const menu = ( <Menu className="header-dropdown"> @@ -707,9 +708,9 @@ <Switch size="small" style={{marginLeft: '7px'}} disabled={!!this.props.editLevel} checked={this.props.editState} onChange={this.changeEditState} /> </Menu.Item>} {!this.props.editState ? <Menu.Item key="password" onClick={this.changePassword}>{this.state.dict['main.password']}</Menu.Item> : null} - {this.state.systems.length > 0 ? <Menu.SubMenu title="鍒囨崲绯荤粺"> + {this.state.systems.length ? <Menu.SubMenu style={{minWidth: '110px'}} title="鍒囨崲绯荤粺"> {this.state.systems.map((system, index) => ( - <Menu.Item style={{minWidth: '100px'}} key={'sub' + index} onClick={() => {this.changeSystem(system)}}> {system.AppName} </Menu.Item> + <Menu.Item style={{minWidth: '100px', lineHeight: '30px'}} key={'sub' + index} onClick={() => {this.changeSystem(system)}}> {system.AppName} </Menu.Item> ))} </Menu.SubMenu> : null} <Menu.Item key="doc" onClick={this.gotoDoc}>{this.state.dict['main.doc']}</Menu.Item> @@ -722,14 +723,14 @@ return ( <header className="header-container ant-menu-dark" id="main-header-container"> - <div className={collapse ? "collapse header-logo" : "header-logo"}><img src={this.state.logourl} alt=""/></div> - <div className={collapse ? "collapse header-collapse" : "header-collapse"} onClick={this.handleCollapse}> - <Icon type={collapse ? 'menu-unfold' : 'menu-fold'} /> + <div className={'header-logo ' + (collapse ? 'collapse' : '')}><img src={this.state.logourl} alt=""/></div> + <div className={'header-collapse ' + (collapse ? 'collapse' : '')}> + {menulist && menulist.length ? <Icon type={collapse ? 'menu-unfold' : 'menu-fold'} onClick={this.handleCollapse}/> : null} </div> {/* 姝e父鑿滃崟 */} - {this.props.editLevel !== 'level1' && this.state.menulist ? + {this.props.editLevel !== 'level1' && menulist ? <ul className={'header-menu ' + this.props.editLevel}>{ - this.state.menulist.map(item => { + menulist.map(item => { return ( <li key={item.MenuID} onClick={() => {this.changeMenu(item)}} className={mainMenu && mainMenu.MenuID === item.MenuID ? 'active' : ''}> <span>{item.MenuName}</span> -- Gitblit v1.8.0