king
2022-07-22 0c439ced2c97905cb2b02f5f689a37b19369fb8a
src/tabviews/scriptmanage/actionList/index.jsx
@@ -2,28 +2,28 @@
import PropTypes from 'prop-types'
import moment from 'moment'
import { Button, Modal, notification, message } from 'antd'
import MutilForm from '@/tabviews/zshare/mutilform'
import asyncSpinComponent from '@/utils/asyncSpinComponent'
import options from '@/store/options.js'
import Utils from '@/utils/utils.js'
import Api from '@/api'
import './index.scss'
const { confirm } = Modal
const MutilForm = asyncSpinComponent(() => import('@/tabviews/zshare/mutilform'))
class MainAction extends Component {
  static propTpyes = {
    BID: PropTypes.string,            // 主表ID
    BData: PropTypes.any,             // 主表数据
    Tab: PropTypes.any,               // 如果当前元素为标签时,tab为标签信息
    type: PropTypes.string,           // 判断当前为主表(main)、子表(sub)、子表标签(subtab)
    MenuID: PropTypes.string,         // 菜单ID
    actions: PropTypes.array,         // 按钮组
    logcolumns: PropTypes.array,      // 显示列
    dict: PropTypes.object,           // 字典项
    setting: PropTypes.any,           // 页面通用设置
    ContainerId: PropTypes.any,       // tab页面ID,用于弹窗控制
    refreshdata: PropTypes.func,      // 执行完成后数据刷新
    gettableselected: PropTypes.func  // 获取表格中数据
    selectedData: PropTypes.array     // 表格选中数据
  }
  state = {
@@ -35,18 +35,14 @@
    configMap: {}
  }
  refreshdata = (item, type) => {
    this.props.refreshdata(item, type)
  }
  /**
   * @description 触发按钮操作
   */
  actionTrigger = (item, record) => {
    const { setting } = this.props
    const { setting, selectedData } = this.props
    let _this = this
    let data = this.props.gettableselected() || []
    let data = selectedData || []
    
    if (record) { // 表格中触发按钮
      data = [record]
@@ -126,8 +122,6 @@
      LText: values.LongParam
    }
    param.LText = Utils.formatOptions(param.LText)
    if (btn.sqlType === 'delete') {
      param.LText = window.GLOB.appkey || ''
      param.Remark = ''
@@ -135,7 +129,7 @@
      param.func_param = ''
    }
    
    param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
    param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss')
    param.secretkey = Utils.encrypt(param.LText, param.timestamp)
    if (options.cloudServiceApi) {
@@ -181,7 +175,9 @@
      })
    }
    this.refreshdata(btn, 'success')
    if (btn.execSuccess !== 'never') {
      this.props.refreshdata()
    }
  }
  /**
@@ -211,8 +207,6 @@
    } else if (res.ErrCode === 'NM') {
      message.error(res.message || res.ErrMesg)
    }
    this.refreshdata(btn, 'error')
  }
@@ -269,10 +263,6 @@
      }
    }
    if (this.props.type === 'subtab') {
      container = document.body
    }
    return (
      <Modal
        title={title}
@@ -301,7 +291,7 @@
  render() {
    return (
      <div className="button-list toolbar-button">
      <div className="script-button-list script-toolbar-button">
        {this.props.actions.map((item, index) => {
          return (
            <Button