WorkListModel.jsx 2.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. import {
  2. Button,
  3. Modal,
  4. DatePicker,
  5. } from 'antd';
  6. import { useState, useRef } from 'react';
  7. import PageTable from '@/components/PageTable';
  8. import moment from 'moment';
  9. import { history } from 'umi';
  10. import { getJobList } from '@/services/job'
  11. const formatterTime = (val) => {
  12. return val ? moment(val).format('YYYY-MM-DD HH:mm') : '';
  13. };
  14. const { RangePicker } = DatePicker;
  15. export default (props) => {
  16. const { editModal, onCancel, machineryId } = props
  17. const actionRef = useRef();
  18. const [start, setStartDate] = useState()
  19. const [end, setEndDate] = useState()
  20. const handelChange = (date, dateStrings) => {
  21. setStartDate(dateStrings[0])
  22. setEndDate(dateStrings[1])
  23. }
  24. const Reset = () => {
  25. setStartDate()
  26. setEndDate()
  27. actionRef.current.reload();
  28. }
  29. const goDetail = (id) => {
  30. history.push(`./GIS/detail.jsx?id=` + id);
  31. }
  32. const columns = [
  33. {
  34. title: '订单号',
  35. dataIndex: 'orderNo',
  36. key: 'orderNo',
  37. search: false
  38. },
  39. {
  40. title: '农机手',
  41. dataIndex: 'workerName',
  42. key: 'workerName',
  43. search: false
  44. },
  45. {
  46. title: '作业时间',
  47. dataIndex: 'endDate',
  48. key: 'endDate',
  49. render: (t, render) => formatterTime(render.startDate) + ' ~ ' + formatterTime(render.endDate),
  50. renderFormItem: (_, record) => <RangePicker placeholder={['开始日期', '结束日期']} format='YYYY-MM-DD' onChange={handelChange} />
  51. },
  52. {
  53. title: '操作',
  54. valueType: 'option',
  55. render: (_, record) => [
  56. <Button
  57. style={{ padding: 0 }}
  58. type="link"
  59. key={1}
  60. onClick={() => goDetail(record.jobId)}
  61. >
  62. 查看GIS
  63. </Button>
  64. ],
  65. }
  66. ]
  67. return (
  68. <Modal
  69. forceRender
  70. width='1024px'
  71. title='农机GIS列表'
  72. visible={editModal}
  73. onCancel={onCancel}
  74. destroyOnClose={true}
  75. footer={null}
  76. >
  77. <PageTable
  78. request={getJobList}
  79. actionRef={actionRef}
  80. columns={columns}
  81. rowKey="jobId"
  82. options={false}
  83. params={{ machineryId: machineryId, start, end }}
  84. onReset={Reset}
  85. />
  86. </Modal>
  87. )
  88. }