From dcd660c86dba586c1b78c0530ddee7c1dc093ee6 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期四, 25 四月 2024 17:51:15 +0800 Subject: [PATCH] 2024-04-25 --- src/menu/components/share/pastecomponent/index.jsx | 81 ++++++++++++++++++++++++---------------- 1 files changed, 48 insertions(+), 33 deletions(-) diff --git a/src/menu/components/share/pastecomponent/index.jsx b/src/menu/components/share/pastecomponent/index.jsx index aa7abd3..a96fa09 100644 --- a/src/menu/components/share/pastecomponent/index.jsx +++ b/src/menu/components/share/pastecomponent/index.jsx @@ -56,6 +56,11 @@ item.setting.width = item.setting.width || 6 delete item.$cardType + if (config.type === 'carousel') { + delete item.setting.linkbtn + delete item.backElements + } + if (item.elements) { item.elements = item.elements.map(cell => { cell.uuid = Utils.getuuid() @@ -69,41 +74,27 @@ }) } } else if (item.copyType === 'cols') { - let loopCol = (col) => { - col.subcols = col.subcols.map(c => { - c.uuid = Utils.getuuid() + let loopCol = (cols) => { + return cols.map(col => { + col.uuid = Utils.getuuid() - if (c.type === 'colspan' && c.subcols) { - c = loopCol(c) - } else if (c.type === 'custom' && c.elements) { - c.elements = c.elements.map(cell => { + if (col.type === 'action') { + col.type = 'custom' + } + + if (col.type === 'colspan' && col.subcols) { + col.subcols = loopCol(col.subcols) + } else if (col.type === 'custom' && col.elements) { + col.elements = col.elements.map(cell => { cell.uuid = Utils.getuuid() return cell }) } - return c + return col }) - - return col } - item.cols = item.cols.map(_item => { - _item.uuid = Utils.getuuid() - if (_item.type === 'colspan' && _item.subcols) { - _item = loopCol(_item) - } else if (_item.type === 'custom' && _item.elements) { - _item.elements = _item.elements.map(cell => { - cell.uuid = Utils.getuuid() - return cell - }) - } else if (_item.type === 'action' && _item.elements) { - _item.elements = _item.elements.map(cell => { - cell.uuid = Utils.getuuid() - return cell - }) - } - return _item - }) + item.cols = loopCol(item.cols) } return item @@ -123,6 +114,10 @@ return } + if (res.copyType === 'editcols') { + res.copyType = 'cols' + } + let type = res.copyType let config = fromJS(this.props.config).toJS() @@ -134,6 +129,10 @@ this.setState({visible: false}) return } else if (type === 'action') { + if (res.style) { + delete res.style.width + delete res.style.float + } if (['line', 'bar', 'scatter'].includes(config.type) && !['excelOut', 'excelIn'].includes(res.OpenType)) { notification.warning({ top: 92, message: '鍥捐〃涓笉鏀寔姝ょ被鎸夐挳锛�', duration: 5 }) return @@ -173,13 +172,29 @@ } else if (type === 'cols') { config.cols = config.cols.filter(col => !col.origin) - let keys = config.cols.map(col => (col.field || '$empty')) - - res.cols.forEach(col => { - if (!keys.includes(col.field)) { - config.cols.push(col) + if ((config.subtype === 'normaltable' || config.subtype === 'editable') && res.cols.length === 1) { + config.cols.push(...res.cols) + } else { + let keys = config.cols.map(col => (col.field || '$empty')) + + let cols = [] + res.cols.forEach(col => { + if (!col.field || !keys.includes(col.field)) { + cols.push(col) + } + }) + + if (cols.length === 0) { + notification.warning({ + top: 92, + message: '鏄剧ず鍒楀凡瀛樺湪锛�', + duration: 5 + }) + return + } else { + config.cols.push(...cols) } - }) + } } this.props.updateConfig(config, type) -- Gitblit v1.8.0