king
2021-07-28 137fb8ea6af2789b3238b22bac31d80bced41dfe
src/menu/components/share/pastecomponent/index.jsx
@@ -24,7 +24,7 @@
    this.setState({visible: true})
  }
  resetconfig = (item, copyBtns) => {
  resetconfig = (item, copyBtns, config) => {
    let _uuid = Utils.getuuid()
    if (item.OpenType === 'popview') {
@@ -38,9 +38,33 @@
      item.uuid = _uuid
    }
    if (item.copyType === 'cardcell') {
    if (item.copyType === 'cardcell' && config.subtype === 'datacard') {
      item.setting = item.setting || {}
      item.$cardType = 'extendCard'
      item.setting.width = item.setting.width || 6
      if (item.elements) {
        item.elements = item.elements.map(cell => {
          if (cell.datatype === 'dynamic') {
            cell.datatype = 'static'
          }
          cell.uuid = Utils.getuuid()
          return cell
        })
      }
      if (item.backElements) {
        item.backElements = item.backElements.map(cell => {
          if (cell.datatype === 'dynamic') {
            cell.datatype = 'static'
          }
          cell.uuid = Utils.getuuid()
          return cell
        })
      }
    } else if (item.copyType === 'cardcell') {
      item.setting = item.setting || {}
      item.setting.width = item.setting.width || 6
      delete item.$cardType
      if (item.elements) {
        item.elements = item.elements.map(cell => {
@@ -105,12 +129,9 @@
  pasteSubmit = () => {
    const { options } = this.props
    this.pasteFormRef.handleConfirm().then(res => {
      if (!options.includes(res.copyType)) {
        notification.warning({
          top: 92,
          message: '配置信息格式错误!',
          duration: 5
        })
        notification.warning({ top: 92, message: '配置信息格式错误!', duration: 5 })
        return
      }
@@ -118,7 +139,7 @@
      let config = fromJS(this.props.config).toJS()
      let copyBtns = new Map()
      res = this.resetconfig(res, copyBtns)
      res = this.resetconfig(res, copyBtns, config)
      delete res.copyType
      copyBtns = [...copyBtns.values()]
@@ -127,10 +148,18 @@
        MKEmitter.emit('copyButtons', copyBtns)
      }
      if (type === 'action') {
      if (config.type === 'form' && config.subtype === 'stepform') {
        this.props.updateConfig(res)
        this.setState({visible: false})
        return
      } else if (type === 'action') {
        config.action = config.action || []
        config.action = config.action.filter(item => !item.origin)
        if (['line', 'bar', 'scatter'].includes(config.type) && !['excelOut', 'excelIn'].includes(res.OpenType)) {
          notification.warning({ top: 92, message: '图表中不支持此类按钮!', duration: 5 })
          return
        }
        MKEmitter.emit('addButton', config.uuid, res)
      } else if (type === 'search' || type === 'form') {
        config.search = config.search || []
@@ -139,7 +168,7 @@
        let keys = config.search.map(item => item.field.toLowerCase())
        if (type === 'form') {
          if (['number', 'switch', 'textarea', 'checkcard', 'fileupload', 'hint', 'color', 'funcvar'].includes(res.type)) {
          if (['number', 'switch', 'textarea', 'fileupload', 'hint', 'color', 'funcvar'].includes(res.type)) {
            res.type = 'text'
          } else if (res.type === 'radio') {
            res.type = 'select'
@@ -162,6 +191,8 @@
        config.search.push(res)
      } else if (type === 'cardcell') {
        config.subcards.push(res)
      } else if (type === 'menucell') {
        config.subMenus.push(res)
      } else if (type === 'cols') {
        config.cols = config.cols.filter(col => !col.origin)