king
2020-01-09 f068c617b918fc7817c11724424cb1a9149ec3a2
src/tabviews/tableshare/actionList/index.jsx
@@ -154,10 +154,7 @@
          func: 'sPC_TableData_InUpDe',
          BID: this.props.BID
        }
        if (setting.primaryKey) { // 主键值预设,从表格数据第一项选取
          param[setting.primaryKey] = (data[0] && data[0][setting.primaryKey]) || ''
        }
        let primaryId = setting.primaryKey && data[0] ? data[0][setting.primaryKey] : ''
        if (btn.OpenType === 'prompt' || btn.OpenType === 'exec') { // 是否弹框或直接执行
          let ID = ''
@@ -170,13 +167,13 @@
            ID = ids.join(',')
          }
          if (setting.primaryKey) {
            param[setting.primaryKey] = ID
          }
          if (btn.innerFunc) { // 使用自定义函数
            param.func = btn.innerFunc
            if (setting.primaryKey) { // 主键存在时,设置主键参数
              param[setting.primaryKey] = ID
            }
          } else if (btn.sql) {
            param.ID = primaryId
            param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, '', param, data[0])) // 数据源
            param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
            param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -185,19 +182,21 @@
          if (btn.innerFunc) {
            param.func = btn.innerFunc
            if (setting.primaryKey) { // 主键存在时,设置主键参数
              param[setting.primaryKey] = primaryId
            }
            formdata.forEach(_data => {
              param[_data.key] = _data.value
            })
          } else if (btn.sql && btn.sqlType === 'insert') { // 系统函数添加时,生成uuid
            if (setting.primaryKey) {
              param[setting.primaryKey] = Utils.getguid()
            }
            param.ID = Utils.getguid()
            param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata, param, data[0])) // 数据源
            param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
            param.secretkey = Utils.encrypt(param.LText, param.timestamp)
          } else if (btn.sql) {
            param.ID = primaryId
            param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata, param, data[0])) // 数据源
            param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
            param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -219,16 +218,17 @@
            func: 'sPC_TableData_InUpDe',
            BID: this.props.BID
          }
          if (setting.primaryKey) {
            param[setting.primaryKey] = cell[setting.primaryKey] || ''
          }
          let primaryId = setting.primaryKey ? cell[setting.primaryKey] : ''
          if (btn.OpenType === 'prompt' || btn.OpenType === 'exec') { // 是否弹框或直接执行
            if (btn.innerFunc) {
              param.func = btn.innerFunc
              if (setting.primaryKey) {
                param[setting.primaryKey] = primaryId
              }
            } else if (btn.sql) {
              param.ID = primaryId
              param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, '', param, cell)) // 数据源
              param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
              param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -236,15 +236,17 @@
          } else if (btn.OpenType === 'pop') { // 表单
            if (btn.innerFunc) {
              param.func = btn.innerFunc
              if (setting.primaryKey) {
                param[setting.primaryKey] = primaryId
              }
              formdata.forEach(_data => {
                param[_data.key] = _data.value
              })
            } else if (btn.sql) {
              if (setting.primaryKey) {
                param[setting.primaryKey] = cell[setting.primaryKey]
              }
              param.ID = primaryId
              param.LText = Utils.formatOptions(Utils.getSysDefaultSql(btn, setting, formdata, param, cell)) // 数据源
              param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
              param.secretkey = Utils.encrypt(param.LText, param.timestamp)
@@ -690,14 +692,14 @@
    if (execAction.groups.length > 0) {
      execAction.groups.forEach(group => {
        group.sublist.forEach(field => {
          if ((field.type === 'select' || field.type === 'link') && field.resourceType === '1' && field.dataSource) {
          if ((field.type === 'select' || field.type === 'link' || field.type === 'multiselect') && field.resourceType === '1' && field.dataSource) {
            subfields.push(field)
          }
        })
      })
    } else {
      execAction.fields.forEach(field => {
        if ((field.type === 'select' || field.type === 'link') && field.resourceType === '1' && field.dataSource) {
        if ((field.type === 'select' || field.type === 'link' || field.type === 'multiselect') && field.resourceType === '1' && field.dataSource) {
          subfields.push(field)
        }
      })
@@ -716,6 +718,8 @@
      if (item.type === 'link') {
        arrfield = arrfield + ',' + item.linkField
      } else if (item.type === 'select' && item.linkSubField && item.linkSubField.length > 0) {
        arrfield = arrfield + ',' + item.linkSubField.join(',')
      }
      let _sql = Utils.getSelectQuerySql(item)
@@ -753,6 +757,10 @@
            if (res.search.type === 'link') {
              item.parentId = cell[res.search.linkField]
            } else if (res.search.type === 'select' && res.search.linkSubField && res.search.linkSubField.length > 0) {
              res.search.linkSubField.forEach(_field => {
                item[_field] = (cell[_field] || cell[_field] === 0) ? cell[_field] : ''
              })
            }
            return item