From 31ec63f0419895876cbaba99637a884a32d33d0d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 01 九月 2021 10:31:45 +0800 Subject: [PATCH] 2021-09-01 --- src/views/pcdesign/index.jsx | 89 ++++++++++++++++++++++++++++++-------------- 1 files changed, 60 insertions(+), 29 deletions(-) diff --git a/src/views/pcdesign/index.jsx b/src/views/pcdesign/index.jsx index 080744b..3b64363 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 // 淇濆瓨鑿滃崟淇℃伅 @@ -98,7 +99,7 @@ this.getMenuParam(param) }) } - } catch { + } catch (e) { notification.warning({ top: 92, message: '鑿滃崟淇℃伅瑙f瀽閿欒锛�', @@ -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) => { @@ -324,6 +333,23 @@ }) } }) + Api.getSystemConfig({ + func: 's_url_db_adduptdel', + PageIndex: 0, // 0 浠h〃鍏ㄩ儴 + PageSize: 0, // 0 浠h〃鍏ㄩ儴 + typecharone: 'color', + type: 'search' + }).then(res => { + if (res.status) { + sessionStorage.setItem('app_colors', JSON.stringify(res.data || [])) + } else if (!res.status) { + notification.warning({ + top: 92, + message: res.message, + duration: 5 + }) + } + }) }) } @@ -402,12 +428,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 +586,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 +764,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 +857,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 +889,6 @@ }) }) } - - if (m.children.length === 0) return null return m }) @@ -1294,12 +1327,7 @@ delButtons: [], copyButtons: [], thawButtons: [], - menuloading: false, - comloading: true - }, () => { - this.setState({ - comloading: false - }) + menuloading: false }) notification.success({ top: 92, @@ -1311,6 +1339,7 @@ menuloading: false }) } + MKEmitter.emit('completeSave') }) }, 300) } @@ -1570,19 +1599,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