king
2025-01-27 2b639156302123d4490f03ec02385c4750d1fa11
src/menu/components/share/actioncomponent/actionform/index.jsx
@@ -15,16 +15,16 @@
const CodeMirror = asyncComponent(() => import('@/templates/zshare/codemirror'))
const MKTable = asyncComponent(() => import('@/components/normalform/modalform/mkTable'))
const acTyOptions = {
  pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'hoverTitle', 'hidden', 'preButton'],
  prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton'],
  exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'hoverTitle', 'hidden', 'preButton'],
  pop: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'hoverTitle', 'hidden', 'preButton', 'extBtn', 'reload'],
  prompt: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'position', 'tipTitle', 'hoverTitle', 'hidden', 'preButton', 'reload'],
  exec: ['label', 'OpenType', 'intertype', 'Ot', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'anchors', 'width', 'openmenu', 'refreshTab', 'hoverTitle', 'hidden', 'preButton', 'reload'],
  excelIn: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'hover', 'icon', 'class', 'color', 'sheet', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'width', 'hidden', 'refreshTab'],
  excelOut: ['label', 'Ot', 'OpenType', 'intertype', 'show', 'hover', 'icon', 'class', 'color', 'execSuccess', 'execError', 'syncComponent', 'switchTab', 'pagination', 'search', 'width', 'hidden', 'refreshTab'],
  popview: ['label', 'Ot', 'OpenType', 'show', 'hover', 'icon', 'class', 'color', 'popClose', 'width', 'display', 'ratio', 'syncComponent', 'clickouter', 'maskStyle', 'closeButton', 'hidden'],
  tab: ['label', 'Ot', 'OpenType', 'show', 'hover', 'icon', 'class', 'color', 'linkmenu', 'width', 'hidden', 'openTab'],
  innerpage: ['label', 'Ot', 'OpenType', 'pageTemplate', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
  funcbutton: ['label', 'OpenType', 'funcType', 'show', 'hover', 'swipe', 'icon', 'class', 'color', 'width', 'hidden'],
  form: ['label', 'OpenType', 'formType', 'intertype', 'Ot', 'execSuccess', 'execError', 'syncComponent', 'width', 'openmenu', 'refreshTab', 'title', 'hidden']
  form: ['label', 'OpenType', 'formType', 'intertype', 'Ot', 'execSuccess', 'execError', 'syncComponent', 'width', 'openmenu', 'refreshTab', 'title', 'hidden', 'reload']
}
class ActionForm extends Component {
@@ -226,9 +226,14 @@
      if (Ot === 'required') {
        shows.push('progress')
      }
      if (Ot === 'required' && (intertype === 'inner' || intertype === 'system')) {
        shows.push('execType')
        if (intertype === 'inner' || intertype === 'system') {
          shows.push('execType')
          if (this.record.execType === 'single') {
            shows.push('execInterval')
          }
        } else {
          shows.push('execInterval')
        }
      }
      if (this.record.openmenu && this.record.openmenu !== 'goback') {
        shows.push('open')
@@ -248,9 +253,12 @@
      } else {
        reOptions.sqlType = this.state.insertUpdateOptions
      }
      // if (this.record.execSuccess === 'goback') {
        shows.push('reload')
      // }
      if (openType === 'pop') {
        shows.push('extBtn')
        if (this.record.extBtn === 'true') {
          shows.push('extLabel', 'extStyle', 'confLabel', 'confStyle', 'extValue')
        }
      }
    } else if (openType === 'form') {
      let intertype = this.record.intertype
@@ -302,9 +310,6 @@
        shows.push('sql', 'sqlType', 'database')
      }
      if (this.record.execSuccess === 'goback') {
        shows.push('reload')
      }
      if (['grid'].includes(this.record.execSuccess) || ['grid'].includes(this.record.execError)) {
        shows.push('resetPageIndex')
      }
@@ -495,6 +500,9 @@
        shows.push('execSuccess', 'execError', 'tipTitle')
      } else if (_funcType === 'mkUnsubscribe' || _funcType === 'reAuth') {
        shows.push('tipTitle')
      } else if (_funcType === 'reSystem') {
        shows.push('tipTitle', 'Ot')
        reOptions.Ot = requireOptions.filter(op => op.value === 'requiredSgl')
      } else if (_funcType === 'closetab') {
        shows.push('refreshTab')
      } else if (_funcType === 'scan') {
@@ -616,6 +624,10 @@
      if (['pop', 'prompt', 'exec', 'popview', 'tab', 'innerpage'].includes(openType)) {
        shows.push('showName')
      }
    }
    if (shows.includes('refreshTab') && this.record.refreshTab && this.record.refreshTab.length) {
      shows.push('urlPar')
    }
    return {
@@ -741,6 +753,10 @@
            _fieldval.color = 'primary'
          }
        }
        this.record.resetPageIndex = 'false'
        if ([this.record.execSuccess, this.record.execError].includes('grid')) {
          _fieldval.resetPageIndex = 'false'
        }
      } else if (value === 'audit') {
        _fieldval.label = '审核'
        _fieldval.Ot = 'required'
@@ -756,6 +772,10 @@
          _fieldval.class = 'danger'
        } else {
          _fieldval.color = 'danger'
        }
        this.record.resetPageIndex = 'true'
        if ([this.record.execSuccess, this.record.execError].includes('grid')) {
          _fieldval.resetPageIndex = 'true'
        }
      } else if (value === 'custom') {
        _fieldval.Ot = 'required'
@@ -926,6 +946,11 @@
              }]
            }
          }
        } else if (item.key === 'extValue') {
          rules.push(
            { pattern: /^[0-9a-zA-Z_]*$/, message: '请使用字母、数字以及_' },
            { max: 50, message: '最多50个字符。' }
          )
        } else {
          rules.push({ max: formRule.input.max, message: formRule.input.message })
        }
@@ -1235,6 +1260,9 @@
          if (values.outerBlacklist) {
            values.outerBlacklist = values.outerBlacklist.replace(/\s/ig, '')
          }
          if (values.controlVal) {
            values.controlVal = values.controlVal.replace(/\t+|\v+|\s+/g, '')
          }
          if (values.openmenu && Array.isArray(values.openmenu) && values.openmenu.length > 0) {
            let list = null
@@ -1264,6 +1292,19 @@
            delete values.extraParam
          }
          if (values.refreshTab && values.refreshTab.length && ['pop', 'prompt', 'exec'].includes(values.OpenType) && window.GLOB.customMenu) {
            let id = values.refreshTab[values.refreshTab.length - 1]
            if (id === window.GLOB.customMenu.uuid) {
              if (values.execSuccess !== 'never' || (values.syncComponent && values.syncComponent.length)) {
                notification.warning({
                  top: 92,
                  message: '按钮刷新菜单为当前菜单时,成功后的组件刷新(或关闭标签)将失效!',
                  duration: 5
                })
              }
            }
          }
          resolve(values)
        } else {
          reject(err)