From 88f178df654b08411470a7eab75b3d5fed8817c0 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 03 十一月 2023 01:37:45 +0800 Subject: [PATCH] Merge branch 'develop' --- src/menu/components/table/edit-table/index.jsx | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/src/menu/components/table/edit-table/index.jsx b/src/menu/components/table/edit-table/index.jsx index f211286..2595c3d 100644 --- a/src/menu/components/table/edit-table/index.jsx +++ b/src/menu/components/table/edit-table/index.jsx @@ -67,8 +67,19 @@ this.updateComponent(_card) } else { + let _card = fromJS(card).toJS() + + if (_card.mergeCol) { + let col = _card.cols[_card.mergeCol[0]] + _card.cols.splice(_card.mergeCol[0], 1, ...col.pops) + } + + if (_card.wrap.commit === 'simple') { + _card.wrap.commit = 'change' + } + this.setState({ - card: fromJS(card).toJS() + card: _card }) } } @@ -133,13 +144,27 @@ card: card }) - let _card = card.isNew ? fromJS(card).toJS() : card + let _card = card if (_card.isNew) { + _card = fromJS(card).toJS() _card.cols = _card.cols.filter(a => !a.origin) delete _card.isNew + delete _card.mergeCol + } else if (_card.mergeCol) { + _card = fromJS(card).toJS() + let col = {..._card.cols[_card.mergeCol[0]]} + col.initval = '' + col.pops = [] + + _card.mergeCol.forEach(index => { + col.pops.push(_card.cols[index]) + }) + + _card.cols = _card.cols.filter((col, index) => !_card.mergeCol.includes(index)) + _card.cols.splice(_card.mergeCol[0], 0, col) } - + this.props.updateConfig(_card) } @@ -270,7 +295,11 @@ updatecolumn = (config) => { config.absFields = [] - config.cols.forEach(col => { + config.mergeCol = false + + config.cols.forEach((col, index) => { + delete col.pops + if (col.type === 'number') { if (col.format === 'abs') { config.absFields.push(col.field) @@ -283,6 +312,11 @@ } } }) + } else if (col.type === 'text') { + if (col.editable === 'true' && col.editType === 'popSelect' && /^tab:/.test(col.initval)) { + config.mergeCol = config.mergeCol || [] + config.mergeCol.push(index) + } } }) -- Gitblit v1.8.0