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/views/pcdesign/index.jsx | 72 +++++++++++++++++++++-------------- 1 files changed, 43 insertions(+), 29 deletions(-) diff --git a/src/views/pcdesign/index.jsx b/src/views/pcdesign/index.jsx index bde0d56..b54bdbc 100644 --- a/src/views/pcdesign/index.jsx +++ b/src/views/pcdesign/index.jsx @@ -47,6 +47,7 @@ sessionStorage.setItem('typename', 'pc') document.body.className = '' window.GLOB.UserComponentMap = new Map() // 缂撳瓨鐢ㄦ埛鑷畾涔夌粍浠� +window.GLOB.TabsMap = new Map() // 缂撳瓨鐢ㄦ埛鎿嶄綔鐨勬爣绛鹃〉 window.GLOB.CacheIndependent = new Map() window.GLOB.urlFields = [] // url鍙橀噺 window.GLOB.customMenu = null // 淇濆瓨鑿滃崟淇℃伅 @@ -127,6 +128,7 @@ MKEmitter.addListener('copyButtons', this.copyButtons) MKEmitter.addListener('changePopview', this.initPopview) MKEmitter.addListener('changeEditMenu', this.changeEditMenu) + MKEmitter.addListener('triggerMenuSave', this.triggerMenuSave) MKEmitter.addListener('submitComponentStyle', this.updateComponentStyle) MKEmitter.addListener('updateCustomComponent', this.updateCustomComponent) setTimeout(() => { @@ -149,8 +151,15 @@ MKEmitter.removeListener('copyButtons', this.copyButtons) MKEmitter.removeListener('changePopview', this.initPopview) MKEmitter.removeListener('changeEditMenu', this.changeEditMenu) + MKEmitter.removeListener('triggerMenuSave', this.triggerMenuSave) MKEmitter.removeListener('submitComponentStyle', this.updateComponentStyle) MKEmitter.removeListener('updateCustomComponent', this.updateCustomComponent) + } + + triggerMenuSave = () => { + if (this.state.visible) return + + this.submitConfig() } changeEditMenu = (menu) => { @@ -402,12 +411,7 @@ } delButtons = (items) => { - const { copyButtons, delButtons } = this.state - - this.setState({ - delButtons: [...delButtons, ...items], - copyButtons: copyButtons.filter(item => !items.includes(item.uuid)) - }) + this.setState({ delButtons: [...this.state.delButtons, ...items] }) } copyButtons = (items) => { @@ -565,6 +569,11 @@ appIndeList = appIndeList.map(item => (item.keys_type !== 'index' ? item.keys_id : '')).join(',') let menus = res.menus.filter(item => appIndeList.indexOf(item.MenuID) === -1) + menus = menus.map(item => { + item.value = item.MenuID + item.label = item.MenuName + return item + }) sessionStorage.setItem('appMenus', JSON.stringify(menus)) }) } @@ -738,7 +747,9 @@ title: item.name, children: [] } - if (item.type === 'tabs') { + if (item.type === 'login') { + return null + } else if (item.type === 'tabs') { let tabs = [] item.subtabs.forEach(tab => { let s = traversal(tab.components) @@ -829,6 +840,13 @@ title: menu.setting.name } }) + } else if (item.type === 'form') { + m.children = item.subcards.map(m => { + return { + key: m.uuid, + title: m.setting.title + } + }) } else if (item.type === 'table' && item.subtype === 'normaltable') { item.action && item.action.forEach(btn => { this.checkBtn(btn) @@ -854,8 +872,6 @@ }) }) } - - if (m.children.length === 0) return null return m }) @@ -1294,12 +1310,7 @@ delButtons: [], copyButtons: [], thawButtons: [], - menuloading: false, - comloading: true - }, () => { - this.setState({ - comloading: false - }) + menuloading: false }) notification.success({ top: 92, @@ -1311,6 +1322,7 @@ menuloading: false }) } + MKEmitter.emit('completeSave') }) }, 300) } @@ -1375,7 +1387,7 @@ check(item.components) return } - if (['propcard', 'brafteditor', 'sandbox', 'stepform'].includes(item.subtype) && item.wrap.datatype === 'static') return + if (['propcard', 'brafteditor', 'sandbox', 'stepform', 'tabform'].includes(item.subtype) && item.wrap.datatype === 'static') return if (['balcony'].includes(item.type) && item.wrap.datatype === 'static') return if (item.setting) { @@ -1570,19 +1582,21 @@ {controlshow ? <Icon onClick={() => {sessionStorage.setItem('controlshow', 'false'); this.setState({controlshow: false})}} type="double-right" /> : null} {!controlshow ? <Icon onClick={() => {sessionStorage.setItem('controlshow', 'true'); this.setState({controlshow: true})}} type="double-left" /> : null} </div> - <Button type="primary" onClick={this.submitConfig} loading={menuloading}>{dict['mob.save']}</Button> - <Switch className="big" checkedChildren={dict['mob.enable']} unCheckedChildren={dict['mob.disable']} checked={config && config.enabled} onChange={this.onEnabledChange} /> - <CreateView resetmenu={this.getAppMenus} /> - <PasteController type="menu" Tab={null} insert={this.insert} /> - <StyleCombControlButton menu={config} /> - <SysInterface config={config} updateConfig={this.updateConfig}/> - <PictureController/> - <Quotecomponent config={config} updateConfig={this.updateConfig}/> - <Button className="mk-border-green" icon="home" onClick={this.setHomeView}>璁句负棣栭〉</Button> - <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>寮哄埗鍒锋柊</Button> - <ReplaceField type="custom" config={config} updateConfig={this.resetConfig}/> - <Transfer MenuID={MenuId} /> - <Button type="default" onClick={this.closeView}>鍏抽棴</Button> + <div className="wrap"> + <Button type="primary" onClick={this.submitConfig} loading={menuloading}>{dict['mob.save']}</Button> + <Switch className="big" checkedChildren={dict['mob.enable']} unCheckedChildren={dict['mob.disable']} checked={config && config.enabled} onChange={this.onEnabledChange} /> + <CreateView resetmenu={this.getAppMenus} /> + <PasteController type="menu" Tab={null} insert={this.insert} /> + <StyleCombControlButton menu={config} /> + <SysInterface config={config} updateConfig={this.updateConfig}/> + <PictureController/> + <Quotecomponent config={config} updateConfig={this.updateConfig}/> + <Button className="mk-border-green" icon="home" onClick={this.setHomeView}>璁句负棣栭〉</Button> + <Button className="mk-border-danger" icon="redo" onClick={this.refreshView}>寮哄埗鍒锋柊</Button> + <ReplaceField type="custom" config={config} updateConfig={this.resetConfig}/> + <Transfer MenuID={MenuId} /> + <Button type="default" onClick={this.closeView}>鍏抽棴</Button> + </div> </div> <div className={'menu-body menu-view' + (menuloading ? 'saving' : '')}> {config && !comloading ? <MenuShell menu={config} handleList={this.updateConfig} /> : null} -- Gitblit v1.8.0