king
2020-08-11 ae6ce73e7abde1121a788f884e54ccd6cfad0460
src/utils/utils.js
@@ -705,7 +705,7 @@
   * @return {String} btn   按钮
   * @return {String} data  excel数据
   */
  static getExcelInSql (item, data, dict) {
  static getExcelInSql (item, data, dict, BID) {
    let btn = item.verify
    let keys = ['delete', 'drop', 'insert', 'truncate', 'update']
    let userName = sessionStorage.getItem('User_Name') || ''
@@ -815,7 +815,10 @@
            if (val > 2958465 || val <= 0) {                 // 时间过大或小于等于0
              errors.push(_position + dict['main.excel.content.date.over'])
            } else {                                         // 时间格式化
              val = this.formatExcelDate(val)
              if (val < 60) {                                // 1900-2-29,excel中存在,实际不存在
                val++
              }
              val = moment('19000101', 'YYYYMMDD').add(Math.floor(val - 2), 'days').format('YYYY-MM-DD')
            }
          } else if (typeof(val) === 'string') {
            val = val.replace(/(^\s*$)|\t*|\v*/ig, '')
@@ -840,9 +843,11 @@
      _lineIndex = _lineIndex.substring(_lineIndex.length - 6)
      vals.push(`'${upId + _lineIndex}'`)
      vals.push(`'${BID}'`)
      
      if (lindex < 40) {
        convals.push(`'${upId + _lineIndex}' as jskey`)
        convals.push(`'${BID}' as BID`)
        conLtext.push(`Select ${convals.join(',')}`)
      }
@@ -923,13 +928,13 @@
      _sql = `
        /* 系统生成 */
        declare @${item.sheet} table (${declarefields.join(',')},jskey nvarchar(50) )
        declare @${item.sheet} table (${declarefields.join(',')},jskey nvarchar(50),BID nvarchar(50) )
        Declare @UserName nvarchar(50),@FullName nvarchar(50),@ErrorCode nvarchar(50),@retmsg nvarchar(4000),@tbid Nvarchar(512)
        
        Select  @ErrorCode='', @retmsg='', @UserName='${userName}', @FullName='${fullName}'
        ${_initCustomScript}
        `
      _sqlInsert = `Insert into  @${item.sheet} (${fields},jskey)`
      _sqlInsert = `Insert into @${item.sheet} (${fields},jskey,BID)`
      _sqlBottom = `
        /* 默认sql */
        delete tmp_excel_in where upid=@upid@
@@ -965,7 +970,7 @@
        Select  @ErrorCode='', @retmsg='', @UserName='${userName}', @FullName='${fullName}'
        `
    }
    return {
      sql: _sql,
      lines: result.map((list, index) => {
@@ -981,20 +986,6 @@
  }
  /**
   * @description 格式化excel中的date值
   * @param {Number} number 时间值
   */
  static formatExcelDate(number) {
    const time = new Date((number - 1) * 24 * 3600000 + 1)
    time.setYear(time.getFullYear() - 70)
    const year = time.getFullYear()
    const month = time.getMonth() + 1
    const date = time.getDate() - 1
    return `${year}-${(month < 10 ? '0' + month : month)}-${(date < 10 ? '0' + date : date)}`
  }
  /**
   * @description 使用系统函数时(sPC_TableData_InUpDe ),生成sql语句
   * @return {String} type   执行类型
   * @return {String} table  表名
@@ -1006,7 +997,7 @@
    let _formFieldValue = {}
    let _actionType = null
    let appkey = window.GLOB.appkey || ''
    let sessionUid = sessionStorage.getItem('SessionUid') || ''
    let sessionUid = localStorage.getItem('SessionUid') || ''
    if (verify.default !== 'false') { // 判断是否使用默认sql
      _actionType = btn.sqlType