From c462b499e6812f073efdcceecd94f655883c0d36 Mon Sep 17 00:00:00 2001
From: zc <zyzc>
Date: 星期二, 21 十月 2025 16:34:08 +0800
Subject: [PATCH] erp物料对接修改
---
rsf-admin/src/page/basicInfo/basContainer/BasContainerList.jsx | 76 +++++++++++++++++++++++++++++++-------
1 files changed, 62 insertions(+), 14 deletions(-)
diff --git a/rsf-admin/src/page/basicInfo/basContainer/BasContainerList.jsx b/rsf-admin/src/page/basicInfo/basContainer/BasContainerList.jsx
index 722bb6e..224f9f3 100644
--- a/rsf-admin/src/page/basicInfo/basContainer/BasContainerList.jsx
+++ b/rsf-admin/src/page/basicInfo/basContainer/BasContainerList.jsx
@@ -31,6 +31,7 @@
ReferenceArrayInput,
AutocompleteInput,
DeleteButton,
+ Button,
} from 'react-admin';
import { Box, Typography, Card, Stack } from '@mui/material';
import { styled } from '@mui/material/styles';
@@ -42,8 +43,11 @@
import PageDrawer from "../../components/PageDrawer";
import MyField from "../../components/MyField";
import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting';
-import * as Common from '@/utils/common';
import CrossZoneAreaField from "../basStation/CrossZoneAreaField";
+import AllInclusiveIcon from '@mui/icons-material/AllInclusive';
+import BasContainerInit from "./BasContainerInit";
+import PrintModal from './PrintModal'
+
const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
'& .css-1vooibu-MuiSvgIcon-root': {
@@ -61,8 +65,8 @@
const filters = [
<SearchInput source="condition" alwaysOn />,
- <DateInput label='common.time.after' source="timeStart" />,
- <DateInput label='common.time.before' source="timeEnd" />,
+ <DateInput label='common.time.after' source="timeStart" />,
+ <DateInput label='common.time.before' source="timeEnd" />,
<NumberInput source="containerType" label="table.field.basContainer.containerType" />,
<TextInput source="codeType" label="table.field.basContainer.codeType" />,
@@ -85,6 +89,9 @@
const [areaFieldDialog, setAreaFieldDialog] = useState(false);
const [createDialog, setCreateDialog] = useState(false);
const [drawerVal, setDrawerVal] = useState(false);
+ const [open, setOpen] = useState(false);
+ const [print, setPrint] = useState(false);
+ const [selectPrints, setSelectPrints] = useState([]);
return (
<Box display="flex">
@@ -98,11 +105,12 @@
marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
}}
title={"menu.basContainer"}
- empty={<EmptyData onClick={() => { setCreateDialog(true) }} />}
+ empty={false}
filters={filters}
sort={{ field: "create_time", order: "desc" }}
actions={(
<TopToolbar>
+ <InitButton setOpen={setOpen} />
<FilterButton />
<MyCreateButton onClick={() => { setCreateDialog(true) }} />
<SelectColumnsButton preferenceKey='basContainer' />
@@ -113,21 +121,18 @@
>
<StyledDatagrid
preferenceKey='basContainer'
- bulkActionButtons={() => <BulkDeleteButton mutationMode={OPERATE_MODE} />}
- rowClick={(id, resource, record) => false}
+ bulkActionButtons={<>
+ <BulkPrintBarcode setPrint={setPrint} setSelectPrints={setSelectPrints} />
+ <BulkDeleteButton mutationMode={OPERATE_MODE} />
+ </>}
+ rowClick={(id, resource, record) => false}
expandSingle={true}
- omit={['id', 'createTime', 'createBy', 'memo','statusBool']}
+ omit={['id', 'statusBool']}
>
<NumberField source="id" />
<NumberField source="containerType$" label="table.field.basContainer.containerType" />
+ <TextField source="code" label="table.field.basContainer.code" />
<TextField source="codeType" label="table.field.basContainer.codeType" />
- <WrapperField cellClassName="areas" label="table.field.basContainer.areas">
- <CrossZoneAreaField
- open={areaFieldDialog}
- setOpen={setAreaFieldDialog}
- />
- </WrapperField>
-
<ReferenceField source="updateBy" label="common.field.updateBy" reference="user" link={false} sortable={false}>
<TextField source="nickname" />
</ReferenceField>
@@ -148,6 +153,15 @@
open={createDialog}
setOpen={setCreateDialog}
/>
+ <BasContainerInit
+ open={open}
+ setOpen={setOpen}
+ />
+ <PrintModal
+ open={print}
+ setOpen={setPrint}
+ rows={selectPrints}
+ />
<PageDrawer
title='BasContainer Detail'
drawerVal={drawerVal}
@@ -158,4 +172,38 @@
)
}
+//鍒濆鍖栨寜閽�
+const InitButton = ({ setOpen }) => {
+ const init = () => {
+ setOpen(true)
+ }
+ return (
+ <Button
+ label="toolbar.init"
+ variant="text"
+ size="small"
+ onClick={init}
+ startIcon={<AllInclusiveIcon />} />
+ )
+}
+
+const BulkPrintBarcode = ({ setPrint, setSelectPrints }) => {
+ const { selectedIds } = useListContext();
+ //鎵撳嵃
+ const print = () => {
+ setPrint(true);
+ setSelectPrints(selectedIds);
+ }
+
+ return (
+ <Button
+ label="toolbar.print"
+ variant="text"
+ size="small"
+ onClick={print}
+ startIcon={<AllInclusiveIcon />} />
+ )
+}
+
+
export default BasContainerList;
--
Gitblit v1.9.1