king
2024-02-03 8acfcd6e349ef2d1b797a7483940a2f3f2dfcfe6
src/templates/zshare/verifycard/index.jsx
@@ -30,7 +30,6 @@
class VerifyCard extends Component {
  static propTpyes = {
    btnTab: PropTypes.any,     // 表单标签页(按钮)参数
    config: PropTypes.any,     // 表单标签页参数
    card: PropTypes.object,    // 按钮信息
    columns: PropTypes.array
@@ -598,7 +597,7 @@
  }
  UNSAFE_componentWillMount() {
    const { columns, config, card, btnTab } = this.props
    const { columns, config, card } = this.props
    const { appType } = this.state
    let _verify = fromJS(card.verify || {}).toJS()
@@ -703,11 +702,8 @@
      oriVerify: fromJS(_verify).toJS()
    })
    if (card.intertype === 'inner') {
      return
    }
    if (card.intertype === 'inner') return
    new Promise(resolve => {
      let _fields = []
      if (card.OpenType === 'form') {
        _fields.push({
@@ -715,45 +711,10 @@
          label: card.label,
          type: 'text'
        })
        resolve(_fields)
      } else if (card.modal && (card.OpenType === 'pop' || !card.OpenType)) {
        _fields = card.modal.fields || []
        resolve(_fields)
      // } else if (card.OpenType === 'pop') {
      //   Api.getCloudConfig({
      //     func: 'sPC_Get_LongParam',
      //     MenuID: card.uuid
      //   }).then(res => {
      //     if (res.status) {
      //       let _LongParam = ''
      //       if (res.LongParam) {
      //         try {
      //           _LongParam = JSON.parse(window.decodeURIComponent(window.atob(res.LongParam)))
      //         } catch (e) {
      //           console.warn('Parse Failure')
      //           _LongParam = ''
      //         }
      //       }
      //       if (!_LongParam) {
      //         message.warning('未获取到表单信息,部分验证将无法设置!')
      //       } else {
      //         _LongParam = updateForm(_LongParam)
      //         _fields = _LongParam.fields || []
      //       }
      //     } else {
      //       notification.warning({
      //         top: 92,
      //         message: res.message,
      //         duration: 5
      //       })
      //     }
      //     resolve(_fields)
      //   })
      } else {
        resolve(_fields)
      }
    }).then(_fields => {
      let _usefulfields = ['UserName', 'FullName', 'RoleID', 'mk_departmentcode', 'mk_organization', 'mk_user_type', 'mk_nation', 'mk_province', 'mk_city', 'mk_district', 'mk_address', 'BillCode', 'BVoucher', 'FIBVoucherDate', 'FiYear', 'ModularDetailCode', 'tbid', 'mk_deleted']
      let _declare = ['@UserName nvarchar(50)', '@FullName nvarchar(50)', '@RoleID nvarchar(512)', '@mk_departmentcode nvarchar(512)', '@mk_organization nvarchar(512)', '@mk_user_type nvarchar(20)', '@mk_nation nvarchar(50)', '@mk_province nvarchar(50)', '@mk_city nvarchar(50)', '@mk_district nvarchar(50)', '@mk_address nvarchar(100)', '@ErrorCode nvarchar(50)', '@retmsg nvarchar(4000)', '@BillCode nvarchar(50)', '@BVoucher nvarchar(50)', '@FIBVoucherDate nvarchar(50)', '@FiYear nvarchar(50)', '@ModularDetailCode nvarchar(50)', '@bid nvarchar(50)', '@tbid nvarchar(50)', '@mk_deleted int']
      let _select = ['@UserName=\'\'', '@FullName=\'\'', '@RoleID=\'\'', '@mk_departmentcode=\'\'', '@mk_organization=\'\'', '@mk_user_type=\'\'', '@mk_nation=\'\'', '@mk_province=\'\'', '@mk_city=\'\'', '@mk_district=\'\'', '@mk_address=\'\'', '@ErrorCode=\'\'', '@retmsg=\'\'', '@BillCode=\'\'', '@BVoucher=\'\'', '@FIBVoucherDate=\'\'', '@FiYear=\'\'', '@ModularDetailCode=\'\'', '@bid=\'\'', '@mk_deleted=1']
@@ -835,27 +796,23 @@
        _fields.unshift({ uuid: 'BID', field: 'BID', label: 'BID', type: 'text' })
      }
      let hasColumn = false
      if (columns && columns.length > 0) {
        if (btnTab) { // 表单标签
          hasColumn = btnTab.Ot !== 'notRequired'
        } else if (card.Ot !== 'notRequired') {
          hasColumn = true
        }
      }
      let unionFields = fromJS(_fields).toJS()
      let formArr = _fields.map(_f => _f.field.toLowerCase())
      if (hasColumn) {
    if (card.Ot !== 'notRequired' && columns) {
        columns.forEach(_f => {
          if (_f.field && !formArr.includes(_f.field.toLowerCase())) {
            formArr.push(_f.field.toLowerCase())
        if (!_f.field) return
        let key = _f.field.toLowerCase()
        if (!formArr.includes(key)) {
          formArr.push(key)
            unionFields.push(_f)
          }
          if (!_f.field || fieldArr.includes(_f.field.toLowerCase())) return
          fieldArr.push(_f.field.toLowerCase())
        if (fieldArr.includes(key)) return
        fieldArr.push(key)
          _usefulfields.push(_f.field)
          if (_f.datatype) { // 自定义字段
@@ -1092,7 +1049,6 @@
        unionFields,
        uniqueFields
      })
    })
  }
  componentDidMount() {
@@ -1287,6 +1243,8 @@
  }
  scriptsChange = (values) => {
    const { columns, card } = this.props
    let verify = fromJS(this.state.verify).toJS()
    if (values.uuid) {
@@ -1302,6 +1260,35 @@
      verify.scripts.push(values)
    }
    if (/@bvoucher(\s|\))/ig.test(values.sql)) {
      if (verify.voucher && verify.voucher.enabled) {
      } else if (card.Ot !== 'notRequired' && columns) {
        let hasvoucher = false
        columns.forEach(_f => {
          if (!_f.field) return
          if (_f.field.toLowerCase() === 'bvoucher') {
            hasvoucher = true
          }
        })
        if (!hasvoucher) {
          notification.warning({
            top: 92,
            message: '未启用创建凭证,且字段集中不存在凭证字段(bvoucher)。',
            duration: 5
          })
        }
      } else {
        notification.warning({
          top: 92,
          message: '未启用创建凭证,且字段集中不存在凭证字段(bvoucher)。',
          duration: 5
        })
      }
    }
    MKEmitter.emit('editLineId', values.uuid)
    this.setState({ verify })