king
2022-10-22 03a22ec6f9ad7303d10b4c65bb5bc6fa5cbd448a
src/utils/utils-custom.js
@@ -4,18 +4,26 @@
   * @return {String}  selfId  当前组件id
   */
  static getSubModules (components, selfId, supId) {
    let modules = components.map(item => {
    let modules = []
    components.forEach(item => {
      if (item.uuid === selfId || item.type === 'navbar') {
        return {
          children: null
        }
        return
      } else if (item.format) { // 数据格式,存在数据源
        return {
        modules.push({
          value: item.uuid,
          label: item.name,
          disabled: supId === item.uuid
        }
        })
      } else if (item.type === 'tabs') {
        if (item.subtype === 'tabletabs') {
          item.subtabs.forEach(tab => {
            modules.push({
              value: tab.components[0].uuid,
              label: tab.label,
              disabled: supId === tab.components[0].uuid
            })
          })
        } else {
        let _item = {
          type: 'tabs',
          value: item.uuid,
@@ -25,10 +33,10 @@
              type: 'tab',
              value: f_tab.uuid,
              label: f_tab.label,
              children: this.getSubModules(f_tab.components, selfId)
                children: this.getSubModules(f_tab.components, selfId, supId)
            }
            if (!subItem.children || subItem.children.length === 0) {
              if (subItem.children.length === 0) {
              return {children: null}
            }
            return subItem
@@ -37,11 +45,10 @@
        _item.children = _item.children.filter(t => t.children !== null)
        if (_item.children.length === 0) {
          return {children: null}
          if (_item.children.length > 0) {
            modules.push(_item)
        }
        return _item
        }
      } else if (item.type === 'group') {
        let _item = {
          value: item.uuid,
@@ -54,7 +61,8 @@
            } else if (f_tab.format) {
              return {
                value: f_tab.uuid,
                label: f_tab.name
                label: f_tab.name,
                disabled: supId === f_tab.uuid
              }
            }
            return {
@@ -65,23 +73,12 @@
        _item.children = _item.children.filter(t => t.children !== null)
        if (_item.children.length === 0) {
          return {children: null}
        }
        return _item
      } else {
        return {
          children: null
        if (_item.children.length > 0) {
          modules.push(_item)
        }
      }
    })
    modules = modules.filter(mod => mod.children !== null)
    if (modules.length === 0) {
      return null
    }
    return modules
  }
@@ -175,11 +172,10 @@
   * @return {String}  selfId  当前组件id
   */
  static getSupModules (components, selfId) {
    let modules = components.map(item => {
    let modules = []
    components.forEach(item => {
      if (item.uuid === selfId) {
        return {
          children: null
        }
      } else if (item.switchable) { // 数据可切换
        let disabled = false
        if (item.type === 'card') {
@@ -187,17 +183,28 @@
        } else if (item.type === 'table') {
          disabled = item.wrap.tableType === ''
        }
        return {
        modules.push({
          value: item.uuid,
          label: item.name,
          disabled: disabled
        }
        })
      } else if (item.type === 'form') { // 数据格式,存在数据源
        return {
        modules.push({
          value: item.uuid,
          label: item.name
        }
        })
      } else if (item.type === 'tabs') {
        if (item.subtype === 'tabletabs') {
          item.subtabs.forEach(tab => {
            if (tab.components[0].uuid === selfId) return
            modules.push({
              value: tab.components[0].uuid,
              label: tab.label,
              disabled: tab.components[0].wrap.tableType === ''
            })
          })
        } else {
        let _item = {
          value: item.uuid,
          label: item.name,
@@ -208,7 +215,7 @@
              children: this.getSupModules(f_tab.components, selfId)
            }
            if (!subItem.children || subItem.children.length === 0) {
              if (subItem.children.length === 0) {
              return {children: null}
            }
            return subItem
@@ -217,11 +224,10 @@
        _item.children = _item.children.filter(t => t.children !== null)
        if (_item.children.length === 0) {
          return {children: null}
          if (_item.children.length > 0) {
            modules.push(_item)
        }
        return _item
        }
      } else if (item.type === 'group') {
        let _item = {
          value: item.uuid,
@@ -232,9 +238,16 @@
                children: null
              }
            } else if (f_tab.switchable) {
              let disabled = false
              if (f_tab.type === 'card') {
                disabled = f_tab.wrap.cardType === ''
              } else if (f_tab.type === 'table') {
                disabled = f_tab.wrap.tableType === ''
              }
              return {
                value: f_tab.uuid,
                label: f_tab.name
                label: f_tab.name,
                disabled: disabled
              }
            }
            return {
@@ -245,23 +258,12 @@
        _item.children = _item.children.filter(t => t.children !== null)
        if (_item.children.length === 0) {
          return {children: null}
        }
        return _item
      } else {
        return {
          children: null
        if (_item.children.length > 0) {
          modules.push(_item)
        }
      }
    })
    modules = modules.filter(mod => mod.children !== null)
    if (modules.length === 0) {
      return null
    }
    return modules
  }