From e9c48bd7356462ba9257540b130a47a65ad1861d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 26 八月 2021 17:17:11 +0800 Subject: [PATCH] 2021-08-26 --- src/components/tabview/index.jsx | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 51 insertions(+), 5 deletions(-) diff --git a/src/components/tabview/index.jsx b/src/components/tabview/index.jsx index a9ebd63..cab23a1 100644 --- a/src/components/tabview/index.jsx +++ b/src/components/tabview/index.jsx @@ -2,18 +2,18 @@ import PropTypes from 'prop-types' import {connect} from 'react-redux' import { is, fromJS } from 'immutable' -import {Tabs, Icon, BackTop} from 'antd' +import {Tabs, Icon, BackTop, notification} from 'antd' import moment from 'moment' import 'moment/locale/zh-cn' -import { modifyTabview, toggleIsiframe } from '@/store/action' +import { modifyTabview, toggleIsiframe, initActionPermission } from '@/store/action' import asyncComponent from '@/utils/asyncLoadComponent' import NotFount from '@/components/404' -// import options from '@/store/options.js' +import options from '@/store/options.js' import mzhCN from '@/locales/zh-CN/main.js' import menUS from '@/locales/en-US/main.js' import MKEmitter from '@/utils/events.js' - +import Api from '@/api' import './index.scss' const Home = asyncComponent(() => import('@/tabviews/home')) @@ -75,7 +75,52 @@ e.stopPropagation() window.GLOB.CacheMap = new Map() - MKEmitter.emit('reloadMenuView', menu.MenuID) + if (options.sysType === 'local' && window.GLOB.systemType !== 'production') { + let roledefer = new Promise(resolve => { + Api.getSystemConfig({ + func: 's_Get_TrdMenu_Role', + edition_type: 'A', + pro_sys: '' + }).then(result => { + if (!result) return + if (!result.status) { + notification.error({ + top: 92, + message: result.message, + duration: 10 + }) + } else { + let _permAction = {loaded: true} // 鎸夐挳鏉冮檺 + + if (result.UserRoles_Menu) { + result.UserRoles_Menu.forEach(menu => { + if (!menu.MenuID) return + _permAction[menu.MenuID] = true + }) + } + + this.props.initActionPermission(_permAction) + } + + resolve() + }) + }) + + // 鑾峰彇涓昏彍鍗曞弬鏁� + let menudefer = new Promise(resolve => { + Api.getAppVersion().then(() => { + resolve() + }, () => { + resolve() + }) + }) + + Promise.all([roledefer, menudefer]).then(() => { + MKEmitter.emit('reloadMenuView', menu.MenuID) + }) + } else { + MKEmitter.emit('reloadMenuView', menu.MenuID) + } } changeTab = (e, menu) => { @@ -269,6 +314,7 @@ const mapDispatchToProps = (dispatch) => { return { modifyTabview: (tabviews) => dispatch(modifyTabview(tabviews)), + initActionPermission: (permAction) => dispatch(initActionPermission(permAction)), toggleIsiframe: (isiframe) => dispatch(toggleIsiframe(isiframe)) } } -- Gitblit v1.8.0