添加页面合计

This commit is contained in:
liu
2026-09-16 23:51:57 +08:00
parent 80cbd452e5
commit 751e8a196c
5 changed files with 129 additions and 2 deletions
+33 -1
View File
@@ -1,5 +1,6 @@
import React, { useEffect, useState } from 'react';
import { Button, DatePicker, Form, Modal, Select, Typography } from 'antd';
import { Button, DatePicker, Form, Modal, Select, Table, Typography } from 'antd';
import type { TableProps } from 'antd';
import { DownloadOutlined } from '@ant-design/icons';
import dayjs from 'dayjs';
import XinTable from '@/components/XinTable';
@@ -165,6 +166,36 @@ const ContainerReturnPage: React.FC = () => {
},
];
/** 列表底部合计行:统计当前页的 压(回)筐数量/压(回)托盘数量/抵扣(附加)金额 */
const renderListSummary: TableProps<IContainerReturn>['summary'] = (pageData) => {
const sums = pageData.reduce(
(acc, row) => ({
box_num: acc.box_num + Number(row.box_num ?? 0),
tray_num: acc.tray_num + Number(row.tray_num ?? 0),
amount: acc.amount + Number(row.amount ?? 0),
}),
{ box_num: 0, tray_num: 0, amount: 0 },
);
return (
<Table.Summary.Row>
<Table.Summary.Cell index={0} colSpan={2} align="center">
<Text strong>本页合计</Text>
</Table.Summary.Cell>
<Table.Summary.Cell index={2} align="center">
<SignedNum value={sums.box_num} />
</Table.Summary.Cell>
<Table.Summary.Cell index={3} align="center">
<SignedNum value={sums.tray_num} />
</Table.Summary.Cell>
<Table.Summary.Cell index={4} colSpan={2} />
<Table.Summary.Cell index={6} align="center">
<SignedAmount value={sums.amount.toFixed(2)} />
</Table.Summary.Cell>
<Table.Summary.Cell index={7} colSpan={3} />
</Table.Summary.Row>
);
};
const tableProps: XinTableProps<IContainerReturn> = {
api: '/recon/container-return',
columns,
@@ -175,6 +206,7 @@ const ContainerReturnPage: React.FC = () => {
editShow: false,
deleteShow: false,
formProps: false,
summary: renderListSummary,
toolBarRender: (dom) => [
<AuthButton key="export" auth="recon.containerReturn.export">
<Button icon={<DownloadOutlined />} onClick={() => setExportOpen(true)}>