From 74960e7d4f3042fb9e0ec54af823a360d4aa2bbe Mon Sep 17 00:00:00 2001 From: liuwh <964324856@qq.com> Date: Tue, 17 Sep 2024 17:17:45 +0800 Subject: [PATCH] 提交 --- gz-customerSystem/src/components/NewTableSearch/index.jsx | 58 ++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 40 insertions(+), 18 deletions(-) diff --git a/gz-customerSystem/src/components/NewTableSearch/index.jsx b/gz-customerSystem/src/components/NewTableSearch/index.jsx index 5964455..e08aa71 100644 --- a/gz-customerSystem/src/components/NewTableSearch/index.jsx +++ b/gz-customerSystem/src/components/NewTableSearch/index.jsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { Form, Row, Col, Input, DatePicker, Select, Button, TreeSelect } from 'antd'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined, SearchOutlined } from '@ant-design/icons'; import * as $$ from '../../utils/utility'; import './index.less'; @@ -16,8 +16,9 @@ * rowNum, // 一行放多少个搜索item * handleRest, // 重置 * handleSearch, // 搜索 + * exportButton //导出按钮 */ -const NewTableSearch = ({ form, itemData, labelLength = 5, rowNum = 3, handleReset, handleSearch }) => { +const NewTableSearch = ({ form, itemData, labelLength = 5, rowNum = 3, handleReset, handleSearch, exportButtonShow = true, exportButton }) => { const [searchMore, setSearchMore] = useState(false); const span = 24 / rowNum; @@ -59,7 +60,7 @@ return ( <Form form={form} labelAlign="right" className="tableSearch"> - <Row gutter={[24, 16]}> + <Row className='tableSearch-searchMore-row' gutter={[24, 16]} > {itemData.map((x, t) => { let placeholder = x.placeholder || setPlaceholder(x.name, x.type); let allowClear = x.allowClear || true; @@ -106,30 +107,50 @@ /> ); } + if (x.type === 'null') { + dom = ( + <Col span={x.span || 8}></Col> + ); + } return ( - <> - <Col span={8} style={display && { display: searchMore ? 'block' : t < lineNum ? 'block' : 'none' }} key={t + 1}> - <Form.Item name={x.name} rules={[rules]} label={<div style={{ width: `${fontSize * labelLength}px` }}>{x.label}</div>}> - {dom} - </Form.Item> - </Col> - <Col span={8}></Col> - <Col span={8}></Col> - </> + <Col span={x.span || 8} style={display && { display: searchMore ? 'block' : t < lineNum ? 'block' : 'none' }} key={t + 1}> + { + x.type === 'null' ? <>{ dom }</> : + <Form.Item name={x.name} rules={[rules]} label={<div style={{ width: `${fontSize * labelLength}px` }}>{x.label}</div>}> + {dom} + </Form.Item> + } + </Col> + // <div> + // <Col span={8} style={display && { display: searchMore ? 'block' : t < lineNum ? 'block' : 'none' }} key={t + 1}> + // <Form.Item name={x.name} rules={[rules]} label={<div style={{ width: `${fontSize * labelLength}px` }}>{x.label}</div>}> + // {dom} + // </Form.Item> + // </Col> + // <Col span={8}></Col> + // <Col span={8}></Col> + // </div> ); })} </Row> + <div className='NewTableSearch-border'></div> <Row style={{ marginTop: '16px' }}> - <Col span={24} style={{ textAlign: 'right' }}> - <Button className="public-buttonMargin" onClick={handleReset}> - 重置 - </Button> - <Button type="primary" htmlType="submit" onClick={handleSearch}> + <Col span={24} style={{ textAlign: 'left' }}> + <Button className="public-buttonMargin" type="primary" htmlType="submit" icon={<SearchOutlined />} onClick={handleSearch}> 查询 + </Button> + { + exportButtonShow && + <Button className="public-buttonMargin" type="primary" ghost htmlType="submit" onClick={exportButton}> + 导出查询结果 + </Button> + } + <Button onClick={handleReset}> + 重置条件 </Button> {display && ( <span className="tableSearch-searchMore" onClick={() => setSearchMore(!searchMore)}> - {!searchMore ? '展开' : '折叠'} + {!searchMore ? '展开更多' : '收起更多'} <DownOutlined className={`tableSearch-searchMore-icon ${searchMore && 'tableSearch-searchMore-iconRotate'}`} /> </span> )} @@ -145,6 +166,7 @@ rowNum: PropTypes.number, handleReset: PropTypes.func, handleSearch: PropTypes.func, + exportButton: PropTypes.func, }; export default NewTableSearch; -- Gitblit v1.8.0