From fb6a6482b156527afc4f78ac900c14e4bd63327d Mon Sep 17 00:00:00 2001 From: verou <857149855@qq.com> Date: 星期四, 27 三月 2025 08:31:37 +0800 Subject: [PATCH] fix:菜单修改 --- rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx | 176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 163 insertions(+), 13 deletions(-) diff --git a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx index 98e6a0c..99edfb3 100644 --- a/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx +++ b/rsf-admin/src/page/basicInfo/matnr/MatnrList.jsx @@ -54,7 +54,10 @@ import PrintIcon from '@mui/icons-material/Print'; import request from '@/utils/request'; import BatchModal from './BatchModal'; +import BatchGropuModal from './BatchGropuModal'; import PrintModal from './PrintModal'; +import LinkIcon from '@mui/icons-material/Link'; +import BindModal from './BindModal'; const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({ '& .css-1vooibu-MuiSvgIcon-root': { @@ -84,10 +87,11 @@ overflow: 'hidden', textOverflow: 'ellipsis', display: 'block', - width: '100px', + width: '200px', }, '& .RaDatagrid-table': { - width: '100%' + width: '100%', + position: 'relative', } })); @@ -156,7 +160,6 @@ const [columns, setColumns] = useState([]); const refresh = useRefresh(); - const { refetch } = useListContext(); useEffect(() => { getDynamicFields(); @@ -186,14 +189,14 @@ <TextField key="purchaseUnit" source="purchaseUnit" label="table.field.matnr.purUnit" />, <TextField key="stockUnit" source="stockUnit" label="table.field.matnr.stockUnit" />, <TextField key="stockLeval$" source="stockLeval$" label="table.field.matnr.stockLevel" sortable={false} />, - <TextField key="isLabelMange$" source="isLabelMange$" label="table.field.matnr.isLabelMange" sortable={false} />, + <TextField key="flagLabelMange$" source="flagLabelMange$" label="table.field.matnr.isLabelMange" sortable={false} />, <NumberField key="safeQty" source="safeQty" label="table.field.matnr.safeQty" />, <NumberField key="minQty" source="minQty" label="table.field.matnr.minQty" />, <NumberField key="maxQty" source="maxQty" label="table.field.matnr.maxQty" />, <NumberField key="stagn" source="stagn" label="table.field.matnr.stagn" />, <NumberField key="valid" source="valid" label="table.field.matnr.valid" />, <NumberField key="validWarn" source="validWarn" label="table.field.matnr.validWarn" />, - <NumberField key="flagCheck" source="flagCheck" label="table.field.matnr.flagCheck" />, + <BooleanField key="flagCheck" source="flagCheck" label="table.field.matnr.flagCheck" sortable={false} />, <ReferenceField key="updateBy" source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}> <TextField source="nickname" /> </ReferenceField>, @@ -206,9 +209,9 @@ <TextField key="memo" source="memo" label="common.field.memo" sortable={false} />, ] const fields = data.map(el => <TextField key={el.fields} source={`extendFields.[${el.fields}]`} label={el.fieldsAlise} />) - const opt = <WrapperField key="opt" cellClassName="opt" label="common.field.opt"> + const opt = <WrapperField key="opt" cellClassName="fixed" className="fixed" label="common.field.opt"> <EditButton sx={{ padding: '1px', fontSize: '.75rem' }} /> - <EnableButton /> + <PrintButton /> </WrapperField> setColumns([...arr, ...fields, opt]); @@ -238,15 +241,20 @@ <StyledDatagrid preferenceKey='matnr' bulkActionButtons={<> - <BatchButton /> - <PrintButton /> + <BatchGroupButton /> + <BatchWarnButton /> + <BatchFlagButton /> + <BatchStatusButton /> + <BatchLevelButton /> + <BindButton /> + <BatchPrintButton /> <BulkDeleteButton mutationMode={OPERATE_MODE} /> </>} rowClick={(id, resource, record) => false} omit={['id', 'shipperId', 'platCode', 'spec', 'model', 'weight', 'color', 'describle' , 'nromNum', 'unit', 'purchaseUnit', 'stockUnit', 'stockLeval', 'isLabelMange', 'safeQty' , 'minQty', 'maxQty', 'stagn', 'valid', 'validWarn', 'flagCheck', 'updateTime', 'updateBy' - , 'createTime', 'createBy', 'memo', 'rglarId', 'groupId', 'stockLevel', 'isLabelMange']} + , 'createTime', 'createBy', 'memo', 'rglarId', 'groupId', 'stockLevel']} > {columns.map((column) => column)} </StyledDatagrid>} @@ -335,7 +343,7 @@ ) } -const BatchButton = () => { +const BatchStatusButton = () => { const record = useRecordContext(); const notify = useNotify(); const refresh = useRefresh(); @@ -345,11 +353,106 @@ return ( <> - <Button onClick={() => setCreateDialog(true)} label={"toolbar.batch"}> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStatus"}> <EditIcon /> </Button> <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'status'} + /> + </> + + ) +} +const BatchLevelButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchStockLevel"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'stockLevel'} + /> + </> + + ) +} + +const BatchWarnButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchValidWarn"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'validWarn'} + /> + </> + + ) +} + +const BatchFlagButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchFlagCheck"}> + <EditIcon /> + </Button> + + <BatchModal + open={createDialog} + setOpen={setCreateDialog} + fieldType={'flagCheck'} + /> + </> + + ) +} + +const BatchGroupButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.batchMatnrGropu"}> + <EditIcon /> + </Button> + + <BatchGropuModal open={createDialog} setOpen={setCreateDialog} /> @@ -358,8 +461,9 @@ ) } -const PrintButton = () => { +const BatchPrintButton = () => { const record = useRecordContext(); + const { resource, selectedIds } = useListContext(); const notify = useNotify(); const refresh = useRefresh(); @@ -374,6 +478,52 @@ <PrintModal open={createDialog} setOpen={setCreateDialog} + rows={selectedIds} + /> + </> + ) +} + +const PrintButton = () => { + const record = useRecordContext(); + + const notify = useNotify(); + const refresh = useRefresh(); + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button color="secondary" onClick={() => setCreateDialog(true)} label={"toolbar.print"}> + <PrintIcon /> + </Button> + + <PrintModal + open={createDialog} + setOpen={setCreateDialog} + rows={[record.id]} + /> + </> + ) +} + +const BindButton = () => { + const record = useRecordContext(); + const notify = useNotify(); + const refresh = useRefresh(); + + + const [createDialog, setCreateDialog] = useState(false); + + return ( + <> + <Button onClick={() => setCreateDialog(true)} label={"toolbar.bindloc"}> + <LinkIcon /> + </Button> + + <BindModal + open={createDialog} + setOpen={setCreateDialog} /> </> -- Gitblit v1.9.1