tsg-web/src/views/rcgl/zmjk/ModalToolBar.js

126 lines
3.5 KiB
JavaScript

import React, { useEffect, useState } from 'react';
import { Form, Input, Button, DatePicker } from 'antd';
import moment from 'moment';
import NormalSelect from '../../../components/Form/NormalSelect';
const { RangePicker } = DatePicker;
const ToolBar = ({ setSearchVal, exportFile,item }) => {
const optionsType = [
{
label: "今日",
value: 1
},
{
label: "近一周",
value: 2
},
{
label: "近一月",
value: 3
},
{
label: "近三月",
value: 4
},
{
label: "近一年",
value: 5
},
]
const types = [
{ label: "主坝", value: 1 },
{ label: "副坝", value: 2 },
{ label: "灌溉发电洞", value: 3 },
]
const [form] = Form.useForm();
const onFinish = (values) => {
let dateTimeSo;
if (values.tm) {
dateTimeSo = {
start: moment(values.tm[0]).format('YYYY-MM-DD 00:00:00'),
end: moment(values.tm[1]).format('YYYY-MM-DD 23:59:59')
}
}
delete values.tm
setSearchVal({ ...values, dateTimeRangeSo:dateTimeSo });
}
const onValuesChange = (e) => {
switch (e.ranger) {
case 1:
form.setFieldValue("tm",[moment().startOf("day"),moment()])
break;
case 2:
form.setFieldValue("tm",[moment().subtract(7, 'days'),moment()])
break;
case 3:
form.setFieldValue("tm",[moment().subtract(1, 'months'),moment()])
break;
case 4:
form.setFieldValue("tm",[moment().subtract(3, 'months'),moment()])
break;
case 5:
form.setFieldValue("tm",[moment().subtract(1, 'years'),moment()])
break;
default:
break;
}
}
useEffect(() => {
if (item) {
let dateTimeSo = {
start: moment().subtract(7, "days").format('YYYY-MM-DD 00:00:00'),
end: moment().format('YYYY-MM-DD 00:00:00')
}
form.setFieldValue("tm", [moment(dateTimeSo.start), moment(dateTimeSo.end)])
form.setFieldValue("stcd", item.stcd)
setSearchVal({dateTimeRangeSo:dateTimeSo, stcd:item.stcd})
}
}, [item])
return (
<>
<div style={{ display: 'flex', justifyContent: 'space-between' }}>
<Form form={form} className='toolbarBox' layout="inline" onFinish={onFinish} onValuesChange={onValuesChange}>
<Form.Item label="闸门名称" name="stcd">
<NormalSelect
style={{ width: '150px' }}
options={[{label:'工作闸门',value:"1"},{label:'检修闸门',value:"2"}]}
allowClear={false}
disabled={true}
/>
</Form.Item>
<Form.Item label="日期范围" name="tm">
<RangePicker
allowClear
style={{ width: "220px" }}
format="YYYY-MM-DD"
/>
</Form.Item>
<Form.Item label="常用时段" name="ranger">
<NormalSelect
allowClear
style={{ width: "100px" }}
options={optionsType}
/>
</Form.Item>
<Form.Item>
<Button type="primary" htmlType="submit">查询</Button>
</Form.Item>
<Form.Item>
<Button onClick={() => form.resetFields()}>重置</Button>
</Form.Item>
<Form.Item>
<Button onClick={() => exportFile()}>导出</Button>
</Form.Item>
</Form>
</div>
</>
);
}
export default ToolBar;