king
2024-02-26 b1694e84d944caede47cc816483b38bdba1f0cb4
src/tabviews/custom/components/form/simple-form/index.jsx
@@ -70,6 +70,10 @@
    let _group = _config.subcards[0]
    if (_config.wrap.refocus) {
      _group.setting.refocus = _config.wrap.refocus
    }
    if (_group.subButton.enable === 'false' && (!_group.closeButton || _group.closeButton.enable !== 'true') && (!_group.resetButton || _group.resetButton.enable !== 'true')) {
      _group.subButton.style.display = 'none'
      _group.$button = 'no-button'
@@ -90,6 +94,7 @@
    MKEmitter.addListener('reloadData', this.reloadData)
    MKEmitter.addListener('mkFormSubmit', this.mkFormSubmit)
    MKEmitter.addListener('resetSelectLine', this.resetParentParam)
    MKEmitter.addListener('queryModuleParam', this.queryModuleParam)
    MKEmitter.addListener('refreshByButtonResult', this.refreshByButtonResult)
    if (config.setting.sync === 'true') {
@@ -119,6 +124,7 @@
    MKEmitter.removeListener('searchRefresh', this.searchRefresh)
    MKEmitter.removeListener('resetSelectLine', this.resetParentParam)
    MKEmitter.removeListener('transferSyncData', this.transferSyncData)
    MKEmitter.removeListener('queryModuleParam', this.queryModuleParam)
    MKEmitter.removeListener('refreshByButtonResult', this.refreshByButtonResult)
  }
@@ -175,6 +181,24 @@
    })
  }
  /**
   * @description 获取组件搜索
   */
  queryModuleParam = (menuId, callback) => {
    const { config } = this.state
    if (config.uuid !== menuId) return
    let searches = []
    if (config.setting.useMSearch) { // 主表搜索条件
      searches = window.GLOB.SearchBox.get(config.$searchId) || []
    }
    callback({
      search: searches
    })
  }
  reloadData = (menuId, id) => {
    const { config, group } = this.state
@@ -213,15 +237,27 @@
  /**
   * @description 按钮执行完成后页面刷新
   * @param {*} menuId     // 菜单Id
   * @param {*} position   // 刷新位置
   * @param {*} btn        // 执行的按钮
   */
  refreshByButtonResult = (menuId, position, btn, id) => {
  refreshByButtonResult = (menuId, position, btn, id, lines, res) => {
    const { config, group, BID } = this.state
    if (config.uuid !== menuId) return
    if (position === 'resetData') {
      let _data = fromJS(this.state.data || {}).toJS()
      Object.keys(_data).forEach(key => {
        let _key = key.toLowerCase()
        if (typeof(res[_key]) !== 'undefined') {
          _data[key] = res[_key]
        }
      })
      this.setState({
        data: _data
      })
      return
    }
    if (position === 'grid' && config.wrap.refocus) {
      let _group = fromJS(group).toJS()
      _group.setting.focus = config.wrap.refocus