king
2021-09-17 eb0c4703ec7cd21dc921ae113b7e3be69c641c1d
src/tabviews/zshare/actionList/exceloutbutton/index.jsx
@@ -3,7 +3,7 @@
import moment from 'moment'
import {connect} from 'react-redux'
import { is, fromJS } from 'immutable'
import { Button, Modal, notification, message } from 'antd'
import { Button, Modal, notification, message, Icon } from 'antd'
import * as XLSX from 'xlsx'
import Utils from '@/utils/utils.js'
@@ -37,12 +37,8 @@
  }
  componentDidMount () {
    const { position } = this.props
    if (position === 'toolbar') {
      MKEmitter.addListener('triggerBtnId', this.actionTrigger)
    }
    MKEmitter.addListener('execExcelout', this.triggerExcelout)
    MKEmitter.addListener('triggerBtnId', this.actionTrigger)
    MKEmitter.addListener('returnModuleParam', this.triggerExcelout)
  }
  componentWillUnmount () {
@@ -50,7 +46,7 @@
      return
    }
    MKEmitter.removeListener('triggerBtnId', this.actionTrigger)
    MKEmitter.removeListener('execExcelout', this.triggerExcelout)
    MKEmitter.removeListener('returnModuleParam', this.triggerExcelout)
  }
  /**
@@ -110,7 +106,7 @@
      return
    }
    MKEmitter.emit('getexceloutparam', btn.$menuId, btn.uuid)
    MKEmitter.emit('queryModuleParam', btn.$menuId, btn.uuid)
    if (window.GLOB.systemType === 'production') {
      MKEmitter.emit('queryTrigger', {menuId: btn.uuid, name: '导出Excel'})
    }
@@ -130,9 +126,7 @@
    if (btn.search === 'true' && viewParam.search && viewParam.search.length > 0) {
      let valid = false
      viewParam.search.forEach(item => {
        if (Array.isArray(item.value) && item.value.length > 0) {
          valid = true
        } else if (item.value || item.value === 0) {
        if (item.value || item.value === 0) {
          valid = true
        }
      })
@@ -452,7 +446,7 @@
        data && data.forEach((item, index) => {
          let _row = {}
  
          item.$Index = index + 1
          item.$Index = index + 1 + ''
  
          btn.verify.columns.forEach((col, i) => {
            if (item[col.Column] && col.abs === 'true') {
@@ -499,7 +493,7 @@
        data && data.forEach((item, index) => {
          let _row = {}
  
          item.$Index = index + 1
          item.$Index = index + 1 + ''
  
          _header.forEach(field => {
            if (item[field] && abses.includes(field)) {
@@ -527,7 +521,7 @@
          this.execSuccess({ErrCode: 'S', ErrMesg: '导出成功!'})
        }
      }
    } catch {
    } catch (e) {
      this.execError({ErrCode: 'N', message: 'Excel生成失败!'})
    }
  }
@@ -612,10 +606,14 @@
    param.exec_type = 'y' // 后台解码
    param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
    param.secretkey = Utils.encrypt('', param.timestamp)
    param.LText = Utils.formatOptions(param.LText)
    param.LText = Utils.formatOptions(script)
    if (this.props.menuType === 'HS') { // 函数 sPC_TableData_InUpDe 云端验证
      param.open_key = Utils.encryptOpenKey(param.secretkey, param.timestamp)
    }
    if (window.GLOB.probation) {
      param.s_debug_type = 'Y'
    }
    Api.genericInterface(param).then((res) => {
@@ -687,6 +685,9 @@
    let userName = sessionStorage.getItem('User_Name') || ''
    let fullName = sessionStorage.getItem('Full_Name') || ''
    let RoleID = sessionStorage.getItem('role_id') || ''
    let departmentcode = sessionStorage.getItem('departmentcode') || ''
    let organization = sessionStorage.getItem('organization') || ''
    let city = sessionStorage.getItem('city') || ''
    if (sessionStorage.getItem('isEditState') === 'true') {
@@ -744,7 +745,7 @@
    }
    if (param.custom_script) {
      param.custom_script = `declare @ErrorCode nvarchar(50),@retmsg nvarchar(4000),@UserName nvarchar(50),@FullName nvarchar(50),@login_city nvarchar(50) select @ErrorCode='',@retmsg ='',@UserName='${userName}', @FullName='${fullName}', @login_city='${city}'
      param.custom_script = `declare @ErrorCode nvarchar(50),@retmsg nvarchar(4000),@UserName nvarchar(50),@FullName nvarchar(50),@RoleID nvarchar(512),@departmentcode nvarchar(50),@organization nvarchar(50),@login_city nvarchar(50) select @ErrorCode='',@retmsg ='',@UserName='${userName}', @FullName='${fullName}', @RoleID='${RoleID}', @departmentcode='${departmentcode}', @organization='${organization}', @login_city='${city}'
        ${param.custom_script}
      `
      regoptions.forEach(item => {
@@ -817,6 +818,11 @@
    if (btn.execSuccess !== 'never') {
      MKEmitter.emit('refreshByButtonResult', btn.$menuId, btn.execSuccess, btn)
    }
    if (btn.switchTab && btn.switchTab.length > 0) {
      let id = btn.switchTab[btn.switchTab.length - 1]
      let node = document.getElementById('tab' + id)
      node && node.click()
    }
  }
  /**
@@ -872,15 +878,31 @@
        >{btn.label}</Button>
      )
    } else { // icon、text、 all 卡片
      let label = ''
      let icon = ''
      if (show === 'button') {
        label = btn.label
        icon = btn.icon || ''
      } else if (show === 'link') {
        label = <span>{btn.label}{btn.icon ? <Icon style={{marginLeft: '8px'}} type={btn.icon}/> : ''}</span>
        icon = ''
      } else if (show === 'icon') {
        icon = btn.icon || 'download'
      // } else if (show === 'text') {
      } else {
        label = btn.label
      }
      return (
        <Button
          type="link"
          title={show === 'icon' ? btn.label : ''}
          loading={loading}
          style={btn.style}
          icon={show === 'text' ? '' : (show === 'icon' ? (btn.icon || 'download') : (btn.icon || ''))}
          icon={icon}
          onClick={(e) => {e.stopPropagation(); this.actionTrigger()}}
        >{show === 'icon' ? '' : btn.label}</Button>
        >{label}</Button>
      )
    }
  }