From 7bd04b1c21a59e8d79325f247bdb1726507b51fb Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期二, 13 八月 2024 18:51:20 +0800 Subject: [PATCH] 2024-08-13 --- src/tabviews/custom/components/table/normal-table/index.jsx | 130 +++++++++++++++++++----------------------- 1 files changed, 59 insertions(+), 71 deletions(-) diff --git a/src/tabviews/custom/components/table/normal-table/index.jsx b/src/tabviews/custom/components/table/normal-table/index.jsx index 12f76e9..ae15927 100644 --- a/src/tabviews/custom/components/table/normal-table/index.jsx +++ b/src/tabviews/custom/components/table/normal-table/index.jsx @@ -79,8 +79,6 @@ if (setting.selected !== 'always' && setting.selected !== 'init' && setting.selected !== 'sign') { setting.selected = 'false' - } else { - setting.orisel = true } if (_config.setting.sync === 'true') { @@ -200,7 +198,7 @@ this.setState({ pageIndex: 1 }, () => { - this.loadmaindata(true, 'true', '', 'timer') + this.loadData(true, 'true', '', 'timer') }) }) } @@ -237,7 +235,7 @@ Api.getLCacheConfig(config.uuid, config.$time, BID).then(res => { if (!res.valid && config.setting.onload === 'true') { setTimeout(() => { - this.loadmaindata(false, 'true', '', 'init') + this.loadData(false, 'true', '', 'init') }, config.setting.delay || 0) } @@ -299,13 +297,13 @@ if (config.setting.onload === 'true') { setTimeout(() => { - this.loadmaindata(false, 'true', '', 'init') + this.loadData(false, 'true', '', 'init') }, config.setting.delay || 0) } } } else if (config.setting.onload === 'true') { setTimeout(() => { - this.loadmaindata() + this.loadData() }, config.setting.delay || 0) } } @@ -511,10 +509,8 @@ /** * @description 涓昏〃鏁版嵁鍔犺浇 - * @param { Boolean } reset 琛ㄦ牸鏄惁閲嶇疆 - * @param { String } repage 琛ㄦ牸鏄惁閲嶇疆椤电爜 */ - async loadmaindata (reset, repage, id, type) { + async loadData (reset, repage, id, type) { const { setting, config, search, orderBy, BID, pageIndex, pageSize, BData } = this.state if (setting.supModule && !BID && setting.supKey !== 'false') { // BID 涓嶅瓨鍦ㄦ椂锛屼笉鍋氭煡璇� @@ -575,35 +571,9 @@ Api.writeCacheConfig(config.uuid, result.data || [], BID) } - if (repage === 'false' && result.data && result.data.length === 0 && result.total > 0 && pageIndex > 1) { - let _pageIndex = Math.ceil(result.total / pageSize) - - if (_pageIndex < pageIndex) { - MKEmitter.emit('resetTable', config.uuid, 'repage', _pageIndex) - this.setState({ - pageIndex: _pageIndex, - data: [], - selectedData: [], - total: result.total - }, () => { - this.loadmaindata() - }) - return - } - } - - if ((setting.selected !== 'false' || (setting.orisel && id)) && result.data && result.data.length > 0) { - setTimeout(() => { - MKEmitter.emit('mkCheckTopLine', config.uuid, id, setting.selected) - }, 200) - if (setting.selected === 'init') { - this.setState({setting: {...setting, selected: 'false'}}) - } - } else { - MKEmitter.emit('resetSelectLine', config.uuid, '', '') // 骞挎挱鏁版嵁鍒囨崲 - if (setting.$hasSyncModule) { - MKEmitter.emit('syncBalconyData', config.uuid, [], false) - } + if (repage === 'false' && result.data.length === 0 && pageIndex > 1) { + this.reloadIndex() + return } reset && MKEmitter.emit('resetTable', config.uuid, repage) // 鍒楄〃閲嶇疆 @@ -649,6 +619,17 @@ allSearch.push(...searches) } + if (data.length && (id || setting.selected !== 'false')) { + setTimeout(() => { + MKEmitter.emit('mkCheckTopLine', config.uuid, id, setting.selected) + }, 200) + } else { + MKEmitter.emit('resetSelectLine', config.uuid, '', '') // 骞挎挱鏁版嵁鍒囨崲 + if (setting.$hasSyncModule) { + MKEmitter.emit('syncBalconyData', config.uuid, [], false) + } + } + this.setState({ data: data, selectedData: [], @@ -656,6 +637,10 @@ total: total, loading: false }) + + if (setting.selected === 'init') { + this.setState({setting: {...setting, selected: 'false'}}) + } if (config.$hasTopModule) { window.GLOB.CacheData.set(config.uuid + 'tb', data[0] || { $$empty: true, $$uuid: '' }) @@ -686,11 +671,6 @@ async loadLinedata (id, position) { const { setting, config, search, orderBy, BID, pageIndex, pageSize, BData } = this.state - if (config.forbidLine) { - this.reloadtable() - return - } - let searches = fromJS(search).toJS() if (config.setting.useMSearch) { // 涓昏〃鎼滅储鏉′欢 let mainSearch = window.GLOB.SearchBox.get(config.$searchId) || [] @@ -712,7 +692,7 @@ let result = await Api.genericInterface(param) if (result.status) { if (position === 'line_grid' && (!result.data || !result.data[0])) { - this.loadmaindata(true, 'false') + this.reloadIndex() return } @@ -836,7 +816,7 @@ pageIndex: 1, search: searches }, () => { - this.loadmaindata(true, 'true') + this.loadData(true, 'true') }) } @@ -857,23 +837,19 @@ pageSize: pagination.pageSize, orderBy: (sorter.field && sorter.order) ? `${sorter.field} ${sorter.order}` : '' }, () => { - this.loadmaindata() + this.loadData() }) } /** * @description 琛ㄦ牸鍒锋柊 */ - reloadtable = (btn, id) => { - if (!btn || btn.resetPageIndex !== 'false') { - this.setState({ - pageIndex: 1 - }, () => { - this.loadmaindata(true, 'true', id) - }) - } else { - this.loadmaindata(true, 'false', id) - } + reloadIndex = () => { + this.setState({ + pageIndex: 1 + }, () => { + this.loadData(true, 'true') + }) } /** @@ -907,7 +883,9 @@ if (config.uuid !== menuId) return if (!id) { - this.reloadtable() + this.reloadIndex() + } else if (config.forbidLine) { + this.loadData(true, 'false', id) } else { this.loadLinedata(id) } @@ -932,7 +910,7 @@ if (bid !== this.state.BID || bid !== '') { this.setState({ BID: bid, BData: _data, pageIndex: 1 }, () => { - this.loadmaindata(true, 'true') + this.loadData(true, 'true') }) } } else { @@ -948,7 +926,7 @@ BData: data }, () => { if (!setting.checkBid) { - this.loadmaindata(true, 'true') + this.loadData(true, 'true') } }) } @@ -957,15 +935,13 @@ /** * @description 鎸夐挳鎵ц瀹屾垚鍚庨〉闈㈠埛鏂� - * @param {*} menuId // 鑿滃崟Id - * @param {*} position // 鍒锋柊浣嶇疆 - * @param {*} btn // 鎵ц鐨勬寜閽� */ refreshByButtonResult = (menuId, position, btn, id, lines) => { const { config, BID } = this.state if (config.uuid !== menuId) return + let _id = config.wrap.selected === 'always' ? (id || '') : '' if (config.supNodes) { if (['mainline', 'maingrid', 'popclose'].includes(position)) { let supNode = this.supModules[this.supModules.length - 1] @@ -980,26 +956,38 @@ }) } else { if (position === 'line' || position === 'line_grid') { - if (lines && lines.length === 1 && !config.forbidLine) { - this.loadLinedata(lines[0].$$uuid, position) + if (lines && lines.length === 1) { + if (config.forbidLine) { + this.loadData(true, 'false', lines[0].$$uuid) + } else { + this.loadLinedata(lines[0].$$uuid, position) + } } else { - this.reloadtable(btn, id) + this.loadData(true, 'false', _id) } + } else if (btn.resetPageIndex !== 'false') { + this.reloadIndex() } else { - this.reloadtable(btn, id) + this.loadData(true, 'false', _id) } } } else { if (position === 'line' || position === 'line_grid') { - if (lines && lines.length === 1 && !config.forbidLine) { - this.loadLinedata(lines[0].$$uuid, position) + if (lines && lines.length === 1) { + if (config.forbidLine) { + this.loadData(true, 'false', lines[0].$$uuid) + } else { + this.loadLinedata(lines[0].$$uuid, position) + } } else { - this.reloadtable(btn, id) + this.loadData(true, 'false', _id) } } else if (['mainline', 'maingrid', 'popclose'].includes(position) && config.setting.supModule) { MKEmitter.emit('reloadData', config.setting.supModule, position === 'maingrid' ? '' : BID) + } else if (btn.resetPageIndex !== 'false') { + this.reloadIndex() } else { - this.reloadtable(btn, id) + this.loadData(true, 'false', _id) } } } @@ -1033,7 +1021,7 @@ if (config.$searchId !== searchId) return - this.reloadtable() + this.reloadIndex() } render() { -- Gitblit v1.8.0