king
2025-03-24 a0367ceb9092dd1f781f07db7bbd12b174fac097
src/tabviews/zshare/mutilform/index.jsx
@@ -166,6 +166,17 @@
      let key = item.field.toLowerCase()
      // positecgroup 表单隐藏
      if (item.tooltip && /@[a-z0-9_]+@/.test(item.tooltip)) {
        let field = item.tooltip.replace(/@|\s/ig, '').toLowerCase()
        if (data[field] === 'N') {
          item.hidden = true
        }
        item.tooltip = ''
      }
      if (item.type === 'funcvar') {
        readin = false
        item.readin = false
@@ -173,6 +184,7 @@
      } else if (item.type === 'linkMain') {
        readin = false
        item.readin = false
        item.$verify = item.verifyVal === 'true'
      } else if (item.type === 'number') {
        item.decimal = item.decimal || 0
        item.fieldlength = item.decimal
@@ -181,12 +193,21 @@
      if (['select', 'link', 'radio', 'checkbox', 'checkcard', 'multiselect', 'cascader'].includes(item.type)) {
        item.options = item.options || []
        item.options = item.options.filter(cell => {
          cell.value = cell.Value
          cell.label = cell.Text
          return !cell.Hide
        })
        item.$select = true
        if (item.type === 'checkcard') {
          item.options = item.options.filter(cell => {
            cell.$value = cell.$value + ''
            return !cell.Hide
          })
        } else {
          item.options = item.options.filter(cell => {
            cell.value = cell.Value + ''
            cell.label = cell.Text
            return !cell.Hide
          })
        }
        if (item.setAll === 'true' && ['select', 'link', 'radio'].includes(item.type)) { // 添加空值
          item.options.unshift({
            key: Utils.getuuid(),
@@ -286,6 +307,9 @@
        } else {
          item.showValue = ''
        }
        if (window.backend && action.uuid) {
          item.formSqlId = md5(action.uuid.replace(/_pop$/, '') + item.uuid)
        }
      } else if (item.type === 'brafteditor') {
        if (window.backend && newval && /<\/span>/.test(newval) && item.encryption === 'true') {
          try {
@@ -294,6 +318,8 @@
            newval = ''
          }
        }
      } else if (item.$select && item.resourceType === '0') {
        newval = newval + ''
      }
      if (newval !== '$empty') {
@@ -306,7 +332,7 @@
        if (isNaN(item.initval) || item.initval === '') {
          item.initval = 0
        }
      } else if (['select', 'link', 'radio', 'checkbox', 'checkcard', 'multiselect', 'cascader'].includes(item.type) && item.resourceType === '1') {
      } else if (item.$select && item.resourceType === '1') {
        deForms.push(item)
      } else if (item.type === 'rate') {
        item.rateCount = item.rateCount || 5
@@ -331,6 +357,9 @@
      item.rules = []
      if (item.type === 'text') {
        item.initval = item.initval + ''
        if (/@currentYear@/ig.test(item.initval)) { // 系统变量替换
          item.initval = item.initval.replace(/@currentYear@/ig, moment().format('YYYY'))
        }
        if (item.required === 'true') {
          item.rules.push({
@@ -397,7 +426,7 @@
            })
          } else if (item.regular === 'phone') {
            item.rules.push({
              pattern: /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,
              pattern: /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\s?\d{4}\s?\d{4}$/,
              message: item.regularText || dict['phone_error'] || '请正确输入手机号'
            })
          } else if (item.regular === 'email') {
@@ -1531,6 +1560,11 @@
            key: item.field,
            isconst: item.constant === 'true'
          }
          if (item.$verify) {
            _item.$verify = true
            _item.label = item.label
          }
    
          _item.value = record[item.field] !== undefined ? record[item.field] : ''
    
@@ -1539,10 +1573,10 @@
          } else if (item.declare === 'decimal') {
            _item.type = 'number'
            _item.fieldlen = item.decimal || 0
          } else if (['text', 'textarea', 'linkMain'].includes(item.type)) {
          } else if (['text', 'textarea', 'linkMain', 'brafteditor'].includes(item.type)) {
            _item.value = _item.value + ''
            _item.value = _item.value.replace(/\t+|\v+/g, '')       // 去除制表符
            if (item.interception !== 'false') {                    // 去除首尾空格
              if (item.interception === 'func') {
                try {
@@ -1572,14 +1606,19 @@
                _item.value = _item.value.replace(/(^\s*|\s*$)/g, '')
              }
            }
            if (item.type === 'text' && /@appkey@|@SessionUid@|@bid@/ig.test(_item.value)) { // 特殊字段替换
              _item.value = _item.value.replace(/^(\s*)@appkey@(\s*)$/ig, window.GLOB.appkey).replace(/^(\s*)@SessionUid@(\s*)$/ig, (localStorage.getItem('SessionUid') || '')).replace(/^(\s*)@bid@(\s*)$/ig, (this.props.BID || ''))
            }
            if (item.type === 'text' && item.lenControl && item.lenControl !== 'limit') {
              if (item.lenControl === 'left') {
                _item.value = _item.value.substr(0, item.fieldlength)
              } else {
                _item.value = _item.value.slice(-item.fieldlength)
            if (item.type === 'text') {
              if (/@appkey@|@SessionUid@|@bid@/ig.test(_item.value)) { // 特殊字段替换
                _item.value = _item.value.replace(/^(\s*)@appkey@(\s*)$/ig, window.GLOB.appkey).replace(/^(\s*)@SessionUid@(\s*)$/ig, (localStorage.getItem('SessionUid') || '')).replace(/^(\s*)@bid@(\s*)$/ig, (this.props.BID || ''))
              }
              if (item.lenControl && item.lenControl !== 'limit') {
                if (item.lenControl === 'left') {
                  _item.value = _item.value.substr(0, item.fieldlength)
                } else {
                  _item.value = _item.value.slice(-item.fieldlength)
                }
              }
              if (item.regular === 'phone') {
                _item.value = _item.value.replace(/\s+/g, '')
              }
            }
          } else if (item.type === 'datemonth') {