| | |
| | | import { is, fromJS } from 'immutable' |
| | | import {Dropdown, Menu, Icon, Modal, message, Form } from 'antd' |
| | | import md5 from 'md5' |
| | | import {toggleCollapse, modifyMainMenu, resetState} from '@/store/action' |
| | | import {toggleCollapse, modifyMainMenu, resetState, resetDebug} from '@/store/action' |
| | | import Resetpwd from '@/components/resetpwd' |
| | | import Api from '@/api' |
| | | import zhCN from '@/locales/zh-CN/header.js' |
| | | import enUS from '@/locales/en-US/header.js' |
| | | import Utils from '@/utils/utils.js' |
| | | import logourl from '../../assets/img/mlogo.png' |
| | | import avatar from '../../assets/img/avatar.jpg' |
| | | import './index.scss' |
| | |
| | | menulist: null, |
| | | visible: false, |
| | | dict: (!localStorage.getItem('lang') || localStorage.getItem('lang') === 'zh-CN') ? zhCN : enUS, |
| | | confirmLoading: false |
| | | confirmLoading: false, |
| | | userName: localStorage.getItem('username') |
| | | } |
| | | |
| | | handleCollapse = () => { |
| | |
| | | // 获取主菜单 |
| | | let result = await Api.getMainMenuData() |
| | | if (result.status) { |
| | | this.setState({ |
| | | menulist: result.data |
| | | }) |
| | | let _avatar = Utils.getrealurl(result.HeadIcon) // 头像 |
| | | if (_avatar) { |
| | | avatar = _avatar |
| | | } |
| | | |
| | | if (result.debug === 'true') { // 是否为debug模式,即可复制菜单参数 |
| | | this.props.resetDebug() |
| | | } |
| | | |
| | | let param = sessionStorage.getItem('view_param') // 是否为打开新页面 |
| | | if (param) { |
| | | // 通过url中menuid筛选出选中的主菜单 |
| | | let id = param.split('&')[0] |
| | | let _menu = result.data.filter(item => item.MenuID === id)[0] |
| | | let menuId = param.split('&')[0] |
| | | let _menu = result.data.filter(item => item.MenuID === menuId)[0] |
| | | if (!_menu) { |
| | | sessionStorage.removeItem('view_param') |
| | | } |
| | |
| | | } else { |
| | | this.props.modifyMainMenu(result.data[0]) |
| | | } |
| | | |
| | | this.setState({ |
| | | menulist: result.data |
| | | }) |
| | | } |
| | | } |
| | | |
| | |
| | | {this.state.menulist && <ul className="header-menu">{ |
| | | this.state.menulist.map(item => { |
| | | return ( |
| | | <li key={item.id} onClick={() => {this.changeMenu(item)}} className={this.props.selectmenu.id === item.id ? 'active' : ''}> |
| | | <li key={item.MenuID} onClick={() => {this.changeMenu(item)}} className={this.props.selectmenu.MenuID === item.MenuID ? 'active' : ''}> |
| | | {item.MenuName} |
| | | </li> |
| | | ) |
| | |
| | | <div> |
| | | <img src={avatar} alt=""/> |
| | | <span> |
| | | admin <Icon type="down" /> |
| | | {this.state.userName} <Icon type="down" /> |
| | | </span> |
| | | </div> |
| | | </Dropdown> |
| | |
| | | return { |
| | | toggleCollapse: (collapse) => dispatch(toggleCollapse(collapse)), |
| | | modifyMainMenu: (selectmenu) => dispatch(modifyMainMenu(selectmenu)), |
| | | resetState: () => dispatch(resetState()) |
| | | resetState: () => dispatch(resetState()), |
| | | resetDebug: () => dispatch(resetDebug()) |
| | | } |
| | | } |
| | | |