king
2024-02-04 0bbaa727cdfc65622e33e91c4bf694c83f184535
src/utils/utils-custom.js
@@ -6,7 +6,7 @@
   * @description 获取下级模块
   * @return {String}  selfId  当前组件id
   */
  static getSubModules (components, selfId, supId) {
  static getSubModules (components, selfId, supId, interfaces) {
    let modules = []
    components.forEach(item => {
      if (item.uuid === selfId || item.type === 'navbar') {
@@ -17,6 +17,17 @@
          label: item.name,
          disabled: supId === item.uuid
        })
        if (item.type === 'form' && item.subtype === 'simpleform' && item.wrap.refocus && supId !== item.uuid) {
          modules.push({
            value: item.uuid + '$focus-refresh',
            label: item.name + '(刷新-聚焦)',
          })
          modules.push({
            value: item.uuid + '$focus-nofresh',
            label: item.name + '(不刷新-聚焦)',
          })
        }
      } else if (item.type === 'tabs') {
        if (item.subtype === 'tabletabs') {
          item.subtabs.forEach(tab => {
@@ -83,6 +94,15 @@
        }
      }
    })
    if (interfaces && interfaces.length > 0) {
      interfaces.forEach(item => {
        modules.push({
          value: item.uuid,
          label: item.name
        })
      })
    }
    return modules
  }
@@ -672,11 +692,23 @@
    }
    if (btn.syncComponent && btn.syncComponent[0] === 'multiComponent' && btn.syncComponents) {
      btn.syncComponents = btn.syncComponents.map(m => {
        m.syncComId = m.syncComId.map(n => md5(commonId + n))
        m.syncComId = m.syncComId.map(n => {
          if (/\$focus/.test(n)) {
            return md5(commonId + n.split('$')[0]) + '$' + n.split('$')[1]
          }
          return md5(commonId + n)
        })
        return m
      })
    } else if (btn.syncComponent && btn.syncComponent.length > 0) {
      btn.syncComponent = btn.syncComponent.map(m => md5(commonId + m))
      btn.syncComponent = btn.syncComponent.map(m => {
        if (/\$focus/.test(m)) {
          return md5(commonId + m.split('$')[0]) + '$' + m.split('$')[1]
        }
        return md5(commonId + m)
      })
    }
  }
@@ -696,7 +728,7 @@
  * @description 重置组件配置
  * @return {String}  item 组件信息
  */
  static resetComponentConfig = (item, appType) => {
  static resetComponentConfig = (item, appType, commonId) => {
    if (item.type === 'navbar') {
      return item
    }
@@ -704,9 +736,6 @@
    if (item.subtype === 'tablecard') { // 兼容
      item.type = 'card'
    }
    item.uuid = this.getuuid()
    let commonId = this.getuuid()
    // 重置组件名称
    let sign = this.getSignName()
@@ -929,20 +958,6 @@
        cell.uuid = this.getuuid()
        return cell
      })
    }
    if (item.setting && item.setting.supModule && item.setting.supModule[0] !== 'empty') {
      item.setting.supModule = ''
    }
    if (item.wrap && item.wrap.supType === 'multi') {
      item.wrap.supType = 'single'
      delete item.supNodes
    }
    if (item.wrap && item.wrap.supModule) {
      item.wrap.supModule = ''
    }
    if (item.wrap && item.wrap.doubleClick) {
@@ -1633,6 +1648,14 @@
        }
      }
    }
    if (['pop', 'prompt', 'exec'].includes(cell.OpenType) && cell.verify && !cell.output) {
      if (cell.verify.noteEnable === 'true') {
        errors.push({ level: 0, detail: `按钮“${cell.label}”未设置返回值短信发送无效!`})
      } else if (cell.verify.emailEnable === 'true') {
        errors.push({ level: 0, detail: `按钮“${cell.label}”未设置返回值邮件发送无效!`})
      }
    }
  }
  if (card.$c_ac) {