From ba8fe5adc13fc5a7fa87f4ef76cb7b3c6b765e91 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 27 三月 2025 15:44:31 +0800 Subject: [PATCH] #新增 1. 新增组拖工作档 2. 新增组拖工作档明细 --- rsf-admin/src/page/basicInfo/loc/LocList.jsx | 122 ++++++++++++++++++++++++++++++++++++++-- 1 files changed, 115 insertions(+), 7 deletions(-) diff --git a/rsf-admin/src/page/basicInfo/loc/LocList.jsx b/rsf-admin/src/page/basicInfo/loc/LocList.jsx index 0d2f8e5..c218a18 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocList.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocList.jsx @@ -55,6 +55,8 @@ import request from '@/utils/request'; import DiscountIcon from '@mui/icons-material/Discount'; import LinkIcon from '@mui/icons-material/Link'; +import InitModal from "./InitModal"; +import LocListAside from "./LocListAside"; const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({ '& .css-1vooibu-MuiSvgIcon-root': { @@ -83,7 +85,6 @@ source="warehouseId" label="table.field.loc.warehouseId" reference="warehouse" - alwaysOn > <AutocompleteInput label="table.field.loc.warehouseId" @@ -95,7 +96,6 @@ source="areaId" label="table.field.loc.areaId" reference="warehouseAreas" - alwaysOn > <AutocompleteInput label="table.field.loc.areaId" @@ -139,7 +139,7 @@ const [createDialog, setCreateDialog] = useState(false); const [drawerVal, setDrawerVal] = useState(false); - + const [initDialog, setInitDialog] = useState(false); return ( <Box display="flex"> @@ -153,7 +153,33 @@ marginRight: drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0, }} title={"menu.loc"} - empty={<EmptyData onClick={() => { setCreateDialog(true) }} />} + empty={<EmptyData + children={ + <Box sx={{ gap: 2, display: 'flex' }}> + <Button + variant="contained" + color="primary" + sx={{ + fontSize: '1em', + mt: 2 + }} + onClick={() => { setCreateDialog(true) }}> + {translate('create.empty.button')} + </Button> + + <Button + variant="contained" + color="primary" + sx={{ + fontSize: '1em', + mt: 2 + }} + onClick={() => { setInitDialog(true) }}> + {translate('toolbar.locInit')} + </Button> + </Box> + } + onClick={() => { }} />} filters={filters} sort={{ field: "create_time", order: "desc" }} actions={( @@ -166,13 +192,17 @@ </TopToolbar> )} perPage={DEFAULT_PAGE_SIZE} + aside={<LocListAside />} > <StyledDatagrid preferenceKey='loc' align="left" bulkActionButtons={ <> - <BatchButton /> + <BatchWateButton /> + <BatchAreasButton /> + <BatchLocTypeButton /> + <BatchStatusButton /> <BindButton /> <SubzoneButton /> <BulkDeleteButton /> @@ -232,6 +262,11 @@ setDrawerVal={setDrawerVal} > </PageDrawer> + + <InitModal + open={initDialog} + setOpen={setInitDialog} + /> </Box> ) } @@ -264,7 +299,7 @@ ) } -const BatchButton = () => { +const BatchWateButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); @@ -274,13 +309,86 @@ return ( <> - <Button onClick={() => setCreateDialog(true)} label={"toolbar.batch"}> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchWarehouse"}> <EditIcon /> </Button> <BatchModal open={createDialog} setOpen={setCreateDialog} + fieldType={'warehouseId'} + /> + </> + + ) +} + +const BatchAreasButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchWarehouseAreas"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'areaId'} + /> + </> + + ) +} + +const BatchLocTypeButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchLocType"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'typeIds'} + /> + </> + + ) +} + +const BatchStatusButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStatus"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'status'} /> </> -- Gitblit v1.9.1