From 9e502880847d2b798d956ba36a92f9cbdec4f823 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 01 八月 2025 09:08:27 +0800
Subject: [PATCH] 调拔单需要据原库区,筛选出库库存信息 入出库历史单据界面优化
---
rsf-admin/src/page/orders/asnOrder/AsnWareModal.jsx | 49 ++++++++++++++++++++++++++++++++-----------------
1 files changed, 32 insertions(+), 17 deletions(-)
diff --git a/rsf-admin/src/page/orders/asnOrder/AsnWareModal.jsx b/rsf-admin/src/page/orders/asnOrder/AsnWareModal.jsx
index 8f3788b..cc7f9f6 100644
--- a/rsf-admin/src/page/orders/asnOrder/AsnWareModal.jsx
+++ b/rsf-admin/src/page/orders/asnOrder/AsnWareModal.jsx
@@ -12,6 +12,7 @@
Paper,
styled
} from '@mui/material';
+import { EDIT_MODE, DEFAULT_START_PAGE, DEFAULT_PAGE_SIZE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
import DialogCloseButton from "../../components/DialogCloseButton";
import { useTranslate, useNotify, useRefresh } from 'react-admin';
import request from '@/utils/request';
@@ -20,17 +21,17 @@
import TreeSelectInput from "@/page/components/TreeSelectInput";
const AsnWareModal = (props) => {
const { open, setOpen, data, setData } = props;
-
const translate = useTranslate();
const notify = useNotify();
const refresh = useRefresh();
-
const handleClose = (event, reason) => {
if (reason !== "backdropClick") {
setOpen(false);
}
};
-
+ const [page, setPage] = useState({ page: DEFAULT_START_PAGE, pageSize: DEFAULT_PAGE_SIZE });
+ const [rowCount, setRowCount] = useState(0);
+ const [isLoading, setIsLoading] = useState(false);
const [formData, setFormData] = useState({});
const [tableData, setTableData] = useState([]);
const [dyFields, setDyFields] = useState([]);
@@ -60,11 +61,12 @@
return acc;
}, {});
return {
+ ...el,
matnrId: el.id,
maktx: el.name,
matnrCode: el.code,
- stockUnit: el.stockUnit || '',
- purUnit: el.purchaseUnit || '',
+ stockUnit: el.unit,
+ purUnit: el.unit,
...dynamicFields
}
}))
@@ -74,22 +76,26 @@
};
const getData = async () => {
+ setIsLoading(true)
const res = await request.post(`/matnr/page`, {
...formData,
- current: 1,
- pageSize: 100,
+ current: page?.page,
+ pageSize: page?.pageSize,
orderBy: "create_time desc"
});
if (res?.data?.code === 200) {
setTableData(res.data.data.records);
+ console.log(res.data);
+ setRowCount(res.data?.data.total)
} else {
notify(res.data.msg);
}
+ setIsLoading(false)
};
useEffect(() => {
getData();
- }, [open]);
+ }, [open, page]);
const handleSearch = () => {
getData()
@@ -157,6 +163,10 @@
<AsnWareModalTable
tableData={tableData}
setTableData={setTableData}
+ page={page}
+ rowCount={rowCount}
+ setPage={setPage}
+ isLoading={isLoading}
dyFields={dyFields}
setDyFields={setDyFields}
selectedRows={selectedRows}
@@ -176,33 +186,27 @@
};
export default AsnWareModal;
-
-const AsnWareModalTable = ({ tableData, setTableData, selectedRows, setSelectedRows, dyFields, setDyFields }) => {
+const AsnWareModalTable = ({ tableData, isLoading, page, setPage, rowCount, setTableData, selectedRows, setSelectedRows, dyFields, setDyFields }) => {
const translate = useTranslate();
const notify = useNotify();
-
const [columns, setColumns] = useState([
// { field: 'id', headerName: 'ID', width: 100 },
- { field: 'name', headerName: translate('table.field.matnr.name'), width: 300 },
{ field: 'code', headerName: translate('table.field.matnr.code'), width: 200 },
+ { field: 'name', headerName: translate('table.field.matnr.name'), width: 300 },
{ field: 'groupId$', headerName: translate('table.field.matnr.groupId'), width: 100 },
{ field: 'spec', headerName: translate('table.field.matnr.spec'), width: 100 },
{ field: 'model', headerName: translate('table.field.matnr.model'), width: 100 },
{ field: 'weight', headerName: translate('table.field.matnr.weight'), width: 100 },
-
{ field: 'describle', headerName: translate('table.field.matnr.describle'), width: 100 },
{ field: 'nromNum', headerName: translate('table.field.matnr.nromNum'), width: 100 },
{ field: 'unit', headerName: translate('table.field.matnr.unit'), width: 100 },
- { field: 'purchaseUnit', headerName: translate('table.field.matnr.purUnit'), width: 100 },
+ { field: 'purUnit', headerName: translate('table.field.matnr.purUnit'), width: 100 },
{ field: 'stockUnit', headerName: translate('table.field.matnr.stockUnit'), width: 100 },
{ field: 'stockLeval$', headerName: translate('table.field.matnr.stockLevel'), width: 100, sortable: false },
])
-
-
const handleSelectionChange = (ids) => {
setSelectedRows(ids)
-
};
useEffect(() => {
@@ -243,6 +247,17 @@
disableColumnMenu={true}
disableColumnSorting
disableMultipleColumnsSorting
+ rowCount={rowCount}
+ paginationMode="server"
+ paginationModel={page}
+ onPaginationModelChange={setPage}
+ loading={isLoading}
+ slotProps={{
+ loadingOverlay: {
+ variant: 'linear-progress',
+ noRowsVariant: 'linear-progress',
+ },
+ }}
/>
</div>
);
--
Gitblit v1.9.1