| | |
| | | }) |
| | | } |
| | | |
| | | _config.setting.sub_field = subconfig.columns.map(col => col.field).join(',') |
| | | _config.setting.all_field = _config.setting.arr_field + ',' + _config.setting.sub_field |
| | | if (_config.setting.subdata !== 'sub_data_string') { |
| | | _config.setting.sub_field = subconfig.columns.map(col => col.field).join(',') |
| | | _config.setting.all_field = _config.setting.arr_field + ',' + _config.setting.sub_field |
| | | } |
| | | |
| | | let pageOptions = ['10', '25', '50', '100', '500', '1000'] |
| | | |
| | |
| | | if (config.$cache) { |
| | | let getData = (res) => { |
| | | return res.map((item, index) => { |
| | | let _children = item[config.setting.subdata] |
| | | |
| | | delete item[config.setting.subdata] |
| | | if (config.setting.subdata === 'sub_data_string') { |
| | | _children = this.parseSubData(_children) |
| | | } else if (item.sub_data_string) { |
| | | _children = this.parseSubData(item.sub_data_string) |
| | | } |
| | | |
| | | let children = [] |
| | | |
| | | if (item[config.setting.subdata]) { |
| | | let _children = item[config.setting.subdata] |
| | | |
| | | delete item[config.setting.subdata] |
| | | |
| | | if (_children) { |
| | | _children.forEach((cell, i) => { |
| | | cell.key = i |
| | | cell.$$uuid = cell[config.setting.subKey] || '' |
| | |
| | | this.loadData() |
| | | }, config.setting.delay || 0) |
| | | } |
| | | } |
| | | |
| | | parseSubData = (data) => { |
| | | try { |
| | | data = JSON.parse(data) |
| | | if (typeof(data) !== 'object') { |
| | | data = [] |
| | | } else if (!Array.isArray(data)) { |
| | | data = [data] |
| | | } |
| | | } catch(e) { |
| | | console.warn('Data parsing error.') |
| | | data = [] |
| | | } |
| | | return data |
| | | } |
| | | |
| | | autoExec = (times) => { |
| | |
| | | if (type === 'plus') { |
| | | let _data = (this.state.data || []).concat(result.data || []) |
| | | data = _data.map((item, index) => { |
| | | if (item[config.setting.subdata]) { |
| | | let children = [] |
| | | let _children = item[config.setting.subdata] |
| | | let _children = item[config.setting.subdata] |
| | | |
| | | delete item[config.setting.subdata] |
| | | if (config.setting.subdata === 'sub_data_string') { |
| | | _children = this.parseSubData(_children) |
| | | } else if (item.sub_data_string) { |
| | | _children = this.parseSubData(item.sub_data_string) |
| | | } |
| | | |
| | | delete item[config.setting.subdata] |
| | | |
| | | let children = [] |
| | | if (_children) { |
| | | _children.forEach((cell, i) => { |
| | | cell.key = i |
| | | cell.$$uuid = cell[config.setting.subKey] || '' |
| | |
| | | children.push(cell) |
| | | } |
| | | }) |
| | | item.children = children |
| | | } else if (!item.children) { |
| | | item.children = [] |
| | | } |
| | | |
| | | item.children = children |
| | | |
| | | item.key = index |
| | | item.$$uuid = item[config.setting.primaryKey] || '' |
| | |
| | | }) |
| | | } else { |
| | | data = result.data.map((item, index) => { |
| | | let _children = item[config.setting.subdata] |
| | | |
| | | delete item[config.setting.subdata] |
| | | if (config.setting.subdata === 'sub_data_string') { |
| | | _children = this.parseSubData(_children) |
| | | } else if (item.sub_data_string) { |
| | | _children = this.parseSubData(item.sub_data_string) |
| | | } |
| | | |
| | | let children = [] |
| | | |
| | | if (item[config.setting.subdata]) { |
| | | let _children = item[config.setting.subdata] |
| | | |
| | | delete item[config.setting.subdata] |
| | | |
| | | if (_children) { |
| | | _children.forEach((cell, i) => { |
| | | cell.key = i |
| | | cell.$$uuid = cell[config.setting.subKey] || '' |
| | |
| | | |
| | | data = data.map(item => { |
| | | if (item.$$uuid === _data.$$uuid) { |
| | | let _children = _data[config.setting.subdata] |
| | | |
| | | delete _data[config.setting.subdata] |
| | | |
| | | if (config.setting.subdata === 'sub_data_string') { |
| | | _children = this.parseSubData(_children) |
| | | } else if (_data.sub_data_string) { |
| | | _children = this.parseSubData(_data.sub_data_string) |
| | | } |
| | | |
| | | let children = [] |
| | | |
| | | if (_data[config.setting.subdata]) { |
| | | let _children = _data[config.setting.subdata] |
| | | |
| | | delete _data[config.setting.subdata] |
| | | |
| | | if (_children) { |
| | | _children.forEach((cell, i) => { |
| | | cell.key = i |
| | | cell.$$uuid = cell[config.setting.subKey] || '' |