|
@@ -0,0 +1,132 @@
|
|
1
|
+import React, { useRef, useState, useEffect } from 'react';
|
|
2
|
+import moment from 'moment';
|
|
3
|
+import { Button } from 'antd';
|
|
4
|
+import { useSearchParams } from '@umijs/max';
|
|
5
|
+import { getGuaranteeTask } from '@/services/api/guaranteeTask';
|
|
6
|
+import { getGuaranteeDetailList } from '@/services/api/guaranteeTask';
|
|
7
|
+import Styles from './style.less';
|
|
8
|
+
|
|
9
|
+export default (props) => {
|
|
10
|
+ const [dataSource, setDataSource] = useState({});
|
|
11
|
+ const [list, setList] = useState([]);
|
|
12
|
+ const [searchParams] = useSearchParams();
|
|
13
|
+ const id = searchParams.get('id');
|
|
14
|
+
|
|
15
|
+ const onPrint = () => {
|
|
16
|
+ window.print();
|
|
17
|
+ }
|
|
18
|
+
|
|
19
|
+ useEffect(() => {
|
|
20
|
+ if (id) {
|
|
21
|
+ // setLoading(true);
|
|
22
|
+ getGuaranteeTask(id).then(res => {
|
|
23
|
+ // setLoading(false);
|
|
24
|
+ setDataSource(res);
|
|
25
|
+ }).catch(() => {
|
|
26
|
+ // setLoading(false);
|
|
27
|
+ });
|
|
28
|
+
|
|
29
|
+ // setLoading(true);
|
|
30
|
+ getGuaranteeDetailList({ pageNum: 1, pageSize: 500, guaranteeId: id }).then(res => {
|
|
31
|
+ // setLoading(false);
|
|
32
|
+ setList(res.records || []);
|
|
33
|
+ }).catch(() => {
|
|
34
|
+ // setLoading(false);
|
|
35
|
+ })
|
|
36
|
+ }
|
|
37
|
+ }, [id]);
|
|
38
|
+
|
|
39
|
+ const details = list.map(x => `${x.dishName} × ${x.dishAmount}`).join(',');
|
|
40
|
+ const startDate = dataSource.startDate ? moment(dataSource.startDate).format('YYYY-MM-DD') : '';
|
|
41
|
+ const endDate = dataSource.endDate ? moment(dataSource.endDate).format('YYYY-MM-DD') : '';
|
|
42
|
+ const dateStr = `${startDate} ~ ${endDate}`;
|
|
43
|
+
|
|
44
|
+ return (
|
|
45
|
+ <div className={Styles['print-page']}>
|
|
46
|
+ <table className={Styles['print-table']}>
|
|
47
|
+ {/* col 用于固定宽度 */}
|
|
48
|
+ <col />
|
|
49
|
+ <col />
|
|
50
|
+ <col />
|
|
51
|
+ <col />
|
|
52
|
+ <col />
|
|
53
|
+ <col />
|
|
54
|
+ <col />
|
|
55
|
+ <col />
|
|
56
|
+ <thead>
|
|
57
|
+ <tr>
|
|
58
|
+ <th className={Styles['title']} colSpan={8}>江苏省海安军供站军供保障受领单</th>
|
|
59
|
+ </tr>
|
|
60
|
+ <tr className={Styles['sub-title']}>
|
|
61
|
+ <th colSpan={2}><div>军代表:{dataSource.deputyMan || ' '}</div></th>
|
|
62
|
+ <th colSpan={2}><div>电话:{dataSource.deputyPhone || ' '}</div></th>
|
|
63
|
+ <th colSpan={2}><div>通报时间:{dataSource.gotDate || ' '}</div></th>
|
|
64
|
+ <th colSpan={2}><div>受领人:{dataSource.receiver || ' '}</div></th>
|
|
65
|
+ </tr>
|
|
66
|
+ </thead>
|
|
67
|
+ <tbody>
|
|
68
|
+ <tr>
|
|
69
|
+ <td><div>保障序号</div></td>
|
|
70
|
+ <td colSpan={2}><div>{dataSource.guaranteeNo || ' '}</div></td>
|
|
71
|
+ <td><div>军运号</div></td>
|
|
72
|
+ <td colSpan={2}><div>{dataSource.transportNo || ' '}</div></td>
|
|
73
|
+ <td><div>车次</div></td>
|
|
74
|
+ <td><div>{dataSource.tripsNo || ' '}</div></td>
|
|
75
|
+ </tr>
|
|
76
|
+ <tr>
|
|
77
|
+ <td><div>保障日期</div></td>
|
|
78
|
+ <td colSpan={3}>{dateStr}</td>
|
|
79
|
+ <td><div>保障时间</div></td>
|
|
80
|
+ <td colSpan={3}>{dataSource.timeRange || ' '}</td>
|
|
81
|
+ </tr>
|
|
82
|
+ <tr>
|
|
83
|
+ <td rowSpan={2}><div>保障人数</div></td>
|
|
84
|
+ <td rowSpan={2}>{dataSource.totalPersonNum || ' '}</td>
|
|
85
|
+ <td><div>其中回民</div></td>
|
|
86
|
+ <td>{dataSource.huiPersonNum || ' '}</td>
|
|
87
|
+ <td rowSpan={2}><div>伙食标准</div></td>
|
|
88
|
+ <td>{dataSource.standard || ' '}</td>
|
|
89
|
+ </tr>
|
|
90
|
+ <tr>
|
|
91
|
+ <td className={Styles['bd-left']}><div>其中病号</div></td>
|
|
92
|
+ <td>{dataSource.patientNum || ' '}</td>
|
|
93
|
+ <td>套餐: {dataSource.packageName || ' '}</td>
|
|
94
|
+ </tr>
|
|
95
|
+ <tr>
|
|
96
|
+ <td><div>保障地点</div></td>
|
|
97
|
+ <td colSpan={7}>{dataSource.address || ' '}</td>
|
|
98
|
+ </tr>
|
|
99
|
+ <tr>
|
|
100
|
+ <td><div>部队联系人</div></td>
|
|
101
|
+ <td colSpan={3}>{dataSource.concatPerson || ' '}</td>
|
|
102
|
+ <td><div>联系电话</div></td>
|
|
103
|
+ <td colSpan={3}>{dataSource.concatPhone || ' '}</td>
|
|
104
|
+ </tr>
|
|
105
|
+ <tr>
|
|
106
|
+ <td><div>制餐人</div></td>
|
|
107
|
+ <td colSpan={3}>{dataSource.chef || ' '}</td>
|
|
108
|
+ <td><div>联系电话</div></td>
|
|
109
|
+ <td colSpan={3}>{dataSource.chefPhone || ' '}</td>
|
|
110
|
+ </tr>
|
|
111
|
+ <tr>
|
|
112
|
+ <td><div>配送人</div></td>
|
|
113
|
+ <td colSpan={3}>{dataSource.deliveryMan || ' '}</td>
|
|
114
|
+ <td><div>联系电话</div></td>
|
|
115
|
+ <td colSpan={3}>{dataSource.deliveryPhone || ' '}</td>
|
|
116
|
+ </tr>
|
|
117
|
+ <tr className={Styles['cell-lg']}>
|
|
118
|
+ <td>配餐明细</td>
|
|
119
|
+ <td colSpan={7}><div>{details}</div></td>
|
|
120
|
+ </tr>
|
|
121
|
+ <tr className={Styles['cell-lg']}>
|
|
122
|
+ <td>备注</td>
|
|
123
|
+ <td colSpan={7}><div>{dataSource.remark || ' '}</div></td>
|
|
124
|
+ </tr>
|
|
125
|
+ </tbody>
|
|
126
|
+ </table>
|
|
127
|
+ <div className={Styles['print-btn']}>
|
|
128
|
+ <Button type="primary" onClick={onPrint}>打印</Button>
|
|
129
|
+ </div>
|
|
130
|
+ </div>
|
|
131
|
+ )
|
|
132
|
+}
|