From 8d66ff34fae5b048a6b7923cc75d34f13a08be9d Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 02 八月 2022 11:42:43 +0800 Subject: [PATCH] Merge branch 'develop' --- src/mob/components/menubar/normal-menubar/index.jsx | 85 ++++++++++++++++++++++++++++-------------- 1 files changed, 57 insertions(+), 28 deletions(-) diff --git a/src/mob/components/menubar/normal-menubar/index.jsx b/src/mob/components/menubar/normal-menubar/index.jsx index 93d9aff..53d4e1f 100644 --- a/src/mob/components/menubar/normal-menubar/index.jsx +++ b/src/mob/components/menubar/normal-menubar/index.jsx @@ -41,7 +41,6 @@ let _card = { uuid: card.uuid, type: card.type, - floor: card.floor, tabId: '', parentId: '', format: 'object', // 缁勪欢灞炴�� - 鏁版嵁鏍煎紡 @@ -52,7 +51,7 @@ name: card.name, subtype: card.subtype, setting: { interType: 'system' }, - wrap: { name: card.name, width: card.width || 24, title: '' }, + wrap: { name: card.name, width: card.width || 24, title: '', permission: 'true' }, style: { marginLeft: '0px', marginRight: '0px', marginTop: '8px', marginBottom: '8px' }, headerStyle: { fontSize: '16px', borderBottomWidth: '1px', borderBottomColor: '#e8e8e8' }, subMenus: [{ @@ -145,20 +144,27 @@ /** * @description 鍗曚釜鍗$墖淇℃伅鏇存柊 */ - deleteCard = (cell) => { + deleteCard = (cell, type) => { let card = fromJS(this.state.card).toJS() let _this = this - confirm({ - content: '纭畾鍒犻櫎鍗$墖鍚楋紵', - onOk() { - card.subMenus = card.subMenus.filter(item => item.uuid !== cell.uuid) - - _this.setState({card}) - _this.props.updateConfig(card) - }, - onCancel() {} - }) + if (type !== 'direct') { + confirm({ + content: '纭畾鍒犻櫎鍗$墖鍚楋紵', + onOk() { + card.subMenus = card.subMenus.filter(item => item.uuid !== cell.uuid) + + _this.setState({card}) + _this.props.updateConfig(card) + }, + onCancel() {} + }) + } else { + card.subMenus = card.subMenus.filter(item => item.uuid !== cell.uuid) + + this.setState({card}) + this.props.updateConfig(card) + } } changeStyle = () => { @@ -186,7 +192,7 @@ let newcard = { uuid: Utils.getuuid(), - setting: { type: 'menu', width: 6, sign: 'icon', icon: 'user', name: '瀹㈡埛', url: '', color: '#ffffff', iconFont: 20, padding: 12, background: '#1890ff', imgWidth: '' }, + setting: { type: 'menu', width: 6, sign: 'icon', icon: '', name: '', url: '', color: '#ffffff', iconFont: 20, padding: 12, background: '#1890ff', imgWidth: '' }, style: { paddingTop: '15px', paddingBottom: '15px' } @@ -195,12 +201,44 @@ if (card.subMenus.length > 0) { newcard = fromJS(card.subMenus.slice(-1)[0]).toJS() newcard.uuid = Utils.getuuid() + + newcard.setting.clearMenu = 'true' + newcard.setting.icon = '' + newcard.setting.name = '' + newcard.setting.MenuNo = '' + newcard.setting.type = 'menu' + newcard.setting.copyMenuId = '' + newcard.setting.linkMenuId = '' + newcard.setting.linkurl = '' + newcard.setting.tip = '' + newcard.setting.url = '' } card.subMenus.push(newcard) this.setState({card}) this.props.updateConfig(card) + + setTimeout(() => { + let node = document.getElementById(newcard.uuid) + node && node.click() + }, 200) + } + + filterComponent = (config) => { + let item = null + config.subMenus.forEach(menu => { + if (menu.setting.type === 'linkmenu' && menu.setting.linkMenuId === '') { + item = menu + } + }) + + this.updateComponent(config) + + setTimeout(() => { + let node = document.getElementById(item.uuid) + node && node.click() + }, 200) } move = (item, direction) => { @@ -252,18 +290,6 @@ render() { const { card } = this.state - let offset = 0 - if (card.wrap.cardFloat && card.wrap.cardFloat !== 'left') { - let _width = 0 - card.subMenus.forEach(card => { - _width += card.setting.width - }) - offset = _width < 24 ? 24 - _width : 0 - if (card.wrap.cardFloat === 'center') { - offset = Math.floor(offset / 2) - } - } - let _style = resetStyle(card.style) return ( @@ -276,7 +302,7 @@ <EditOutlined style={{color: '#1890ff'}} title="缂栬緫"/> </NormalForm> <CopyComponent type="menubar" card={card}/> - <PasteComponent config={card} options={['menucell']} updateConfig={this.updateComponent} /> + <PasteComponent config={card} options={['menucell']} updateConfig={this.filterComponent} /> <FontColorsOutlined className="style" title="璋冩暣鏍峰紡" onClick={this.changeStyle} /> <UserComponent config={card}/> <DeleteOutlined className="close" title="鍒犻櫎缁勪欢" onClick={() => this.props.deletecomponent(card.uuid)} /> @@ -286,7 +312,10 @@ } trigger="hover"> <ToolOutlined /> </Popover> - {card.subMenus.map((menu, index) => (<MenuComponent key={menu.uuid} offset={!index ? offset : 0} cards={card} card={menu} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} + <div className={(card.wrap.layout || 'grid') + '-layout'}> + {card.subMenus.map((menu, index) => (<MenuComponent key={menu.uuid} cards={card} card={menu} move={this.move} updateElement={this.updateCard} deleteElement={this.deleteCard}/>))} + </div> + <div className="component-name"><div className="center">{card.name}</div></div> </div> ) } -- Gitblit v1.8.0