king
2021-09-09 e5fc2d92b1036aabf9ffc2c9706ed401bd9735c8
src/tabviews/custom/components/table/normal-table/index.jsx
@@ -61,6 +61,11 @@
    let _cols = new Map()
    let _data = null
    let _sync = _config.setting.sync === 'true'
    let setting = {..._config.setting, ..._config.wrap, style: {}}
    if (setting.selected !== 'always' && setting.selected !== 'init') {
      setting.selected = 'false'
    }
    if (_config.setting.sync === 'true' && data) {
      _data = data[_config.dataName] || []
@@ -78,6 +83,15 @@
        item.$Index = index + 1 + ''
        return item
      })
      if (setting.selected !== 'false') {
        setTimeout(() => {
          MKEmitter.emit('mkCheckTopLine', _config.uuid)
        }, 200)
        if (setting.selected === 'init') {
          setting.selected = 'false'
        }
      }
    }
    _config.columns.forEach(item => {
@@ -97,7 +111,6 @@
      }
    })
    let setting = {..._config.setting, ..._config.wrap, style: {}}
    if (setting.color) {
      setting.style.color = setting.color
    }
@@ -178,7 +191,17 @@
    let result = await Api.genericInterface(param)
    if (result.status) {
      if (setting.selected !== 'false') {
        setTimeout(() => {
          MKEmitter.emit('mkCheckTopLine', config.uuid)
        }, 200)
        if (setting.selected === 'init') {
          this.setState({setting: {...setting, selected: 'false'}})
        }
      } else {
      MKEmitter.emit('resetSelectLine', config.uuid, '', '') // 广播数据切换
      }
      reset && MKEmitter.emit('resetTable', config.uuid, repage) // 列表重置
      let start = 1
@@ -498,13 +521,12 @@
  }
  UNSAFE_componentWillReceiveProps(nextProps) {
    const { sync, config, BID } = this.state
    const { sync, config, setting, BID } = this.state
    if (sync && !is(fromJS(this.props.data), fromJS(nextProps.data))) {
      let _data = []
      if (nextProps.data && nextProps.data[config.dataName]) {
        _data = nextProps.data[config.dataName] || []
      }
      _data = _data.map((item, index) => {
        item.key = index
        item.$$uuid = item[config.setting.primaryKey] || ''
@@ -513,6 +535,16 @@
        return item
      })
        if (setting.selected !== 'false') {
          setTimeout(() => {
            MKEmitter.emit('mkCheckTopLine', config.uuid)
          }, 200)
          if (setting.selected === 'init') {
            this.setState({setting: {...setting, selected: 'false'}})
          }
        }
      }
      this.setState({sync: false, data: _data})
    } else if (config.setting.syncRefresh && nextProps.mainSearch && !is(fromJS(this.props.mainSearch), fromJS(nextProps.mainSearch))) {
      this.setState({pageIndex: 1}, () => {