| | |
| | | import axios from 'axios' |
| | | import qs from 'qs' |
| | | import {notification } from 'antd' |
| | | // import md5 from 'md5' |
| | | // import Utils from '@/utils/utils.js' |
| | | import options from '@/store/options.js' |
| | | |
| | | // axios.defaults.baseURL = 'http://qingqiumarket.cn' |
| | | axios.defaults.crossDomain = true |
| | | // axios.defaults.headers.common['token'] = 'token' |
| | | axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' |
| | | axios.defaults.withCredentials = true |
| | | |
| | |
| | | } else if (config.url.includes('Upload')) { |
| | | config.headers = { 'Content-Type': 'multipart/form-data' } |
| | | } else { |
| | | config.headers.token = sessionStorage.getItem('TOKEN') || '' |
| | | // config.headers.token = sessionStorage.getItem('TOKEN') || '' |
| | | config.data = JSON.stringify(config.data) |
| | | } |
| | | |
| | |
| | | param.rduri = window.GLOB.mainSystemApi |
| | | } |
| | | |
| | | // param.nonc = Utils.getuuid() |
| | | // param._ = new Date().getTime() |
| | | |
| | | // let keys = Object.keys(param).sort() |
| | | // let values = keys.map(key => key + param[key]).join('') |
| | | // param.sign = md5(values) |
| | | |
| | | return axios({ |
| | | url: '/webapi/dostar', |
| | | data: param |
| | |
| | | logourl: window.GLOB.mainlogo || logourl, |
| | | loginVisible: false, |
| | | loginLoading: false, |
| | | avatar: avatar, |
| | | systems: [] |
| | | } |
| | | |
| | |
| | | // 获取主菜单 |
| | | let result = await Api.getSystemConfig({func: 'sPC_Get_MainMenu'}) |
| | | if (result.status) { |
| | | 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) { |
| | | let MainMenuId = sessionStorage.getItem('MainMenu') // 是否为打开新页面 |
| | | if (MainMenuId) { |
| | | // 通过url中menuid筛选出选中的主菜单 |
| | | let menuId = param.split('&')[0] |
| | | let _menu = result.data.filter(item => item.MenuID === menuId)[0] |
| | | if (!_menu) { |
| | | sessionStorage.removeItem('view_param') |
| | | } |
| | | let _menu = result.data.filter(item => item.MenuID === MainMenuId)[0] |
| | | sessionStorage.removeItem('MainMenu') |
| | | this.props.modifyMainMenu(_menu || result.data[0]) |
| | | } else { |
| | | this.props.modifyMainMenu(result.data[0]) |
| | |
| | | } |
| | | |
| | | changeSystem = (system) => { |
| | | console.log(system) |
| | | let _param = window.btoa('ud=' + sessionStorage.getItem('UserID') + '&sd=' + sessionStorage.getItem('SessionUid') + '&ld=' + sessionStorage.getItem('LoginUID') + '&un=' + sessionStorage.getItem('User_Name')) |
| | | window.location.href = system.LinkUrl1 + '#/ssologin/' + _param |
| | | } |
| | | |
| | | UNSAFE_componentWillMount () { |
| | | // 组件加载时,获取菜单数据 |
| | | let _avatar = sessionStorage.getItem('avatar') |
| | | if (_avatar) { |
| | | _avatar = Utils.getrealurl(_avatar) // 头像 |
| | | this.setState({avatar: _avatar}) |
| | | } |
| | | this.loadmenu() |
| | | } |
| | | |
| | |
| | | <Switch size="small" className="edit-switch" disabled={!!this.props.editLevel} checked={this.props.editState} onChange={this.changeEditState} /> |
| | | </Menu.Item>} |
| | | {!this.props.editState ? <Menu.Item key="1" onClick={this.changePassword}>{this.state.dict['header.password']}</Menu.Item> : null} |
| | | <Menu.SubMenu title="切换系统"> |
| | | {this.state.systems.length > 0 ? <Menu.SubMenu title="切换系统"> |
| | | {this.state.systems.map((system, index) => ( |
| | | <Menu.Item className="header-subSystem" key={'sub' + index} onClick={() => {this.changeSystem(system)}}> {system.AppName} </Menu.Item> |
| | | ))} |
| | | </Menu.SubMenu> |
| | | </Menu.SubMenu> : null} |
| | | <Menu.Item key="2" onClick={this.logout}>{this.state.dict['header.logout']}</Menu.Item> |
| | | </Menu> |
| | | ) |
| | |
| | | {/* 头像、用户名 */} |
| | | <Dropdown className="header-setting" overlay={menu}> |
| | | <div> |
| | | <img src={avatar} alt=""/> |
| | | <img src={this.state.avatar} alt=""/> |
| | | <span> |
| | | <span className="username">{this.state.userName}</span> <Icon type="down" /> |
| | | </span> |
| | |
| | | line-height: 48px; |
| | | margin-right: 10px; |
| | | img { |
| | | width: 29px; |
| | | height: 29px; |
| | | border-radius: 30px; |
| | | margin-right: 7px; |
| | | } |
| | |
| | | return |
| | | } |
| | | |
| | | let param = sessionStorage.getItem('view_param') // 是否为打开新页面 |
| | | let msg = sessionStorage.getItem('UserID') + '&' + sessionStorage.getItem('SessionUid') + '&' + sessionStorage.getItem('LoginUID') |
| | | let SubMenuId = sessionStorage.getItem('SubMenu') // 是否为打开新页面 |
| | | let ThirdMenuId = sessionStorage.getItem('ThirdMenu') // 是否为打开新页面 |
| | | let msg = sessionStorage.getItem('UserID') + '&sd=' + sessionStorage.getItem('SessionUid') + '&ld=' + sessionStorage.getItem('LoginUID') + '&un=' + sessionStorage.getItem('User_Name') |
| | | let submenuId = '' // 展开二级菜单ID |
| | | let tabId = '' // 打开的tab页id |
| | | |
| | | if (param) { |
| | | param = param.split('&') |
| | | submenuId = param[1] |
| | | let submenu = result.data.filter(item => item.ParentID === submenuId)[0] |
| | | if (SubMenuId && ThirdMenuId) { |
| | | submenuId = SubMenuId |
| | | let submenu = result.data.filter(item => item.ParentID === SubMenuId)[0] |
| | | |
| | | if (!submenu) { |
| | | submenuId = '' |
| | | } else { |
| | | tabId = param[2] |
| | | let tabmenu = submenu.FunMenu.filter(item => item.MenuID === tabId)[0] |
| | | tabId = ThirdMenuId |
| | | let tabmenu = submenu.FunMenu.filter(item => item.MenuID === ThirdMenuId)[0] |
| | | if (!tabmenu) { |
| | | submenuId = '' |
| | | tabId = '' |
| | | } |
| | | } |
| | | sessionStorage.removeItem('view_param') |
| | | sessionStorage.removeItem('SubMenu') |
| | | sessionStorage.removeItem('ThirdMenu') |
| | | } |
| | | let parentID = submenuId ? submenuId : result.data[0].ParentID // 展开二级菜单ID |
| | | |
| | |
| | | if (item.FunMenu) { |
| | | _smenu.children = item.FunMenu.map((child, n) => { |
| | | let _tmenu = {} |
| | | let _msg = window.btoa(menu.MenuID + '&' + _smenu.MenuID + '&' + child.MenuID + '&' + msg) // 待完善 |
| | | let _msg = window.btoa('mm=' + menu.MenuID + '&sm=' + _smenu.MenuID + '&tm=' + child.MenuID + '&ud=' + msg) // 待完善 |
| | | _tmenu.src = '#/main/' + _msg |
| | | if (child.LinkUrl === 'CommonTable') { |
| | | _tmenu.type = 'CommonTable' |
| | |
| | | if (tabId) { |
| | | let _menu = menulist.filter(menu => menu.MenuID === submenuId)[0] |
| | | let opentab = _menu && _menu.children.filter(tab => tab.MenuID === tabId)[0] |
| | | |
| | | if (opentab) { |
| | | opentab.selected = true |
| | | this.props.modifyTabview([opentab]) |
| | | let home = this.props.tabviews[0] |
| | | home.selected = false |
| | | this.props.modifyTabview([home, opentab]) |
| | | } |
| | | } |
| | | } else { |
| | |
| | | |
| | | const routers = [ |
| | | {path: '/login', name: 'login', component: login, auth: false}, |
| | | {path: '/ssologin/:param', name: 'ssologin', auth: true}, |
| | | {path: '/main', name: 'main', component: main, auth: true}, |
| | | {path: '/main/:param', name: 'pmain', component: main, auth: true} |
| | | ] |
| | |
| | | |
| | | if (item.name === 'pmain') { // 新窗口打开,取url参数放入sessionStorage |
| | | let _param = window.atob(props.match.params.param) |
| | | sessionStorage.setItem('view_param', _param) |
| | | let p = {} |
| | | _param.split('&').forEach(cell => { |
| | | let _cell = cell.split('=') |
| | | p[_cell[0]] = _cell[1] |
| | | }) |
| | | sessionStorage.setItem('UserID', p.ud) |
| | | sessionStorage.setItem('SessionUid', p.sd) |
| | | sessionStorage.setItem('LoginUID', p.ld) |
| | | sessionStorage.setItem('User_Name', p.un) |
| | | sessionStorage.setItem('MainMenu', p.mm) |
| | | sessionStorage.setItem('SubMenu', p.sm) |
| | | sessionStorage.setItem('ThirdMenu', p.tm) |
| | | |
| | | return (<item.component {...props}/>) |
| | | } else if (item.name === 'ssologin') { |
| | | let _param = window.atob(props.match.params.param) |
| | | let p = {} |
| | | _param.split('&').forEach(cell => { |
| | | let _cell = cell.split('=') |
| | | p[_cell[0]] = _cell[1] |
| | | }) |
| | | sessionStorage.setItem('UserID', p.ud) |
| | | sessionStorage.setItem('SessionUid', p.sd) |
| | | sessionStorage.setItem('LoginUID', p.ld) |
| | | sessionStorage.setItem('User_Name', p.un) |
| | | |
| | | return (<Redirect to={{ pathname: '/main'}}/>) |
| | | } |
| | | |
| | |
| | | if (userId && isauth) { |
| | | return (<item.component {...props}/>) |
| | | } else { |
| | | let param = sessionStorage.getItem('view_param') |
| | | if (param) { |
| | | param = param.split('&') |
| | | sessionStorage.setItem('UserID', param[3]) |
| | | sessionStorage.setItem('SessionUid', param[4]) |
| | | sessionStorage.setItem('LoginUID', param[5]) |
| | | return (<item.component {...props}/>) |
| | | } else { |
| | | return (<Redirect to={{ pathname: '/login', state: {from: props.location}}}/>) |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | param[setting.primaryKey] = ids.join(',') |
| | | } |
| | | |
| | | if (btn.OpenType === 'pop' && formdata) { // 表单 |
| | | formdata.forEach(_data => { |
| | | param[_data.key] = _data.value |
| | | }) |
| | | } |
| | | |
| | | new Promise(resolve => { |
| | | // 内部请求 |
| | | if (btn.innerFunc) { |
| | |
| | | sessionStorage.setItem('SessionUid', Utils.getuuid()) |
| | | sessionStorage.setItem('LoginUID', res.LoginUID) |
| | | sessionStorage.setItem('User_Name', res.UserName) |
| | | sessionStorage.setItem('avatar', res.icon) |
| | | |
| | | localStorage.setItem('lang', param.lang) |
| | | |
| | |
| | | <Input |
| | | prefix={<Icon type="user" style={{ color: 'rgba(0,0,0,.25)' }} />} |
| | | placeholder={this.props.dict['login.username']} |
| | | autoComplete="off" |
| | | />, |
| | | )} |
| | | </Form.Item> |