From b3e3c463d176a1ec9ab16adea08bcbe6536ec52a Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 21 五月 2025 15:45:26 +0800 Subject: [PATCH] 2025-05-21 --- src/tabviews/custom/components/table/edit-table/index.jsx | 564 ++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 425 insertions(+), 139 deletions(-) diff --git a/src/tabviews/custom/components/table/edit-table/index.jsx b/src/tabviews/custom/components/table/edit-table/index.jsx index f21a620..7f9b250 100644 --- a/src/tabviews/custom/components/table/edit-table/index.jsx +++ b/src/tabviews/custom/components/table/edit-table/index.jsx @@ -1,7 +1,8 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' import { is, fromJS } from 'immutable' -import { notification, Modal } from 'antd' +import { notification } from 'antd' +import moment from 'moment' import Api from '@/api' import Utils from '@/utils/utils.js' @@ -19,7 +20,6 @@ class EditableTable extends Component { static propTpyes = { config: PropTypes.object, // 缁勪欢閰嶇疆淇℃伅 - mainSearch: PropTypes.any, // 澶栧眰鎼滅储鏉′欢 } state = { @@ -28,7 +28,6 @@ config: {}, // 椤甸潰閰嶇疆淇℃伅锛屽寘鎷寜閽�佹悳绱€�佹樉绀哄垪銆佹爣绛剧瓑 actions: null, // 鎸夐挳闆� columns: null, // 鏄剧ず鍒� - arr_field: '', // 鏌ヨ瀛楁闆� setting: null, // 椤甸潰鍏ㄥ眬璁剧疆锛氭暟鎹簮銆佹寜閽強鏄剧ず鍒楀浐瀹氥�佷富閿瓑 data: [], // 鍒楄〃鏁版嵁闆� selectedData: [], // 宸查�夎〃鏍兼暟鎹� @@ -37,7 +36,8 @@ pageIndex: 1, // 椤电爜 pageSize: 10, // 姣忛〉鏁版嵁鏉℃暟 orderBy: '', // 鎺掑簭 - search: '' // 鎼滅储鏉′欢鏁扮粍锛屼娇鐢ㄦ椂闇�鍒嗗満鏅鐞� + search: '', // 鎼滅储鏉′欢鏁扮粍锛屼娇鐢ㄦ椂闇�鍒嗗満鏅鐞� + allSearch: null } /** @@ -47,10 +47,10 @@ UNSAFE_componentWillMount () { let _config = fromJS(this.props.config).toJS() let setting = {..._config.setting, ..._config.wrap} - setting.tableId = Utils.getuuid() - let BID = '' let BData = '' + + setting.tableId = Utils.getuuid().substr(-6).toUpperCase() if (_config.setting.supModule) { BData = window.GLOB.CacheData.get(_config.setting.supModule) @@ -76,11 +76,14 @@ } }) - let _columns = [] - setting.initId = '' - let triMap = new Map() - setting.hasSubmit = false + let initId = '' + setting.hasSubmit = false + if (setting.commit === 'change' || setting.commit === 'simple') { + setting.commit = 'change' + } + + let index = 0 let getColumns = (cols) => { return cols.filter(item => { if (item.Hide === 'true') return false @@ -94,6 +97,8 @@ return false } } else if (item.type === 'custom') { + item.config = {setting: _config.setting, columns: _config.columns} + item.elements.forEach(btn => { if (btn.eleType !== 'button') return if (btn.funcType === 'addline') { @@ -106,24 +111,50 @@ } }) } else { - if (item.type === 'index') { - item.field = '$Index' - item.type = 'text' - } - - if (item.marks && item.marks.length === 0) { - item.marks = '' - } - if (item.editable === 'true') { - setting.hasSubmit = true - if (!setting.initId) { - setting.initId = item.uuid + item.$sort = index + index++ + + setting.hasSubmit = setting.commit !== 'change' + item.$ctrl = setting.commit === 'change' + + if (item.ctrlField) { + item.ctrlValue = item.ctrlValue.split(',') } - if (item.type === 'text' && (item.editType === 'switch' || item.editType === 'select')) { - triMap.set(item.uuid, item.editType) + if (!initId) { + initId = item.uuid } - if (item.type === 'text' && item.editType === 'select') { + if (item.enter === '$sub') { + item.enter = '$noAct' + } else if (item.enter === '$next') { + item.enter = '$next_' + initId + } + + if (item.linkSubField && item.linkSubField.length === 0) { + item.linkSubField = null + } + + if (item.type === 'number') { + if (item.clearField) { + _config.columns.forEach(cell => { + if (cell.field === item.clearField) { + item.clearName = cell.label + } + }) + } + } else if (item.editType === 'date') { + item.format = 'YYYY-MM-DD' + + if (item.precision === 'hour') { + item.format = 'YYYY-MM-DD HH' + } else if (item.precision === 'minute') { + item.format = 'YYYY-MM-DD HH:mm' + } else if (item.precision === 'second') { + item.format = 'YYYY-MM-DD HH:mm:ss' + } + } else if (item.editType === 'select') { + item.map = new Map() + item.options = item.options || [] item.options = item.options.filter(cell => { cell.value = cell.Value @@ -131,6 +162,22 @@ return !cell.Hide }) + + if (item.resourceType !== '1') { + item.options.forEach(cell => { + item.map.set(cell.value, cell.label) + }) + } + } else if (item.editType === 'popSelect') { + if (item.pops) { + item.pops.forEach(cell => { + cell.linkSubField = item.linkSubField + this.resetPop(cell) + cell.tabName = cell.initval.replace(/^tab:/, '') + }) + } else { + this.resetPop(item) + } } } } @@ -139,30 +186,33 @@ }) } - _columns = getColumns(_config.cols) + _config.cols = getColumns(_config.cols) - if (triMap.size > 0) { - let setColumns = (cols) => { - return cols.map(item => { - if (item.type === 'colspan') { - item.subcols = setColumns(item.subcols) - } else if (item.editable === 'true' && triMap.has(item.enter)) { - item.triType = 'click' - } - - return item - }) - } - - _columns = setColumns(_columns) - - if (setting.initId && triMap.has(setting.initId)) { - setting.triType = 'click' - } + let _columns = _config.cols + if (_config.hasExtend) { + _columns = this.getCols(_config.cols, BData, _config.setting.extendTime) } + + setting.initId = initId if (!_config.lineMarks || _config.lineMarks.length === 0) { _config.lineMarks = null + } + + let allSearch = null + if (_config.colsCtrls && _config.colsCtrls.length > 0) { + allSearch = [{key: 'BID', value: BID || ''}] + allSearch.push(..._config.$searches) + if (_config.setting.useMSearch) { + let mainSearch = window.GLOB.SearchBox.get(_config.$searchId) || [] + allSearch.push(...mainSearch) + } + } else { + _config.colsCtrls = null + } + + if (_config.setting.supModule && !BID) { + _config.setting.onload = 'false' } this.setState({ @@ -174,48 +224,237 @@ setting: setting, actions: _config.action, columns: _columns, - arr_field: _config.columns.map(col => col.field).join(','), - search: Utils.initMainSearch(_config.search) // 鎼滅储鏉′欢鍒濆鍖栵紙鍚湁鏃堕棿鏍煎紡锛岄渶瑕佽浆鍖栵級 + search: _config.$searches, + allSearch }, () => { if (_config.setting.onload === 'true') { setTimeout(() => { - this.loadmaindata() + this.loadData() }, _config.setting.delay || 0) } }) } + resetPop = (config) => { + let arrfield = config.columns.map(f => f.field) + + if (config.linkSubField && config.linkSubField.length > 0) { + config.linkSubField.forEach(n => { + if (!arrfield.includes(n)) { + arrfield.push(n) + } + }) + } + + if (sessionStorage.getItem('dataM') === 'true') { // 鏁版嵁鏉冮檺 + config.dataSource = config.dataSource.replace(/\$@/ig, '/*').replace(/@\$/ig, '*/').replace(/@datam@/ig, '\'Y\'') + } else { + config.dataSource = config.dataSource.replace(/@\$|\$@/ig, '').replace(/@datam@/ig, '\'\'') + } + + config.dataSource = config.dataSource.replace(/@LoginUID@/ig, `'${sessionStorage.getItem('LoginUID') || ''}'`) + config.dataSource = config.dataSource.replace(/@SessionUid@/ig, `'${localStorage.getItem('SessionUid') || ''}'`) + config.dataSource = config.dataSource.replace(/@UserID@/ig, `'${sessionStorage.getItem('UserID') || ''}'`) + config.dataSource = config.dataSource.replace(/@Appkey@/ig, `'${window.GLOB.appkey || ''}'`) + config.dataSource = config.dataSource.replace(/@lang@/ig, `'${sessionStorage.getItem('lang')}'`) + + if (/\s/.test(config.dataSource)) { // 鎷兼帴鍒悕 + config.dataSource = '(' + config.dataSource + ') tb' + } + + let labels = {} + config.cols = [] + config.columns.forEach(col => { + labels[col.field] = col.label + + if (col.Hide === 'true') return + + config.cols.push({ + dataIndex: col.field, + title: col.label, + sorter: col.IsSort === 'true', + width: col.Width || 120 + }) + }) + + let placeholder = '' + if (!config.searchKey) { + config.onload = 'true' + } else { + placeholder = [] + config.searchKey.split(',').forEach(key => { + if (!labels[key]) { + placeholder = '' + } else if (placeholder) { + placeholder.push(labels[key]) + } + }) + + placeholder = placeholder ? placeholder.join('銆�') : '' + } + + config.placeholder = placeholder + config.arr_field = arrfield.join(',') + } + + getCols = (cols, BData, time) => { + let _cols = [] + let weeks = ['鏄熸湡鏃�', '鏄熸湡涓�', '鏄熸湡浜�', '鏄熸湡涓�', '鏄熸湡鍥�', '鏄熸湡浜�', '鏄熸湡鍏�'] + + let excols = (col) => { + let _s = [] + let _marks = col.marks || [] + let names = [] + let fields = [] + + for (let i = 0; i < col.quota; i++) { + fields.push(col.field + (i === 0 ? '' : i)) + + if (col.colUnit === 'day') { + let hasweek = col.dayFormat.indexOf('week') > -1 + let format = col.dayFormat.replace(/\sweek/, '') + let day = moment().add(col.shift + i, 'days').format(format) + + if (hasweek) { + let _w = moment().add(col.shift + i, 'days').weekday() + day = day + ' ' + weeks[_w] + } + + names.push(day) + } else { + let format = col.hourFormat + if (format === 'H point') { + format = 'H鐐�' + } + + let hour = moment(time).add(col.shift + i, 'hours').format(format) + + if (format === 'h:00') { + if (hour === '12:00') { + hour = hour + ' pm' + } else if (hour === moment(time).add(col.shift + i, 'hours').format('H:00')) { + hour = hour + ' am' + } else { + hour = hour + ' pm' + } + } + names.push(hour) + } + } + + if (col.supField) { + names = [] + let val = '' + if (BData) { + let field = col.supField.toLowerCase() + Object.keys(BData).forEach(key => { + if (key.toLowerCase() === field) { + val = BData[key] + '' + } + }) + } + + if (val) { + names = val.split(',') + + if (names.length > fields.length) { + names.length = fields.length + } else if (fields.length > names.length) { + fields.length = names.length + } + } + } + + if (names.length === 0) return _s + + _s = fields.map((f, i) => { + return { + type: 'text', + Align: col.Align, + Width: col.Width, + field: f, + label: names[i], + uuid: col.uuid + i, + marks: _marks.filter(mark => mark.field[0] === f || !fields.includes(mark.field[0])) + } + }) + + return _s + } + + cols.forEach(col => { + if (col.type === 'extend') { + let exs = excols(col) + _cols.push(...exs) + } else if (col.type === 'colspan') { + let subs = [] + col.subcols.forEach(subcol => { + if (subcol.type === 'extend') { + let exs = excols(subcol) + subs.push(...exs) + } else { + subs.push(col) + } + }) + + if (subs.length) { + _cols.push({...col, subcols: subs}) + } + } else { + _cols.push(col) + } + }) + + return _cols + } + + resetCols = (BData) => { + const { config, setting } = this.state + + MKEmitter.emit('transferData' + setting.tableId, [], 'clear') + + let columns = this.getCols(config.cols, BData, config.setting.extendTime) + + this.setState({ + columns: columns, + data: [], + selectedData: [], + total: 0 + }) + } + /** * @description 涓昏〃鏁版嵁鍔犺浇 - * @param { Boolean } reset 琛ㄦ牸鏄惁閲嶇疆 - * @param { String } repage 琛ㄦ牸鏄惁閲嶇疆椤电爜 */ - async loadmaindata (reset, repage) { - const { mainSearch } = this.props - const { setting, config, arr_field, search, orderBy, BID, pageIndex, pageSize, BData } = this.state + async loadData (reset, repage) { + const { setting, config, search, orderBy, BID, pageIndex, pageSize, BData } = this.state if (setting.supModule && !BID) { // BID 涓嶅瓨鍦ㄦ椂锛屼笉鍋氭煡璇� this.setState({ data: [], selectedData: [], + loading: false, total: 0 }) reset && MKEmitter.emit('resetTable', config.uuid, 'true') // 鍒楄〃閲嶇疆 + MKEmitter.emit('transferData' + setting.tableId, []) + + this.requestId = '' return } let searches = fromJS(search).toJS() - if (config.setting.useMSearch && mainSearch && mainSearch.length > 0) { // 涓昏〃鎼滅储鏉′欢 - let keys = searches.map(item => item.key.toLowerCase()) + if (config.setting.useMSearch) { // 涓昏〃鎼滅储鏉′欢 + let mainSearch = window.GLOB.SearchBox.get(config.$searchId) || [] + let keys = config.$s_keys || [] mainSearch.forEach(item => { - if (!keys.includes(item.key.toLowerCase())) { - searches.push(item) - } + if (keys.includes(item.key.toLowerCase())) return + + searches.push(item) }) } - let requireFields = searches.filter(item => item.required && item.value === '') - if (requireFields.length > 0) { + if (config.$s_req && searches.filter(item => item.required && item.value === '').length > 0) { return } @@ -224,10 +463,14 @@ }) let _orderBy = orderBy || setting.order - let param = UtilsDM.getQueryDataParams(setting, arr_field, searches, _orderBy, pageIndex, pageSize, BID) + let param = UtilsDM.getQueryDataParams(setting, searches, _orderBy, pageIndex, pageSize, BID) - let result = await Api.genericInterface(param) + this.requestId = config.uuid + new Date().getTime() + + let result = await Api.genericInterface(param, '', '', this.requestId) if (result.status) { + if (result.$requestId && this.requestId !== result.$requestId) return + reset && MKEmitter.emit('resetTable', config.uuid, repage) // 鍒楄〃閲嶇疆 let start = 1 @@ -254,47 +497,51 @@ return item }) + let total = result.total || 0 + if (config.setting.custompage && data.length) { + total = data[data.length - 1].mk_total || 0 + } + + let allSearch = null + if (config.colsCtrls) { + allSearch = [{key: 'BID', value: BID || ''}] + allSearch.push(...searches) + } + this.setState({ data: data, selectedData: [], - total: result.total, + allSearch: allSearch, + total: total, loading: false }) - MKEmitter.emit('transferData', config.uuid, data) + MKEmitter.emit('transferData' + setting.tableId, data) + + UtilsDM.querySuccess(result) } else { this.setState({ loading: false }) - if (result.ErrCode === 'N') { - Modal.error({ - title: result.message, - }) - } else { - notification.error({ - top: 92, - message: result.message, - duration: 10 - }) - } + UtilsDM.queryFail(result) } } /** * @description 鑾峰彇鍗曡鏁版嵁 */ - async loadmainLinedata (id) { - const { mainSearch } = this.props - const { setting, config, arr_field, search, orderBy, BID, pageIndex, pageSize, BData } = this.state - + async loadLinedata (id, position) { + const { setting, config, search, orderBy, BID, pageIndex, pageSize, BData } = this.state + let searches = fromJS(search).toJS() - if (config.setting.useMSearch && mainSearch && mainSearch.length > 0) { // 涓昏〃鎼滅储鏉′欢 - let keys = searches.map(item => item.key.toLowerCase()) + if (config.setting.useMSearch) { // 涓昏〃鎼滅储鏉′欢 + let mainSearch = window.GLOB.SearchBox.get(config.$searchId) || [] + let keys = config.$s_keys || [] mainSearch.forEach(item => { - if (!keys.includes(item.key.toLowerCase())) { - searches.push(item) - } + if (keys.includes(item.key.toLowerCase())) return + + searches.push(item) }) } @@ -303,15 +550,29 @@ }) let _orderBy = orderBy || setting.order - let param = UtilsDM.getQueryDataParams(setting, arr_field, searches, _orderBy, pageIndex, pageSize, BID, id) + let param = UtilsDM.getQueryDataParams(setting, searches, _orderBy, pageIndex, pageSize, BID, id) let result = await Api.genericInterface(param) if (result.status) { + if (position === 'line_grid' && (!result.data || !result.data[0])) { + this.reloadIndex() + return + } + if (!result.data || !result.data[0]) { + let data = fromJS(this.state.data).toJS() + let selectedData = fromJS(this.state.selectedData).toJS() + + data = data.filter(item => item.$$uuid !== id) + selectedData = selectedData.filter(item => item.$$uuid !== id) + + MKEmitter.emit('transferData' + setting.tableId, id, 'delete') + this.setState({ + data, + selectedData, loading: false }) - return } @@ -349,7 +610,7 @@ return item }) - MKEmitter.emit('transferData', config.uuid, _data, 'line') + MKEmitter.emit('transferData' + setting.tableId, _data, 'line') MKEmitter.emit('resetSelectLine', config.uuid, _data.$$uuid, _data) this.setState({ @@ -361,11 +622,8 @@ this.setState({ loading: false }) - notification.error({ - top: 92, - message: result.message, - duration: 10 - }) + + UtilsDM.queryFail(result) } } @@ -374,11 +632,25 @@ * 鍚湁鍒濆涓嶅姞杞界殑椤甸潰锛屼慨鏀硅缃� */ refreshbysearch = (searches) => { + const { setting, BID } = this.state + + if (setting.supModule && !BID) { + notification.warning({ + top: 92, + message: setting.supModTip || window.GLOB.dict['sup_key_req'] || '闇�瑕佷笂绾т富閿�硷紒', + duration: 5 + }) + this.setState({ + search: searches + }) + return + } + this.setState({ pageIndex: 1, search: searches }, () => { - this.loadmaindata(true, 'true') + this.loadData(true, 'true') }) } @@ -399,49 +671,43 @@ pageSize: pagination.pageSize, orderBy: (sorter.field && sorter.order) ? `${sorter.field} ${sorter.order}` : '' }, () => { - this.loadmaindata() + this.loadData() }) } /** * @description 琛ㄦ牸鍒锋柊 */ - reloadtable = (btn) => { - if (!btn || btn.resetPageIndex !== 'false') { - this.setState({ - pageIndex: 1 - }, () => { - this.loadmaindata(true, 'true') - }) - } else { - this.loadmaindata(true, 'false') - } + reloadIndex = () => { + this.setState({ + pageIndex: 1 + }, () => { + this.loadData(true, 'true') + }) } /** * @description 瀵煎嚭Excel鏃讹紝鑾峰彇椤甸潰鎼滅储鎺掑簭绛夊弬鏁� */ queryModuleParam = (menuId, callback) => { - const { mainSearch } = this.props - const { arr_field, config, orderBy, search, setting} = this.state + const { config, orderBy, search, setting } = this.state if (config.uuid !== menuId) return let searches = search ? fromJS(search).toJS() : [] - if (config.setting.useMSearch && mainSearch && mainSearch.length > 0) { // 涓昏〃鎼滅储鏉′欢 - let keys = searches.map(item => item.key.toLowerCase()) + if (config.setting.useMSearch) { // 涓昏〃鎼滅储鏉′欢 + let mainSearch = window.GLOB.SearchBox.get(config.$searchId) || [] + let keys = config.$s_keys || [] mainSearch.forEach(item => { - if (!keys.includes(item.key.toLowerCase())) { - searches.push(item) - } + if (keys.includes(item.key.toLowerCase())) return + + searches.push(item) }) } callback({ - arr_field: arr_field, orderBy: orderBy || setting.order, - search: searches, - menuName: config.name + search: searches }) } @@ -451,25 +717,33 @@ if (config.uuid !== menuId) return if (!id) { - this.reloadtable() + this.reloadIndex() + } else if (config.forbidLine) { + this.loadData(true, 'false') } else { - this.loadmainLinedata(id) + this.loadLinedata(id) } } resetParentParam = (MenuID, id, data) => { - const { setting } = this.state + const { setting, config } = this.state if (!setting.supModule || setting.supModule !== MenuID) return if (id !== this.state.BID || id !== '') { + if (config.parCtrl) { + this.resetCols(data) + } + this.setState({ pageIndex: 1, BID: id, BData: data }, () => { - setTimeout(() => { - this.loadmaindata(true, 'true') - }, setting.delay || 0) + if (!setting.checkBid) { + setTimeout(() => { + this.loadData(true, 'true') + }, setting.delay || 0) + } }) } } @@ -485,20 +759,22 @@ if (config.uuid !== menuId) return - if (position === 'line') { + if (position === 'line' || position === 'line_grid') { if (lines && lines.length === 1) { - this.loadmainLinedata(lines[0].$$uuid) + if (config.forbidLine) { + this.loadData(true, 'false') + } else { + this.loadLinedata(lines[0].$$uuid, position) + } } else { - this.reloadtable(btn) + this.loadData(true, 'false') } - } else if ((position === 'mainline' || position === 'popclose') && config.setting.supModule && BID) { // 鍒锋柊婧愮粍浠舵椂锛岄檮甯﹀埛鏂颁笂绾ц涓庡綋鍓嶇粍浠� - MKEmitter.emit('reloadData', config.setting.supModule, BID) + } 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) - } - - if (position === 'popclose') { // 鎵ц鍚姩寮圭獥鐨勬寜閽墍閫夋嫨鐨勫埛鏂伴」 - btn.$tabId && MKEmitter.emit('refreshPopButton', btn.$tabId) + this.loadData(true, 'false') } } @@ -507,15 +783,17 @@ if (config.uuid !== menuId) return - let _data = fromJS(this.state.data).toJS().forEach(item => { + let _data = fromJS(this.state.data).toJS().map(item => { if (item.$$uuid === uuid) { item[btn.field] = count } + return item }) - let _selectedData = fromJS(this.state.selectedData).toJS().forEach(item => { + let _selectedData = fromJS(this.state.selectedData).toJS().map(item => { if (item.$$uuid === uuid) { item[btn.field] = count } + return item }) this.setState({ @@ -524,14 +802,12 @@ }) } - UNSAFE_componentWillReceiveProps(nextProps) { + searchRefresh = (searchId) => { const { config } = this.state - if (config.setting.useMSearch && nextProps.mainSearch && !is(fromJS(this.props.mainSearch), fromJS(nextProps.mainSearch))) { - this.setState({pageIndex: 1}, () => { - this.reloadtable() - }) - } + if (config.$searchId !== searchId) return + + this.reloadIndex() } shouldComponentUpdate (nextProps, nextState) { @@ -539,11 +815,17 @@ } componentDidMount () { + const { config } = this.state + MKEmitter.addListener('reloadData', this.reloadData) MKEmitter.addListener('resetSelectLine', this.resetParentParam) MKEmitter.addListener('queryModuleParam', this.queryModuleParam) MKEmitter.addListener('refreshLineData', this.refreshLineData) MKEmitter.addListener('refreshByButtonResult', this.refreshByButtonResult) + + if (config.setting.useMSearch) { + MKEmitter.addListener('searchRefresh', this.searchRefresh) + } } /** @@ -554,14 +836,15 @@ return } MKEmitter.removeListener('reloadData', this.reloadData) + MKEmitter.removeListener('searchRefresh', this.searchRefresh) + MKEmitter.removeListener('refreshLineData', this.refreshLineData) MKEmitter.removeListener('resetSelectLine', this.resetParentParam) MKEmitter.removeListener('queryModuleParam', this.queryModuleParam) - MKEmitter.removeListener('refreshLineData', this.refreshLineData) MKEmitter.removeListener('refreshByButtonResult', this.refreshByButtonResult) } render() { - const { BID, setting, actions, config, columns, BData, data, selectedData } = this.state + const { BID, setting, actions, config, columns, BData, data, selectedData, allSearch } = this.state let style = {...config.style} if (config.wrap.empty === 'hidden' && data.length === 0) { @@ -587,9 +870,12 @@ setting={setting} columns={columns} MenuID={config.uuid} + allSearch={allSearch} submit={config.submit} fields={config.columns} total={this.state.total} + parCtrl={config.parCtrl} + colsCtrls={config.colsCtrls} lineMarks={config.lineMarks} loading={this.state.loading} refreshdata={this.refreshbytable} -- Gitblit v1.8.0