From fe21d23b147ed5cec22b4f76a88840b05495d4ad Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期六, 18 六月 2022 22:33:59 +0800 Subject: [PATCH] 2022-06-18 --- src/menu/datasource/verifycard/customscript/index.jsx | 73 ++++++++++++++++++++++++++++-------- 1 files changed, 57 insertions(+), 16 deletions(-) diff --git a/src/menu/datasource/verifycard/customscript/index.jsx b/src/menu/datasource/verifycard/customscript/index.jsx index 996e2ff..071c5c7 100644 --- a/src/menu/datasource/verifycard/customscript/index.jsx +++ b/src/menu/datasource/verifycard/customscript/index.jsx @@ -1,20 +1,19 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' +import { is, fromJS } from 'immutable' import { Form, Row, Col, Button, notification, Select } from 'antd' import Utils from '@/utils/utils.js' import CodeMirror from '@/templates/zshare/codemirror' +import MKEmitter from '@/utils/events.js' import './index.scss' class CustomForm extends Component { static propTpyes = { - type: PropTypes.string, // 鑿滃崟绫诲瀷 dict: PropTypes.object, // 瀛楀吀椤� + defaultsql: PropTypes.string, // 榛樿sql setting: PropTypes.object, // 璁剧疆 searches: PropTypes.array, // 鎼滅储鏉′欢 - swhere: PropTypes.string, // where鏉′欢 - arr_field: PropTypes.string, // 鍒楀瓧娈� - regoptions: PropTypes.array, // 姝e垯鏇挎崲 systemScripts: PropTypes.array, // 绯荤粺鑴氭湰 scriptSubmit: PropTypes.func, // 鑴氭湰楠岃瘉鍚庢彁浜� scriptsChange: PropTypes.func // 鑴氭湰楠岃瘉 @@ -34,15 +33,13 @@ if (!item.field) return if (item.type === 'group') { - if (item.transfer === 'true') { - _usefulFields.push(item.field) - } + _usefulFields.push(item.field) _usefulFields.push(item.datefield) _usefulFields.push(item.datefield + '1') } else if (['dateweek', 'datemonth', 'daterange'].includes(item.type)) { _usefulFields.push(item.field) _usefulFields.push(item.field + '1') - } else if (_usefulFields.includes(item.field)) { + } else if (item.type === 'date' && _usefulFields.includes(item.field)) { _usefulFields.push(item.field + '1') } else { _usefulFields.push(item.field) @@ -52,6 +49,33 @@ this.setState({ usefulFields: _usefulFields.join(', ') }) + } + + UNSAFE_componentWillReceiveProps (nextProps) { + if (!is(fromJS(this.props.searches), fromJS(nextProps.searches))) { + + let _usefulFields = [] + nextProps.searches.forEach(item => { + if (!item.field) return + + if (item.type === 'group') { + _usefulFields.push(item.field) + _usefulFields.push(item.datefield) + _usefulFields.push(item.datefield + '1') + } else if (['dateweek', 'datemonth', 'daterange'].includes(item.type)) { + _usefulFields.push(item.field) + _usefulFields.push(item.field + '1') + } else if (item.type === 'date' && _usefulFields.includes(item.field)) { + _usefulFields.push(item.field + '1') + } else { + _usefulFields.push(item.field) + } + }) + + this.setState({ + usefulFields: _usefulFields.join(', ') + }) + } } edit = (record) => { @@ -69,7 +93,7 @@ editItem: null }) this.props.form.setFieldsValue({ - sql: '' + sql: ' ' }) } @@ -127,10 +151,17 @@ editItem: null, loading: false }) + + MKEmitter.emit('editLineId', values.uuid) + this.props.form.setFieldsValue({ - sql: '' + sql: ' ' }) this.props.scriptSubmit(values) + }, () => { + this.setState({ + loading: false + }) }) } }) @@ -138,10 +169,16 @@ selectScript = (value, option) => { let _sql = this.props.form.getFieldValue('sql') - if (_sql) { + if (_sql === ' ') { + _sql = '' + } else if (_sql) { _sql = _sql + ` ` + } + + if (value === 'defaultsql') { + value = this.props.defaultsql } _sql = _sql.replace(/\s{6}$/, '') @@ -178,23 +215,27 @@ {setting.tableName} </Form.Item> </Col> : null} - <Col span={16}> + <Col span={8}> <Form.Item label={'鎶ラ敊瀛楁'} style={{margin: 0}}> ErrorCode, retmsg </Form.Item> </Col> <Col span={24} className="sqlfield"> <Form.Item label={'鍙敤瀛楁'}> - id, bid, loginuid, sessionuid, userid, appkey, time_id, calendarDate, calendarDate1{usefulFields ? ', ' + usefulFields : ''} + id, bid, loginuid, sessionuid, userid, username, fullname, RoleID, mk_departmentcode, mk_organization, login_city, appkey, time_id, orderBy, pageSize, pageIndex{usefulFields ? ', ' + usefulFields : ''}{window.GLOB.urlFields && window.GLOB.urlFields.length > 0 ? ', ' + window.GLOB.urlFields.join(', ') : ''} </Form.Item> </Col> - <Col span={10}> - <Form.Item label={'蹇嵎娣诲姞'} style={{marginBottom: 0}}> + <Col span={10} style={{width: '43%'}}> + <Form.Item label={'蹇嵎娣诲姞'} labelCol={{xs: { span: 24 }, sm: { span: 6 }}} wrapperCol={ {xs: { span: 24 }, sm: { span: 18 }} } style={{marginBottom: 0}}> <Select showSearch filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0} - onChange={this.selectScript} + onSelect={this.selectScript} > + <Select.Option style={{whiteSpace: 'normal'}} key="default" value="defaultsql">榛樿sql</Select.Option> + <Select.Option key="debugger" value={`z_debug: select @ErrorCode='E',@retmsg='娴嬭瘯鏂偣' goto aaa`}> + 娴嬭瘯鏂偣 + </Select.Option> {systemScripts.map((option, i) => <Select.Option style={{whiteSpace: 'normal'}} key={i} value={option.value}>{option.name}</Select.Option> )} -- Gitblit v1.8.0