|
@@ -1,3 +1,151 @@
|
|
1
|
+import React, { useState, useEffect, useRef } from 'react';
|
|
2
|
+import { DatePicker, Select } from 'antd';
|
|
3
|
+import { PageHeaderWrapper } from '@ant-design/pro-layout';
|
|
4
|
+import moment from 'moment';
|
|
5
|
+import PageTable from '@/components/PageTable';
|
|
6
|
+import { getJobList } from '@/services/job'
|
|
7
|
+import MachinetySelect from '@/components/MachinetySelect';
|
|
8
|
+import { getMachineryTypeList } from '@/services/machineryType';
|
|
9
|
+import { getCooperativeList } from '@/services/cooperative';
|
|
10
|
+
|
|
11
|
+const formatterTime = (val) => {
|
|
12
|
+ return val ? moment(val).format('YYYY-MM-DD HH:mm') : '';
|
|
13
|
+};
|
|
14
|
+const { Option } = Select;
|
|
15
|
+const { RangePicker } = DatePicker;
|
|
16
|
+
|
1
|
17
|
export default (props) => {
|
2
|
|
- return <div>作业统计</div>;
|
|
18
|
+ const [start, setStartDate] = useState()
|
|
19
|
+ const [end, setEndDate] = useState()
|
|
20
|
+
|
|
21
|
+ const [machineryTypeList, setMachineryTypeList] = useState([]);
|
|
22
|
+ const [cooperativeList, setCooperativeList] = useState([]);
|
|
23
|
+
|
|
24
|
+ const handelChange = (date, dateStrings) => {
|
|
25
|
+ setStartDate(dateStrings[0])
|
|
26
|
+ setEndDate(dateStrings[1])
|
|
27
|
+ }
|
|
28
|
+ const ref = useRef();
|
|
29
|
+ const Reset = () => {
|
|
30
|
+ setStartDate()
|
|
31
|
+ setEndDate()
|
|
32
|
+ ref.current.reload();
|
|
33
|
+ }
|
|
34
|
+
|
|
35
|
+ useEffect(() => {
|
|
36
|
+ getCooperativeList({ pageSize: 999 }).then((res) => {
|
|
37
|
+ setCooperativeList(res.records);
|
|
38
|
+ }).catch((err) => {
|
|
39
|
+ console.log(err.message)
|
|
40
|
+ });
|
|
41
|
+ getMachineryTypeList({ pageSize: 999 }).then((res) => {
|
|
42
|
+ setMachineryTypeList(res.records);
|
|
43
|
+ }).catch((err) => {
|
|
44
|
+ console.log(err.message)
|
|
45
|
+ });
|
|
46
|
+ }, []);
|
|
47
|
+ const columns = [
|
|
48
|
+ {
|
|
49
|
+ title: '订单号',
|
|
50
|
+ dataIndex: 'orderNo',
|
|
51
|
+ key: 'orderNo',
|
|
52
|
+ },
|
|
53
|
+
|
|
54
|
+ {
|
|
55
|
+ title: '农机',
|
|
56
|
+ dataIndex: 'machineryId',
|
|
57
|
+ key: 'machineryId',
|
|
58
|
+ hideInTable: true,
|
|
59
|
+ renderFormItem: (item, field, form) => {
|
|
60
|
+ return (
|
|
61
|
+ <MachinetySelect />
|
|
62
|
+ )
|
|
63
|
+ }
|
|
64
|
+ },
|
|
65
|
+ {
|
|
66
|
+ title: '农机型号',
|
|
67
|
+ dataIndex: 'machineryTypeId',
|
|
68
|
+ key: 'machineryTypeId',
|
|
69
|
+ hideInTable: true,
|
|
70
|
+ renderFormItem: (item, field, form) => {
|
|
71
|
+ return (
|
|
72
|
+ <Select>
|
|
73
|
+ {machineryTypeList.map((item) => (
|
|
74
|
+ <Option value={item.typeId} key={item.typeId}>
|
|
75
|
+ {item.name}
|
|
76
|
+ </Option>
|
|
77
|
+ ))}
|
|
78
|
+ </Select>
|
|
79
|
+ )
|
|
80
|
+ }
|
|
81
|
+ },
|
|
82
|
+ {
|
|
83
|
+ title: '合作社',
|
|
84
|
+ dataIndex: 'orgId',
|
|
85
|
+ key: 'orgId',
|
|
86
|
+ hideInTable: true,
|
|
87
|
+ renderFormItem: (item, field, form) => {
|
|
88
|
+ return (
|
|
89
|
+ <Select>
|
|
90
|
+ {cooperativeList.map((item) => (
|
|
91
|
+ <Option value={item.orgId} key={item.orgId}>
|
|
92
|
+ {item.name}
|
|
93
|
+ </Option>
|
|
94
|
+ ))}
|
|
95
|
+ </Select>
|
|
96
|
+ )
|
|
97
|
+ }
|
|
98
|
+ },
|
|
99
|
+ {
|
|
100
|
+ title: '农机名',
|
|
101
|
+ dataIndex: 'machineryName',
|
|
102
|
+ key: 'machineryName',
|
|
103
|
+ search: false
|
|
104
|
+ },
|
|
105
|
+ {
|
|
106
|
+ title: '农机型号',
|
|
107
|
+ dataIndex: 'machineryTypeName',
|
|
108
|
+ key: 'machineryTypeName',
|
|
109
|
+ search: false
|
|
110
|
+ },
|
|
111
|
+ {
|
|
112
|
+ title: '合作社名',
|
|
113
|
+ dataIndex: 'orgName',
|
|
114
|
+ key: 'orgName',
|
|
115
|
+ search: false
|
|
116
|
+ },
|
|
117
|
+ {
|
|
118
|
+ title: '农机手',
|
|
119
|
+ dataIndex: 'workerName',
|
|
120
|
+ key: 'workerName',
|
|
121
|
+ },
|
|
122
|
+ {
|
|
123
|
+ title: '作业面积',
|
|
124
|
+ dataIndex: 'area',
|
|
125
|
+ key: 'area',
|
|
126
|
+ search: false,
|
|
127
|
+ },
|
|
128
|
+ {
|
|
129
|
+ title: '作业时间',//结束时间
|
|
130
|
+ dataIndex: 'endDate',
|
|
131
|
+ key: 'endDate',
|
|
132
|
+ render: (t, render) => formatterTime(render.startDate) + ' ~ ' + formatterTime(render.endDate),
|
|
133
|
+ renderFormItem: (_, record) => <RangePicker placeholder={['开始日期', '结束日期']} format='YYYY-MM-DD' onChange={handelChange} />
|
|
134
|
+ },
|
|
135
|
+ ];
|
|
136
|
+
|
|
137
|
+ return (
|
|
138
|
+ <PageHeaderWrapper>
|
|
139
|
+ <PageTable
|
|
140
|
+ actionRef={ref}
|
|
141
|
+ request={getJobList}
|
|
142
|
+ // expfunc={exportPersonList}
|
|
143
|
+ columns={columns}
|
|
144
|
+ rowKey="jobId"
|
|
145
|
+ params={{ start, end }}
|
|
146
|
+ onReset={Reset}
|
|
147
|
+ options={false}
|
|
148
|
+ />
|
|
149
|
+ </PageHeaderWrapper>
|
|
150
|
+ );
|
3
|
151
|
};
|