| | |
| | | DeleteButton, |
| | | } from 'react-admin'; |
| | | import { Stack, Grid, Box, Typography, Dialog, DialogTitle, DialogContent, TextField, Button, DialogActions } from '@mui/material'; |
| | | import { EDIT_MODE, DEFAULT_START_PAGE, DEFAULT_PAGE_SIZE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting'; |
| | | import DialogCloseButton from "../../components/DialogCloseButton.jsx"; |
| | | import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting'; |
| | | import StatusSelectInput from "../../components/StatusSelectInput"; |
| | | import CustomerTopToolBar from "../../components/EditTopToolBar"; |
| | | import TreeSelectInput from "@/page/components/TreeSelectInput"; |
| | |
| | | |
| | | const CreateBySelectMats = (props) => { |
| | | const { open, setOpen, data, setData } = props; |
| | | const [page, setPage] = useState(0); |
| | | 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([]); |
| | |
| | | setOpen(false); |
| | | } |
| | | }; |
| | | |
| | | |
| | | const handleChange = (e) => { |
| | | const { name, value } = e.target; |
| | |
| | | } |
| | | })); |
| | | setData([...data, ...value]); |
| | | |
| | | console.log(data); |
| | | setOpen(false); |
| | | reset(); |
| | | }; |
| | | |
| | | const getData = async () => { |
| | | setIsLoading(true) |
| | | const res = await request.post(`/transfer/locs/items`, { |
| | | ...formData, |
| | | current: page, |
| | | pageSize: pageSize, |
| | | current: page?.page, |
| | | pageSize: page?.pageSize, |
| | | orderBy: "create_time desc" |
| | | }); |
| | | if (res?.data?.code === 200) { |
| | | const { data } = res.data; |
| | | setTableData(data?.records); |
| | | setRowCount(data?.total); |
| | | |
| | | } else { |
| | | notify(res.data.msg); |
| | | } |
| | | setIsLoading(false) |
| | | }; |
| | | |
| | | useEffect(() => { |
| | |
| | | rowCount={rowCount} |
| | | pageSize={pageSize} |
| | | setPage={setPage} |
| | | isLoading={isLoading} |
| | | setPageSize={setPageSize} |
| | | dyFields={dyFields} |
| | | setDyFields={setDyFields} |
| | |
| | | export default CreateBySelectMats; |
| | | |
| | | |
| | | const SelectMatsTableView = ({ tableData, page, pageSize, setPage, setPageSize, rowCount, setTableData, selectedRows, setSelectedRows, dyFields, setDyFields }) => { |
| | | const SelectMatsTableView = ({ tableData, page, isLoading, pageSize, setPage, setPageSize, rowCount, setTableData, selectedRows, setSelectedRows, dyFields, setDyFields }) => { |
| | | const translate = useTranslate(); |
| | | const notify = useNotify(); |
| | | const [extendColumns, setExtendColumns] = useState([]); |
| | |
| | | { field: 'wareArea', headerName: translate('table.field.locItem.wareArea'), width: 100, sortable: false }, |
| | | ]) |
| | | |
| | | const getData = async () => { |
| | | const res = await request.post(`/matnr/page`, { |
| | | // const res = await request.post(`/transfer/locs/items`, { |
| | | ...formData, |
| | | current: page, |
| | | pageSize: pageSize, |
| | | orderBy: "create_time desc" |
| | | }); |
| | | if (res?.data?.code === 200) { |
| | | const { data } = res.data; |
| | | console.log('====-->'); |
| | | console.log(data); |
| | | setTableData(data?.records); |
| | | setRowCount(data?.total); |
| | | |
| | | } else { |
| | | notify(res.data.msg); |
| | | } |
| | | }; |
| | | |
| | | const handleSelectionChange = (ids) => { |
| | | setSelectedRows(ids) |
| | | }; |
| | | |
| | | useEffect(() => { |
| | | console.log('------->'); |
| | | console.log(page); |
| | | }, [page]) |
| | | |
| | | useEffect(() => { |
| | | if (extendColumns == undefined || extendColumns.length < 1) { |
| | |
| | | |
| | | return ( |
| | | <div style={{ height: 400, width: '100%' }}> |
| | | |
| | | <DataGrid |
| | | size="small" |
| | | rows={tableData} |
| | | page={page} |
| | | pageSize={pageSize} |
| | | columns={columns} |
| | | pagination |
| | | checkboxSelection |
| | | rowCount={rowCount} |
| | | onRowSelectionModelChange={handleSelectionChange} |
| | | onPageChange={(newPage) => setPage(newPage)} |
| | | onPageSizeChange={(newPageSize) => setPageSize(newPageSize)} |
| | | selectionModel={selectedRows} |
| | | columns={columns} |
| | | paginationMode="server" |
| | | disableColumnMenu={true} |
| | | initialState={{ |
| | | pagination: { |
| | | paginationModel: { |
| | | pageSize: 25, |
| | | }, |
| | | paginationModel={page} |
| | | onPaginationModelChange={setPage} |
| | | loading={isLoading} |
| | | slotProps={{ |
| | | loadingOverlay: { |
| | | variant: 'linear-progress', |
| | | noRowsVariant: 'linear-progress', |
| | | }, |
| | | }} |
| | | pageSizeOptions={[15, 25, 50, 100]} |
| | | disableColumnSorting |
| | | disableMultipleColumnsSorting |
| | | /> |
| | | </div> |
| | | ); |