From eb4df4321be0aa5f97732ae5523f14d34b50ccf4 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 04 三月 2022 22:59:55 +0800 Subject: [PATCH] 2022-03-04 --- src/tabviews/custom/components/table/edit-table/normalTable/index.jsx | 23 +++++++++++++++++------ 1 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx b/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx index 7063ebe..6598db5 100644 --- a/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx +++ b/src/tabviews/custom/components/table/edit-table/normalTable/index.jsx @@ -1831,7 +1831,7 @@ } pickupChange = () => { - const { submit, MenuID } = this.props + const { submit, MenuID, setting } = this.props const { data } = this.state let pickup = !this.state.pickup @@ -1845,7 +1845,7 @@ return } - if (!pickup && !is(fromJS(data), fromJS(this.state.edData))) { + if (!pickup && this.state.edData.filter(item => !item.$origin).length > 0) { const _this = this confirm({ title: '鏁版嵁宸蹭慨鏀癸紝纭畾鏀惧純淇濆瓨鍚楋紵', @@ -1866,18 +1866,28 @@ } else { pickup && MKEmitter.emit('resetSelectLine', MenuID, '', '') pickup && this.props.chgSelectData([]) + let keys = this.state.selectedRowKeys this.setState({ data: [], edData: [], + selectedRowKeys: [], pickup, loading: false, editable: false }, () => { - this.setState({ - data: data, - edData: pickup ? fromJS(data).toJS() : [] - }) + if (pickup && setting.tableType === 'checkbox' && keys.length > 0) { + this.setState({ + data: data, + edData: fromJS(data).toJS().filter(item => keys.includes(item.$$uuid)) + }) + } else { + this.setState({ + data: data, + edData: pickup ? fromJS(data).toJS() : [] + }) + } }) + } this.props.changeLock(pickup) } @@ -1960,6 +1970,7 @@ /> {_footer ? <div className={'normal-table-footer ' + (_pagination ? 'pagination' : '')}>{_footer}</div> : null} {pickup && setting.addable === 'true' ? <Button className="mk-add-line" onClick={() => this.addLine()} disabled={this.props.loading} type="link"><PlusOutlined /></Button> : null} + {pickup && _data.length > 10 ? <Button style={submit.style} onClick={() => setTimeout(() => {this.checkData()}, 10)} loading={loading} className="submit-footer-table" type="link">鎻愪氦</Button> : null} </div> ) } -- Gitblit v1.8.0