| | |
| | | curuuid: uuid, |
| | | Template: 'Modal' |
| | | }) |
| | | } else if (item.OpenType === 'tab' && item.tabTemplate === 'FormTab') { // 含有子配置项的按钮(标签页打开) |
| | | _oriActions.push({ |
| | | prebtn: fromJS(item).toJS(), |
| | | curuuid: uuid, |
| | | Template: 'FormTab' |
| | | }) |
| | | } |
| | | |
| | | item.uuid = uuid |
| | |
| | | let curBtn = config.action.filter(cell => item.curuuid === cell.uuid)[0] // 查看初始化按钮是否存在 |
| | | if (!curBtn) return |
| | | if (curBtn.OpenType !== item.prebtn.OpenType) return |
| | | if (curBtn.OpenType === 'tab' && curBtn.tabTemplate !== 'FormTab') return |
| | | if (curBtn.OpenType === 'funcbutton' && curBtn.execMode !== 'pop') return |
| | | |
| | | oriActions.push({ |
| | |
| | | MenuID: action.prebtn.uuid |
| | | }).then(result => { |
| | | if (result.status && result.LongParam) { |
| | | let _LongParam = '' |
| | | let _temp = '' |
| | | |
| | | if (result.LongParam) { |
| | | let _subconfig = '' |
| | | try { |
| | | _subconfig = JSON.parse(window.decodeURIComponent(window.atob(result.LongParam))) |
| | | _temp = _subconfig.type |
| | | } catch (e) { |
| | | console.warn('Parse Failure') |
| | | _subconfig = '' |
| | | } |
| | | |
| | | if (_temp === 'FormTab') { |
| | | try { |
| | | _subconfig.action = _subconfig.action.map(_btn => { |
| | | _btn.uuid = Utils.getuuid() |
| | | |
| | | return _btn |
| | | }) |
| | | |
| | | // 兼容已有结构 |
| | | if (!_subconfig.tabgroups) { |
| | | _subconfig.tabgroups = [{ uuid: 'tabs', sublist: [] }] |
| | | } else if (typeof(_subconfig.tabgroups[0]) === 'string') { |
| | | let _tabgroups = [] |
| | | _subconfig.tabgroups.forEach(groupId => { |
| | | let _group = { |
| | | uuid: groupId, |
| | | sublist: fromJS(_subconfig[groupId]).toJS() |
| | | } |
| | | delete _subconfig[groupId] |
| | | _tabgroups.push(_group) |
| | | }) |
| | | _subconfig.tabgroups = _tabgroups |
| | | } |
| | | |
| | | _subconfig.tabgroups.forEach(group => { |
| | | group.sublist = group.sublist.map(_tab => { |
| | | _tab.uuid = Utils.getuuid() |
| | | _tab.linkTab = Utils.getuuid() |
| | | |
| | | return _tab |
| | | }) |
| | | }) |
| | | _subconfig = window.btoa(window.encodeURIComponent(JSON.stringify(_subconfig))) |
| | | } catch (e) { |
| | | console.warn('Stringify Failure') |
| | | _subconfig = '' |
| | | } |
| | | |
| | | _LongParam = _subconfig |
| | | } else if (_subconfig) { |
| | | _LongParam = result.LongParam |
| | | } |
| | | let _subconfig = '' |
| | | try { |
| | | _subconfig = JSON.parse(window.decodeURIComponent(window.atob(result.LongParam))) |
| | | _temp = _subconfig.type |
| | | } catch (e) { |
| | | console.warn('Parse Failure') |
| | | _subconfig = '' |
| | | } |
| | | |
| | | if (_LongParam) { |
| | | let param = { |
| | | func: 'sPC_ButtonParam_AddUpt', |
| | | ParentID: this.props.menu.MenuID, |
| | | MenuID: action.curBtn.uuid, |
| | | MenuNo: config.MenuNo, |
| | | Template: _temp, |
| | | MenuName: action.curBtn.label, |
| | | PageParam: JSON.stringify({Template: _temp}), |
| | | LongParam: _LongParam |
| | | } |
| | | Api.getSystemConfig(param).then(() => {}) |
| | | if (!_subconfig) return |
| | | |
| | | let param = { |
| | | func: 'sPC_ButtonParam_AddUpt', |
| | | ParentID: this.props.menu.MenuID, |
| | | MenuID: action.curBtn.uuid, |
| | | MenuNo: config.MenuNo, |
| | | Template: _temp, |
| | | MenuName: action.curBtn.label, |
| | | PageParam: JSON.stringify({Template: _temp}), |
| | | LongParam: result.LongParam |
| | | } |
| | | Api.getSystemConfig(param).then(() => {}) |
| | | } |
| | | }) |
| | | }) |