From e918d4fa4f5065b51be706f21da6793c378c9aaf Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期六, 16 八月 2025 17:05:05 +0800 Subject: [PATCH] 接口文档修改 --- rsf-admin/src/page/statistics/stockManage/WarehouseStockInfo.jsx | 108 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 69 insertions(+), 39 deletions(-) diff --git a/rsf-admin/src/page/statistics/stockManage/WarehouseStockInfo.jsx b/rsf-admin/src/page/statistics/stockManage/WarehouseStockInfo.jsx index deaf6ff..b781f69 100644 --- a/rsf-admin/src/page/statistics/stockManage/WarehouseStockInfo.jsx +++ b/rsf-admin/src/page/statistics/stockManage/WarehouseStockInfo.jsx @@ -50,7 +50,6 @@ import SaveIcon from '@mui/icons-material/Save'; import request from '@/utils/request'; import { Add, Edit, Delete } from '@mui/icons-material'; -import _, { set } from 'lodash'; import { DataGrid, useGridApiRef, GRID_DATE_COL_DEF, GRID_DATETIME_COL_DEF, getGridDateOperators, useGridApiContext } from '@mui/x-data-grid'; import { LocalizationProvider, DatePicker, DateTimePicker } from '@mui/x-date-pickers'; import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs'; @@ -65,16 +64,18 @@ const translate = useTranslate(); const notify = useNotify(); const refresh = useRefresh(); + const [page, setPage] = useState(0); + const [pageSize, setPageSize] = useState(100); + const [totalRowCount, setTotalRowCount] = useState(0); const [disabled, setDisabled] = useState(false) + const [loading, setLoading] = useState(false); const [createDialog, setCreateDialog] = useState(false); const tableRef = useRef(); useEffect(() => { - if (open && record !== 0) { - requestGetBody() - } - setDisabled(false) - }, [open]) + requestGetBody() + // setDisabled(false) + }, [open, page, pageSize]) const handleClose = (event, reason) => { if (reason !== "backdropClick") { @@ -103,16 +104,16 @@ const handleSubmit = async () => { setFinally() setDisabled(true) - const parmas = { - "purchaseId": record, - "items": tabelData, - } - const res = await request.post(`/asnOrder/purchases/save`, parmas); - if (res?.data?.code === 200) { - notify(res.data.msg); - } else { - notify(res.data.msg); - } + // const parmas = { + // "purchaseId": record, + // "items": tabelData, + // } + // const res = await request.post(`/asnOrder/purchases/save`, parmas); + // if (res?.data?.code === 200) { + // notify(res.data.msg); + // } else { + // notify(res.data.msg); + // } setOpen(false); refresh(); resetData() @@ -120,12 +121,21 @@ }; const requestGetBody = async () => { - const res = await request.post(`warehouse/stock/page`, { matnrCode: record }); - if (res?.data?.code === 200) { - setTableData(res.data.data.records) - } else { - notify(res.data.msg); + setLoading(true); + try { + const res = await request.post(`warehouse/stock/info`, { page: page + 1, pageSize: pageSize, stock: record, aggType: record?.aggType }); + if (res?.data?.code === 200) { + setTableData(res.data.data.records) + setTotalRowCount(res.data.data.total) + } else { + notify(res.data.msg); + } + } catch (error) { + + } finally { + setLoading(false); } + } const [selectedRows, setSelectedRows] = useState([]); @@ -155,9 +165,16 @@ <DialogContent sx={{ mt: 2 }}> <Box></Box> <Box sx={{ mt: 2 }}> - <AsnOrderModalTable tabelData={tabelData} + <AsnOrderModalTable + tabelData={tabelData} setTableData={setTableData} record={record} + page={page} + pageSize={pageSize} + loading={loading} + setPage={setPage} + setPageSize={setPageSize} + totalRowCount={totalRowCount} selectedRows={selectedRows} setSelectedRows={setSelectedRows} tableRef={tableRef} /> @@ -230,26 +247,32 @@ ); }; -const AsnOrderModalTable = ({ tabelData, setTableData, record, selectedRows, setSelectedRows, tableRef }) => { +const AsnOrderModalTable = ({ tabelData, setTableData, record, selectedRows, setSelectedRows, tableRef, page, pageSize, totalRowCount, setPageSize, setPage, loading }) => { const translate = useTranslate(); const notify = useNotify(); const [columns, setColumns] = useState([ { - field: 'matnrCode', - headerName: translate('table.field.asnOrderItem.matnrCode'), + field: 'warehouse$', + headerName: translate('table.field.warehouseStock.warehouse'), width: 130, editable: false, }, { - field: 'matnrName', + field: 'matnrCode', + headerName: translate('table.field.warehouseStock.matnrCode'), + width: 130, + editable: false, + }, + { + field: 'maktx', headerName: translate('table.field.asnOrderItem.maktx'), width: 250, editable: false, }, { - field: 'splrName', - headerName: translate('table.field.asnOrderItem.splrName') + "*", + field: 'locCode', + headerName: translate('table.field.warehouseStock.locCode'), minWidth: 150, flex: 1, editable: false, @@ -258,15 +281,15 @@ ), }, { - field: 'platItemId', - headerName: translate('table.field.asnOrderItem.platItemId') + "*", + field: 'batch', + headerName: translate('table.field.warehouseStock.batch'), minWidth: 100, flex: 1, editable: false, }, { field: 'anfme', - headerName: translate('table.field.asnOrderItem.anfme') + "*", + headerName: translate('table.field.warehouseStock.anfme'), type: 'number', minWidth: 100, flex: 1, @@ -275,7 +298,7 @@ }, { field: 'qty', - headerName: translate('table.field.asnOrderItem.qty') + "*", + headerName: translate('table.field.warehouseStock.qty'), type: 'number', minWidth: 100, flex: 1, @@ -283,7 +306,7 @@ }, { field: 'unit', - headerName: translate('table.field.asnOrderItem.stockUnit'), + headerName: translate('table.field.warehouseStock.unit'), minWidth: 100, flex: 1, editable: false, @@ -347,16 +370,23 @@ return ( - <div style={{ height: 400, width: '100%' }}> + <div style={{ height: 500, width: '100%' }}> <DataGrid apiRef={tableRef} rows={tabelData} columns={columns} disableRowSelectionOnClick getRowId={(row) => row.id} - disableColumnFilter - disableColumnSelector - disableColumnSorting + rowCount={totalRowCount} + paginationMode="server" + page={page} + pageSize={pageSize} + onPageChange={(newPage) => { + setPage(newPage) + }} + onPageSizeChange={(newPageSize) => { + setPageSize(newPageSize) + }} disableMultipleColumnsSorting processRowUpdate={processRowUpdate} initialState={{ @@ -366,11 +396,11 @@ }, }, }} - pageSizeOptions={[10, 25, 50, 100]} - editMode="row" + pageSizeOptions={[15, 25, 50, 100]} checkboxSelection onRowSelectionModelChange={handleSelectionChange} selectionModel={selectedRows} + loading={loading} sx={{ '& .MuiDataGrid-cell input': { border: '1px solid #ccc' -- Gitblit v1.9.1