| | |
| | | modifyMainMenu, |
| | | modifyTabview, |
| | | resetState, |
| | | resetDebug, |
| | | resetEditState, |
| | | resetEditLevel, |
| | | initPermission, |
| | |
| | | if (!result) return |
| | | |
| | | if (result.status) { |
| | | if (result.debug === 'true') { // 是否为debug模式,即可复制菜单参数 |
| | | this.props.resetDebug() |
| | | } |
| | | |
| | | let MainMenuId = sessionStorage.getItem('MainMenu') // 是否为打开新页面 |
| | | if (MainMenuId) { |
| | | // 通过url中menuid筛选出选中的主菜单 |
| | |
| | | }), |
| | | systems: result.Systems.filter(sys => sys.LinkUrl1 && sys.AppKey !== window.GLOB.appkey) |
| | | }) |
| | | |
| | | if (result.dataM) { |
| | | this.props.modifyDataManager(true) |
| | | } |
| | | } else { |
| | | notification.error({ |
| | | top: 92, |
| | |
| | | async getRolesMenu () { |
| | | // 获取角色权限 |
| | | let promiseRole = new Promise(resolve => { |
| | | Api.getSystemConfig({func: 'sPC_Get_RolesMenu'}).then(result => { |
| | | let _permAction = {} |
| | | let _permRoles = [] |
| | | if (result && result.status) { |
| | | if (result.UserRoles) { |
| | | result.UserRoles.forEach(role => { |
| | | _permRoles.push(role.RoleID) |
| | | Api.getSystemConfig({func: 's_Get_TrdMenu_Role', edition_type: 'Y'}).then(result => { |
| | | let _permAction = {} // 按钮权限 |
| | | let _permMenus = {} // 菜单权限,字段透视等 |
| | | let menulist = [] // 三级菜单列表 |
| | | |
| | | role.RoleMenu.forEach(menu => { |
| | | if (result && result.status) { |
| | | if (result.UserRoles_Menu) { |
| | | result.UserRoles_Menu.forEach(menu => { |
| | | if (!menu.MenuID) return |
| | | _permAction[menu.MenuID] = true |
| | | }) |
| | | } |
| | | |
| | | if (result.UserRoles) { |
| | | let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt'] |
| | | let menukeys = [] |
| | | |
| | | result.UserRoles.forEach(menu => { |
| | | if (!menu.MenuID) return |
| | | if (menukeys.includes(menu.MenuID)) { |
| | | console.warn('s_Get_TrdMenu_Role重复的菜单ID:' + menu.MenuID) |
| | | return |
| | | } |
| | | _permMenus[menu.MenuID] = true |
| | | |
| | | let _type = '' |
| | | if (menu.LinkUrl === 'CommonTable') { |
| | | _type = 'CommonTable' |
| | | } else if (menu.LinkUrl && iframes.includes(menu.LinkUrl.split('?')[0])) { |
| | | _type = 'iframe' |
| | | } |
| | | |
| | | if (_type !== 'iframe') { |
| | | let pageParam = {} |
| | | try { |
| | | pageParam = JSON.parse(menu.PageParam) |
| | | } catch (e) { |
| | | pageParam = {} |
| | | } |
| | | _type = pageParam.Template || _type |
| | | } |
| | | |
| | | menukeys.push(menu.MenuID) |
| | | |
| | | menulist.push({ |
| | | MenuID: menu.MenuID, |
| | | MenuName: menu.MenuName, |
| | | MenuNo: menu.MenuNo || '', |
| | | EasyCode: menu.EasyCode || '', |
| | | LinkUrl: menu.LinkUrl, |
| | | type: _type |
| | | }) |
| | | }) |
| | | } |
| | | |
| | | this.setState({ |
| | | thdMenuList: menulist |
| | | }) |
| | | |
| | | this.props.initMenuPermission(_permMenus) |
| | | } else if (result) { |
| | | notification.error({ |
| | | top: 92, |
| | |
| | | }) |
| | | } |
| | | |
| | | resolve({permAction: _permAction, permRoles: _permRoles}) |
| | | resolve({permAction: _permAction}) |
| | | }) |
| | | }) |
| | | |
| | |
| | | Api.getSystemConfig(_param).then(result => { |
| | | let mainMenu = null |
| | | if (result && result.status) { |
| | | if (result.debug === 'true') { // 是否为debug模式,即可复制菜单参数 |
| | | this.props.resetDebug() |
| | | } |
| | | |
| | | let MainMenuId = sessionStorage.getItem('MainMenu') // 是否为打开新页面 |
| | | if (MainMenuId) { |
| | | // 通过url中menuid筛选出选中的主菜单 |
| | |
| | | }), |
| | | systems: result.Systems.filter(sys => sys.LinkUrl1 && sys.AppKey !== window.GLOB.appkey) |
| | | }) |
| | | |
| | | if (result.dataM) { |
| | | this.props.modifyDataManager(true) |
| | | } |
| | | } else if (result) { |
| | | notification.error({ |
| | | top: 92, |
| | |
| | | |
| | | let _role = await promiseRole |
| | | |
| | | this.props.initActionPermission(_role.permRoles, _role.permAction) |
| | | this.props.initActionPermission(_role.permAction) |
| | | } |
| | | |
| | | reload = () => { |
| | |
| | | let _userName = sessionStorage.getItem('User_Name') |
| | | let _avatar = avatar |
| | | |
| | | if (sessionStorage.getItem('cloudDataM') === 'true') { |
| | | this.props.modifyDataManager(true) |
| | | } |
| | | if (!state && sessionStorage.getItem('avatar')) { |
| | | _avatar = Utils.getrealurl(sessionStorage.getItem('avatar')) // 头像 |
| | | } else if (state && sessionStorage.getItem('CloudAvatar')) { |
| | |
| | | sessionStorage.setItem('CloudFullName', res.FullName) |
| | | sessionStorage.setItem('CloudAvatar', res.icon) |
| | | sessionStorage.setItem('isEditState', 'true') |
| | | sessionStorage.setItem('cloudDataM', res.dataM ? 'true' : '') |
| | | |
| | | let _avatar = avatar |
| | | if (res.icon) { |
| | | _avatar = Utils.getrealurl(res.icon) // 头像 |
| | | } |
| | | |
| | | if (res.dataM) { |
| | | this.props.modifyDataManager(true) |
| | | } |
| | | |
| | | if (window.GLOB.systemType === 'production') { |
| | |
| | | _avatar = Utils.getrealurl(_avatar) // 头像 |
| | | this.setState({avatar: _avatar}) |
| | | } |
| | | |
| | | this.getRolesMenu() |
| | | } |
| | | |
| | | componentDidMount () { |
| | | // 获取角色菜单权限 |
| | | Api.getSystemConfig({func: 's_Get_TrdMenu_Role'}).then(result => { |
| | | if (!result) return |
| | | if (result.status) { |
| | | let _permMenus = {} |
| | | let menulist = [] |
| | | |
| | | if (result.UserRoles) { |
| | | let iframes = ['Main/Index', 'bda/rdt', 'Home/rdt'] |
| | | let menukeys = [] |
| | | |
| | | result.UserRoles.forEach(role => { |
| | | role.RoleMenu.forEach(menu => { |
| | | if (!menu.MenuID) return |
| | | if (menukeys.includes(menu.MenuID)) { |
| | | console.warn('s_Get_TrdMenu_Role重复的菜单ID:' + menu.MenuID) |
| | | return |
| | | } |
| | | _permMenus[menu.MenuID] = true |
| | | |
| | | let _type = '' |
| | | if (menu.LinkUrl === 'CommonTable') { |
| | | _type = 'CommonTable' |
| | | } else if (menu.LinkUrl && iframes.includes(menu.LinkUrl.split('?')[0])) { |
| | | _type = 'iframe' |
| | | } |
| | | |
| | | if (_type !== 'iframe') { |
| | | let pageParam = {} |
| | | try { |
| | | pageParam = JSON.parse(menu.PageParam) |
| | | } catch (e) { |
| | | pageParam = {} |
| | | } |
| | | _type = pageParam.Template || _type |
| | | } |
| | | |
| | | menukeys.push(menu.MenuID) |
| | | |
| | | menulist.push({ |
| | | MenuID: menu.MenuID, |
| | | MenuName: menu.MenuName, |
| | | MenuNo: menu.MenuNo || '', |
| | | EasyCode: menu.EasyCode || '', |
| | | LinkUrl: menu.LinkUrl, |
| | | type: _type |
| | | }) |
| | | }) |
| | | }) |
| | | } |
| | | |
| | | this.setState({ |
| | | thdMenuList: menulist |
| | | }) |
| | | |
| | | this.props.initMenuPermission(_permMenus) |
| | | } else { |
| | | notification.error({ |
| | | top: 92, |
| | | message: result.message, |
| | | duration: 10 |
| | | }) |
| | | } |
| | | }) |
| | | |
| | | // 获取系统的版本信息 |
| | | // 获取系统的版本信息,延时查询 |
| | | setTimeout(() => { |
| | | new Promise((resolve, reject) => { |
| | | Api.getAppVersion(resolve, reject) |
| | | }).then(res => { |
| | |
| | | newVersion: res.newVersion |
| | | }) |
| | | }) |
| | | }, 1000) |
| | | } |
| | | |
| | | shouldComponentUpdate (nextProps, nextState) { |
| | |
| | | modifyMainMenu: (selectmenu) => dispatch(modifyMainMenu(selectmenu)), |
| | | resetEditState: (state) => dispatch(resetEditState(state)), |
| | | resetEditLevel: (level) => dispatch(resetEditLevel(level)), |
| | | initActionPermission: (permRoles, permAction) => dispatch(initActionPermission(permRoles, permAction)), |
| | | initActionPermission: (permAction) => dispatch(initActionPermission(permAction)), |
| | | initPermission: (sysRoles, permFuncField) => dispatch(initPermission(sysRoles, permFuncField)), |
| | | initMenuPermission: (permMenus) => dispatch(initMenuPermission(permMenus)), |
| | | modifyDataManager: (dataManager) => dispatch(modifyDataManager(dataManager)), |
| | | resetState: () => dispatch(resetState()), |
| | | resetDebug: () => dispatch(resetDebug()), |
| | | logout: () => dispatch(logout()) |
| | | } |
| | | } |