SearchForm.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. import React from 'react';
  2. import { Form, Select, DatePicker, Button } from 'antd';
  3. import dayjs from 'dayjs';
  4. const { Option } = Select;
  5. const { MonthPicker } = DatePicker;
  6. function SearchForm(props) {
  7. const { form, onSearch, typeList, project, loading } = props;
  8. const formItemLayout = {
  9. labelCol: { span: 5 },
  10. wrapperCol: { span: 18 },
  11. };
  12. // const handleSearch = () => {
  13. // form.validateFields((error, values) => {
  14. // if (error) return;
  15. // var weekOfday = dayjs(values.time).format('E'); //计算指定日期是这周第几天
  16. // var last_monday = dayjs(values.time)
  17. // .subtract(weekOfday - 1, 'days')
  18. // .format('YYYY-MM-DD'); //周一日期
  19. // var last_sunday = dayjs(values.time)
  20. // .add(7 - weekOfday, 'days')
  21. // .format('YYYY-MM-DD'); //周日日期
  22. // onSearch({
  23. // s_time: last_monday,
  24. // e_time: last_sunday,
  25. // parent_id: values.type,
  26. // project_id: values.project,
  27. // });
  28. // });
  29. // };
  30. const handleChange = (data) => {
  31. var month = dayjs(data).month(); //计算指定日期是这周第几天
  32. var start = dayjs(data).date(1).format('YYYY-MM-DD'); //本月第一天
  33. var end = dayjs(data)
  34. .month(month + 1)
  35. .date(0)
  36. .format('YYYY-MM-DD'); //本月最后一天
  37. onSearch({
  38. s_time: start,
  39. e_time: end,
  40. });
  41. };
  42. return (
  43. <Form layout="inline" {...formItemLayout}>
  44. {/* <Form.Item label="分类">
  45. {form.getFieldDecorator('type', {
  46. rules: [
  47. {
  48. require: true,
  49. message: '请选择分类',
  50. },
  51. ],
  52. })(
  53. <Select style={{ width: 200 }}>
  54. {typeList.map(item => (
  55. <Option key={item.id + ''}>{item.name}</Option>
  56. ))}
  57. </Select>
  58. )}
  59. </Form.Item>
  60. {form.getFieldValue('type') == 3 && (
  61. <Form.Item label="项目">
  62. {form.getFieldDecorator('project', {
  63. initialValue: String(project[0].ID),
  64. })(
  65. <Select style={{ width: 200 }}>
  66. {project.map(item => (
  67. <Option key={String(item.ID)}>{item.Name}</Option>
  68. ))}
  69. </Select>
  70. )}
  71. </Form.Item>
  72. )} */}
  73. <Form.Item label="时间">
  74. {form.getFieldDecorator(
  75. 'time',
  76. {},
  77. )(
  78. <MonthPicker
  79. onChange={(data) => handleChange(data)}
  80. placeholder="选择月份"
  81. />,
  82. )}
  83. </Form.Item>
  84. {/* <Form.Item>
  85. <Button type="primary" loading={loading} onClick={handleSearch}>
  86. 查询
  87. </Button>
  88. </Form.Item> */}
  89. </Form>
  90. );
  91. }
  92. export default Form.create()(SearchForm);