| | |
| | | import React, {Component} from 'react' |
| | | import { withRouter } from 'react-router-dom' |
| | | import PropTypes from 'prop-types' |
| | | import {connect} from 'react-redux' |
| | | import { connect } from 'react-redux' |
| | | import { is, fromJS } from 'immutable' |
| | | import { Menu, Icon, notification } from 'antd' |
| | | |
| | |
| | | |
| | | let SubMenuId = sessionStorage.getItem('SubMenu') // 是否为打开新页面 |
| | | let ThirdMenuId = sessionStorage.getItem('ThirdMenu') // 是否为打开新页面 |
| | | let msg = sessionStorage.getItem('UserID') + '&ld=' + sessionStorage.getItem('LoginUID') + '&un=' + sessionStorage.getItem('User_Name') + '&mlogo=' + window.GLOB.mainlogo + '&mstyle=' + window.GLOB.style |
| | | let submenuId = '' // 展开二级菜单ID |
| | | let tabId = '' // 打开的tab页id |
| | | let msg = { |
| | | UserID: sessionStorage.getItem('UserID'), |
| | | LoginUID: sessionStorage.getItem('LoginUID'), |
| | | User_Name: sessionStorage.getItem('User_Name'), |
| | | mainlogo: window.GLOB.mainlogo, |
| | | mstyle: window.GLOB.style, |
| | | MainMenu: menu.MenuID |
| | | } |
| | | |
| | | if (SubMenuId && ThirdMenuId) { |
| | | submenuId = SubMenuId |
| | |
| | | if (item.FunMenu) { |
| | | _smenu.children = item.FunMenu.map(child => { |
| | | let _tmenu = { |
| | | ParentId: item.ParentID |
| | | ParentId: item.ParentID, |
| | | OpenType: 'newtab' |
| | | } |
| | | |
| | | // 打开新页面链接 |
| | | _tmenu.src = '#/paramsmain/' + window.btoa('mm=' + menu.MenuID + '&sm=' + _smenu.MenuID + '&tm=' + child.MenuID + '&ud=' + msg) |
| | | |
| | | if (child.LinkUrl === 'CommonTable') { |
| | | _tmenu.type = 'CommonTable' |
| | |
| | | _tmenu.PageParam = {OpenType: 'newtab'} |
| | | } |
| | | _tmenu.type = _tmenu.PageParam.Template || _tmenu.type |
| | | _tmenu.OpenType = _tmenu.PageParam.OpenType |
| | | } |
| | | |
| | | if (_tmenu.type === 'NewPage') { |
| | | _tmenu.src = _tmenu.PageParam.url |
| | | if (this.props.memberLevel < 20) { // 会员等级大于等于20时,有编辑权限 |
| | | _tmenu.forbidden = true |
| | | } |
| | | if (_tmenu.src.indexOf('paramsmain/') > -1) { |
| | | try { |
| | | let _url = _tmenu.src.split('paramsmain/')[0] + 'paramsmain/' |
| | | let _param = JSON.parse(window.decodeURIComponent(window.atob(_tmenu.src.split('paramsmain/')[1]))) |
| | | _param.UserID = sessionStorage.getItem('UserID') |
| | | _param.LoginUID = sessionStorage.getItem('LoginUID') |
| | | _param.User_Name = sessionStorage.getItem('User_Name') |
| | | _tmenu.src = _url + window.btoa(window.encodeURIComponent(JSON.stringify(_param))) |
| | | } catch { |
| | | console.warn('菜单参数解析错误!') |
| | | } |
| | | } |
| | | } else { |
| | | _tmenu.LinkUrl = child.LinkUrl |
| | | // 打开新页面链接 |
| | | _tmenu.src = '#/paramsmain/' + window.btoa(window.encodeURIComponent(JSON.stringify({ |
| | | ...msg, |
| | | SubMenu: _smenu.MenuID, |
| | | ThirdMenu: child.MenuID |
| | | }))) |
| | | } |
| | | |
| | | _tmenu.id = child.MenuID |
| | |
| | | _tmenu.MenuNo = child.MenuNo |
| | | _tmenu.MenuName = child.MenuName |
| | | _tmenu.text = child.MenuName |
| | | _tmenu.OpenType = _tmenu.PageParam ? _tmenu.PageParam.OpenType : 'newtab' |
| | | return _tmenu |
| | | }) |
| | | } |
| | |
| | | let _menu = menulist.filter(menu => menu.MenuID === submenuId)[0] |
| | | let opentab = _menu && _menu.children.filter(tab => tab.MenuID === tabId)[0] |
| | | if (opentab) { |
| | | if (sessionStorage.getItem('MenuParam')) { |
| | | try { |
| | | let thParam = JSON.parse(sessionStorage.getItem('MenuParam')) |
| | | |
| | | if (tabId === thParam.ThirdMenu) { |
| | | delete thParam.ThirdMenu |
| | | opentab.param = thParam |
| | | } |
| | | } catch { |
| | | console.warn('菜单参数解析错误!') |
| | | } |
| | | sessionStorage.removeItem('MenuParam') |
| | | } |
| | | |
| | | opentab.selected = true |
| | | let home = this.props.tabviews[0] |
| | | home.selected = false |
| | |
| | | let menu = JSON.parse(e.target.dataset.item) |
| | | |
| | | if (menu.OpenType === 'newpage') { |
| | | e.preventDefault() |
| | | window.open(menu.src) |
| | | } else if (menu.OpenType === 'NewPage') { |
| | | e.preventDefault() |
| | | window.open(menu.src) |
| | | } else if (menu.OpenType === 'blank') { |
| | |
| | | collapse: state.collapse, |
| | | isiframe: state.isiframe, |
| | | mainMenu: state.selectedMainMenu, |
| | | memberLevel: state.memberLevel, |
| | | editState: state.editState, |
| | | editLevel: state.editLevel |
| | | } |