king
2024-09-12 ffa0d7a5e06556c358bf8bbb1af30082214d4376
src/tabviews/zshare/mutilform/index.jsx
@@ -840,7 +840,9 @@
  }
  getFormData = (deForms) => {
    if (deForms.length === 1) {
    if (window.backend && window.GLOB.CacheData.has('sql_' + deForms[0].uuid)) {
      this.improveBackActionForm(deForms)
    } else if (deForms.length === 1) {
      this.improveSimpleActionForm(deForms)
    } else if (!window.GLOB.mkHS && window.GLOB.sysType === 'local' && window.GLOB.systemType !== 'production') {
      this.improveSimpleActionForm(deForms)
@@ -852,6 +854,108 @@
  /**
   * @description 获取下拉表单选项信息
   */
  improveBackActionForm = (deForms) => {
    const { BID, action } = this.props
    let sysvals = {
      mk_departmentcode: sessionStorage.getItem('departmentcode') || '',
      mk_organization: sessionStorage.getItem('organization') || '',
      mk_user_type: sessionStorage.getItem('mk_user_type') || '',
      id: this.state.ID || '',
      bid: BID || '',
      datam: sessionStorage.getItem('dataM') === 'true' ? 'Y' : '',
      datam_begin: sessionStorage.getItem('dataM') === 'true' ? 'Y' : '',
      datam_end: sessionStorage.getItem('dataM') === 'true' ? 'Y' : ''
    }
    if (window.GLOB.externalDatabase !== null) {
      sysvals.db = window.GLOB.externalDatabase
    }
    let deffers = []
    let mainItems = []  // 云端或单点数据
    let localItems = [] // 本地数据
    let cache = action.setting.cache !== 'false' && !action.$cache
    let skip = false
    deForms.forEach(item => {
      let ex = window.GLOB.CacheData.get('sql_' + item.uuid)
      if (!ex) return
      let exps = []
      ex.reps.forEach(n => {
        let key = n.toLowerCase()
        if (sysvals.hasOwnProperty(key)) {
          exps.push({
            key: n,
            value: sysvals[key]
          })
        }
      })
      let cell = {
        id: ex.id,
        menuname: item.label + '(表单)',
        exps: exps,
        md5_id: ''
      }
      if (item.database === 'sso' && window.GLOB.mainSystemApi) {
        mainItems.push(cell)
      } else {
        localItems.push(cell)
      }
    })
    if (localItems.length) {
      deffers.push({
        $backend: true,
        $type: 's_Get_SelectedList',
        data: localItems
      })
    }
    if (mainItems.length) {
      deffers.push({
        $backend: true,
        $type: 's_Get_SelectedList',
        data: mainItems,
        rduri: window.GLOB.mainSystemApi
      })
    }
    if (!deffers.length) return
    deffers = deffers.map(item => {
      return new Promise(resolve => {
        Api.getSystemCacheConfig(item, cache).then(res => {
          if (!res.status) {
            notification.warning({
              top: 92,
              message: res.message,
              duration: 5
            })
            skip = true
          }
          resolve(res)
        })
      })
    })
    Promise.all(deffers).then(response => {
      let result = {...response[0], ...(response[1] || {})}
      delete result.ErrCode
      delete result.ErrMesg
      delete result.message
      delete result.status
      this.resetFormList(result, skip)
    })
  }
  /**
   * @description 获取下拉表单选项信息
   */
  improveActionForm = (deForms) => {
    const { BID, action } = this.props