From 3df2d3624c6b768d29670b537f8d6a71d3ef122c Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 12 四月 2020 22:04:53 +0800
Subject: [PATCH] 2020-04-12

---
 src/templates/zshare/verifycardexcelin/customscript/index.jsx |   63 ++++++++++++++++++++++++-------
 1 files changed, 49 insertions(+), 14 deletions(-)

diff --git a/src/templates/zshare/verifycardexcelin/customscript/index.jsx b/src/templates/zshare/verifycardexcelin/customscript/index.jsx
index 7302369..51513c3 100644
--- a/src/templates/zshare/verifycardexcelin/customscript/index.jsx
+++ b/src/templates/zshare/verifycardexcelin/customscript/index.jsx
@@ -1,6 +1,10 @@
 import React, {Component} from 'react'
 import PropTypes from 'prop-types'
-import { Form, Row, Col, Input, Button, notification } from 'antd'
+import { Form, Row, Col, Input, Button, notification, Modal } from 'antd'
+import moment from 'moment'
+
+import Utils from '@/utils/utils.js'
+import Api from '@/api'
 import './index.scss'
 
 const { TextArea } = Input
@@ -11,23 +15,34 @@
     btn: PropTypes.object,          // 鎸夐挳淇℃伅
     scripts: PropTypes.array,       // 鑷畾涔夎剼鏈垪琛�
     isdefault: PropTypes.any,       // 鏄惁浣跨敤榛樿sql
-    usefulfields: PropTypes.string, // 鍙敤瀛楁
+    usefulfields: PropTypes.any,    // 鍙敤瀛楁
     scriptsChange: PropTypes.func   // 琛ㄥ崟
   }
 
   state = {
     editItem: null,
-    usefulfields: null
+    usefulfields: null,
+    loading: false,
+    verifySql: ''
   }
 
   UNSAFE_componentWillMount () {
-    const {usefulfields} = this.props
+    const {usefulfields, btn} = this.props
 
     let fields = usefulfields.map(item => item.Column)
-    fields = ['BID', 'ID', ...fields]
-    fields = Array.from(new Set(fields))
+    if (!fields.includes('ID')) {
+      fields.unshift('ID')
+    }
+    if (!fields.includes('BID')) {
+      fields.unshift('BID')
+    }
 
+    let _sql = `Declare @${btn.sheet} table (${usefulfields.map(item => item.Column + ' ' + item.type).join(',')},jskey nvarchar(50) )
+      Declare @UserName nvarchar(50),@FullName nvarchar(50)
+    `
+    
     this.setState({
+      verifySql: _sql,
       usefulfields: fields.join(', ')
     })
   }
@@ -40,7 +55,7 @@
 
       this.props.form.setFieldsValue({
         sql: `Insert into ${btn.sheet} (${fields},createuserid,createuser,createstaff,bid) 
-        Select ${fields},@userid,@username,@fullname,@BID From @${btn.sheet}`
+        Select ${fields},@userid@,@username,@fullname,@BID@ From @${btn.sheet}`
       })
     }
   }
@@ -106,12 +121,32 @@
           return
         }
 
-        this.props.scriptsChange(values)
-        this.setState({
-          editItem: null
-        })
-        this.props.form.setFieldsValue({
-          sql: ''
+        let param = {
+          func: 's_debug_sql',
+          LText: this.state.verifySql + values.sql
+        }
+        param.LText = Utils.formatOptions(param.LText)
+        param.timestamp = moment().format('YYYY-MM-DD HH:mm:ss') + '.000'
+        param.secretkey = Utils.encrypt(param.LText, param.timestamp)
+        
+        this.setState({loading: true})
+        Api.getLocalConfig(param).then(res => {
+          if (res.status) {
+            this.props.scriptsChange(values)
+            this.setState({
+              loading: false,
+              editItem: null
+            })
+            this.props.form.setFieldsValue({
+              sql: ''
+            })
+          } else {
+            this.setState({loading: false})
+
+            Modal.error({
+              title: res.message
+            })
+          }
         })
       }
     })
@@ -153,7 +188,7 @@
             </Form.Item>
           </Col>
           <Col span={3} className="add">
-            <Button onClick={this.handleConfirm} type="primary" className="add-row">
+            <Button onClick={this.handleConfirm} loading={this.state.loading} type="primary" className="add-row">
               纭畾
             </Button>
           </Col>

--
Gitblit v1.8.0