From 48b45b5e63f9925c63c951093c4cf596d89683a2 Mon Sep 17 00:00:00 2001 From: vincentlu <t1341870251@gmail.com> Date: 星期一, 11 八月 2025 10:34:22 +0800 Subject: [PATCH] # --- rsf-admin/src/page/orders/check/CheckPreviewTable.jsx | 132 ++++++++++++++++++++++++++++++++----------- 1 files changed, 98 insertions(+), 34 deletions(-) diff --git a/rsf-admin/src/page/orders/check/CheckPreviewTable.jsx b/rsf-admin/src/page/orders/check/CheckPreviewTable.jsx index 3fee942..9bcbf61 100644 --- a/rsf-admin/src/page/orders/check/CheckPreviewTable.jsx +++ b/rsf-admin/src/page/orders/check/CheckPreviewTable.jsx @@ -1,6 +1,8 @@ -import { Box, Card, Grid, LinearProgress, Select, MenuItem, ListItemText } from "@mui/material"; +import { Box, Card, Grid, LinearProgress, Select, MenuItem, ListItemText, TextField } from "@mui/material"; import React, { useState, useRef, useEffect, useMemo } from "react"; +import QueryStatsIcon from '@mui/icons-material/QueryStats'; +import request from '@/utils/request'; import { DataGrid, useGridApiContext, GridActionsCellItem, useGridApiRef } from '@mui/x-data-grid'; import { List, @@ -19,18 +21,18 @@ } from 'react-admin'; const CheckPreviewTable = (props) => { - const { rows, gridRef, setRows, record, selectedIds, setSelectedIds, setDialog, formData } = props; + const { rows, gridRef, setRows, record, lefSelectedIds, setLeftSelectedIds, selectedMatnr, setDialog, formData } = props; // const translate = useTranslate(); // const refresh = useRefresh(); // const notify = useNotify(); gridRef.current = useGridApiRef(); const translate = useTranslate(); - useEffect(() => { - if (selectedIds.length > 0) { - console.log(selectedIds); - } - }, [selectedIds]) + // useEffect(() => { + // if (lefSelectedIds.length > 0) { + // console.log(lefSelectedIds); + // } + // }, [lefSelectedIds]) const baseColumns = [ { field: 'locCode', headerName: '搴撲綅', width: 110 }, @@ -113,25 +115,83 @@ }); const CustomToolBar = () => { + const [queryParams, setQueryParams] = useState({ locCode: null, channel: null, matnrCode: selectedMatnr }); + const notify = useNotify(); + const queryClick = async () => { + const { data: { code, data, msg } } = await request.post('/check/locs/', queryParams); + if (code === 200) { + setRows(data) + } else { + notify(msg); + } + } + + const handleChange = (e) => { + const { name, value } = e.target; + setQueryParams(() => ({ + ...queryParams, + [name]: value + })); + + }; + const selectSiteNo = () => { setDialog(true) } return ( - <Box sx={{ - p: 1, - display: 'flex', - justifyContent: 'flex-end', - borderTop: '1px solid rgba(224, 224, 224, 1)' - }}> - <Button - onClick={selectSiteNo} - variant="outlined" - label="toolbar.modiftySite" - size="medium" - sx={{ mr: 1 }} /> - </Box> + <> + <Box sx={{ + p: 1, + display: 'flex', + justifyContent: 'space-between', + borderTop: '1px solid rgba(224, 224, 224, 1)' + }}> + <Box sx={{ + '& > :not(style)': { m: 1, width: '25ch' }, + display: 'flex', + }}> + <TextField + label={translate("table.field.stockTransfer.inputLoc")} + size="small" + name="locCode" + value={queryParams?.locCode} + onChange={handleChange} + sx={{ mr: 1 }} /> + + <TextField + label={translate("table.field.stockTransfer.inputChannel")} + size="small" + name="channel" + value={queryParams?.channel} + onChange={handleChange} + sx={{ mr: 1 }} /> + + <Box sx={{ + '& > :not(style)': { m: 1, width: '11ch' }, + }}> + <Button variant="contained" + size="medium" + startIcon={<QueryStatsIcon />} + label="toolbar.query" + onClick={queryClick} /> + </Box> + </Box> + <Box sx={{ + '& > :not(style)': { m: 1, width: '13ch' }, + }}> + <Button + onClick={selectSiteNo} + variant="outlined" + label="toolbar.modiftySite" + size="medium" + sx={{ mr: 1 }} /> + </Box> + </Box> + + </> ); } + const OutStockSite = (params) => { const { id, field, siteNo, row: { staNos } } = params; @@ -184,20 +244,24 @@ } return ( - <DataGrid - storeKey={"locItemPreview"} - rows={rows} - columns={columns} - slots={{ toolbar: CustomToolBar }} - apiRef={gridRef} - checkboxSelection - disableRowSelectionOnClick - hideFooterPagination={true} // 闅愯棌鍒嗛〉鎺т欢 - hideFooter={false} - onRowSelectionModelChange={(ids) => { - setSelectedIds(ids) - }} - /> + <Box sx={{ maxHeight: 780 }}> + <DataGrid + sx={{ maxHeight: 730 }} + storeKey={"locItemPreview"} + rows={rows} + columns={columns} + slots={{ toolbar: CustomToolBar }} + apiRef={gridRef} + checkboxSelection + disableRowSelectionOnClick + hideFooterPagination={true} // 闅愯棌鍒嗛〉鎺т欢 + hideFooter={false} + onRowSelectionModelChange={(ids) => { + setLeftSelectedIds(ids) + }} + /> + </Box> + ) } -- Gitblit v1.9.1