From e67ab87058ea64c3a9d24df70f1b9a18a9f14a0e Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期四, 31 七月 2025 16:40:16 +0800
Subject: [PATCH] 调拔单功能优化

---
 rsf-admin/src/page/orders/outStock/MatnrInfoModal.jsx |   32 +++++++++++++++++++++++++++-----
 1 files changed, 27 insertions(+), 5 deletions(-)

diff --git a/rsf-admin/src/page/orders/outStock/MatnrInfoModal.jsx b/rsf-admin/src/page/orders/outStock/MatnrInfoModal.jsx
index 37a571f..169718f 100644
--- a/rsf-admin/src/page/orders/outStock/MatnrInfoModal.jsx
+++ b/rsf-admin/src/page/orders/outStock/MatnrInfoModal.jsx
@@ -13,6 +13,7 @@
     styled
 } from '@mui/material';
 import DialogCloseButton from "../../components/DialogCloseButton";
+import { EDIT_MODE, DEFAULT_START_PAGE, DEFAULT_PAGE_SIZE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting';
 import { useTranslate, useNotify, useRefresh } from 'react-admin';
 import request from '@/utils/request';
 import { DataGrid } from '@mui/x-data-grid';
@@ -35,7 +36,9 @@
     const [tableData, setTableData] = useState([]);
     const [dyFields, setDyFields] = useState([]);
     const [selectedRows, setSelectedRows] = useState([]);
-
+    const [page, setPage] = useState({ page: DEFAULT_START_PAGE, pageSize: DEFAULT_PAGE_SIZE });
+    const [rowCount, setRowCount] = useState(0);
+    const [isLoading, setIsLoading] = useState(false);
     const handleChange = (e) => {
         const { name, value } = e.target;
         setFormData(() => ({
@@ -74,22 +77,27 @@
     };
 
     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);
+            setRowCount(res.data?.data?.total);
+
         } else {
             notify(res.data.msg);
         }
+        setIsLoading(false)
+
     };
 
     useEffect(() => {
         getData();
-    }, [open]);
+    }, [open, page]);
 
     const handleSearch = () => {
         getData()
@@ -158,6 +166,9 @@
                         tableData={tableData}
                         setTableData={setTableData}
                         dyFields={dyFields}
+                        page={page}
+                        rowCount={rowCount}
+                        setPage={setPage}
                         setDyFields={setDyFields}
                         selectedRows={selectedRows}
                         setSelectedRows={setSelectedRows}
@@ -177,7 +188,7 @@
 
 export default MatnrInfoModal;
 
-const AsnWareModalTable = ({ tableData, setTableData, selectedRows, setSelectedRows, dyFields, setDyFields }) => {
+const AsnWareModalTable = ({ tableData, setTableData, page, isLoading, pageSize, setPage, rowCount, selectedRows, setSelectedRows, dyFields, setDyFields }) => {
     const translate = useTranslate();
     const notify = useNotify();
 
@@ -241,6 +252,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