king
2020-06-28 48a18736c461ad730bd264b0ac7b40b68a0e33a1
src/templates/sharecomponent/actioncomponent/verifyexcelin/index.jsx
@@ -1,6 +1,6 @@
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import { Form, Tabs, Row, Col, Input, Button, Table, Popconfirm, Icon, notification, Modal, message, InputNumber, Radio } from 'antd'
import { Form, Tabs, Row, Col, Input, Button, Table, Popconfirm, Icon, notification, Modal, message, InputNumber, Radio, Typography } from 'antd'
import moment from 'moment'
import Api from '@/api'
@@ -13,6 +13,7 @@
const { TabPane } = Tabs
const { confirm } = Modal
const { Paragraph } = Typography
class VerifyCard extends Component {
  static propTpyes = {
@@ -26,40 +27,47 @@
    systemScripts: [],
    excelColumns: [
      {
        title: 'Column',
        title: this.props.dict['model.form.field'],
        dataIndex: 'Column',
        width: '16%',
        editable: true
      },
      {
        title: 'Text',
        title: this.props.dict['model.name'],
        dataIndex: 'Text',
        width: '19%',
        width: '15%',
        editable: true
      },
      {
        title: '类型',
        title: this.props.dict['model.form.type'],
        dataIndex: 'type',
        width: '12%',
        editable: true
      },
      {
        title: '是否必填',
        title: this.props.dict['model.required'],
        dataIndex: 'required',
        width: '12%',
        width: '10%',
        editable: true,
        render: (text, record) => record.required === 'true' ? '是' : '否'
        render: (text, record) => record.required === 'true' ? this.props.dict['model.true'] : this.props.dict['model.false']
      },
      {
        title: this.props.dict['model.import'],
        dataIndex: 'import',
        width: '10%',
        editable: true,
        render: (text, record) => record.import !== 'false' ? this.props.dict['model.true'] : this.props.dict['model.false']
      },
      {
        title: '最小值',
        dataIndex: 'min',
        width: '12%',
        width: '10%',
        editable: true
      },
      {
        title: '最大值',
        dataIndex: 'max',
        width: '12%',
        width: '10%',
        editable: true
      },
      {
@@ -75,7 +83,7 @@
              <Popconfirm
                title={this.props.dict['header.form.query.delete']}
                okText={this.props.dict['model.confirm']}
                cancelText={this.props.dict['header.cancel']}
                cancelText={this.props.dict['model.cancel']}
                onConfirm={() => this.handleDelete(record, 'columns')
              }>
                <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -133,7 +141,7 @@
            <Popconfirm
              title={this.props.dict['header.form.query.delete']}
              okText={this.props.dict['model.confirm']}
              cancelText={this.props.dict['header.cancel']}
              cancelText={this.props.dict['model.cancel']}
              onConfirm={() => this.handleDelete(record, 'unique')
            }>
              <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -145,13 +153,26 @@
      {
        title: 'SQL',
        dataIndex: 'sql',
        width: '60%'
        width: '60%',
        render: (text) => (
          <Paragraph copyable ellipsis={{ rows: 5, expandable: true }}>{text}</Paragraph>
        )
      },
      {
        title: '执行位置',
        dataIndex: 'position',
        width: '10%',
        render: (text, record) => record.position !== 'front' ? 'sql后' : 'sql前'
        render: (text, record) => {
          let _text = ''
          if (record.position === 'front') {
            _text = 'sql前'
          } else if (record.position === 'init') {
            _text = '初始化'
          } else {
            _text = 'sql后'
          }
          return _text
        }
      },
      {
        title: '状态',
@@ -185,7 +206,7 @@
            <Popconfirm
              title={this.props.dict['header.form.query.delete']}
              okText={this.props.dict['model.confirm']}
              cancelText={this.props.dict['header.cancel']}
              cancelText={this.props.dict['model.cancel']}
              onConfirm={() => this.handleDelete(record, 'scripts')
            }>
              <span className="operation-btn" style={{color: '#ff4d4f'}}><Icon type="delete" /></span>
@@ -197,6 +218,7 @@
  UNSAFE_componentWillMount() {
    let _verify = this.props.card.verify || {}
    _verify = JSON.parse(JSON.stringify(_verify))
    let _columns = _verify.columns || []
    _columns = _columns.map(col => {
@@ -241,6 +263,8 @@
    
    _sParam.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
    _sParam.secretkey = Utils.encrypt(_sParam.LText, _sParam.timestamp)
    _sParam.open_key = Utils.encrypt(_sParam.secretkey, _sParam.timestamp, true) // 云端数据验证
    
    Api.getSystemConfig(_sParam).then(res => {
      if (res.status) {
@@ -288,6 +312,7 @@
          Text: col.label,
          type: _type,
          limit: _limit,
          import: 'true',
          required: 'true'
        }
@@ -553,7 +578,7 @@
            confirm({
              content: `存在未保存项,确定提交吗?`,
              okText: this.props.dict['model.confirm'],
              cancelText: this.props.dict['header.cancel'],
              cancelText: this.props.dict['model.cancel'],
              onOk() {
                resolve(_verify)
              },
@@ -645,13 +670,13 @@
            <Form {...formItemLayout}>
              <Row gutter={24}>
                <Col span={8}>
                  <Form.Item label={'Excel表名'}>
                  <Form.Item label={this.props.dict['model.form.tablename']}>
                    {getFieldDecorator('sheet', {
                      initialValue: verify.sheet || '',
                      rules: [
                        {
                          required: true,
                          message: this.props.dict['form.required.input'] + this.props.dict['header.form.tablename'] + '!'
                          message: this.props.dict['form.required.input'] + this.props.dict['model.form.tablename'] + '!'
                        }
                      ]
                    })(<Input placeholder="" autoComplete="off" />)}
@@ -688,7 +713,7 @@
            <Table
              bordered
              rowKey="uuid"
              className="custom-table"
              className="custom-table excel-custom-table"
              dataSource={verify.columns}
              columns={excelColumns}
              pagination={false}