From 03dbce0ba849005d060af569ffe3a58c0a1e0e45 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 23 五月 2025 14:24:06 +0800
Subject: [PATCH] 盘点再入库

---
 rsf-admin/src/page/orders/outStock/OutOrderCreate.jsx |   83 +++++++++++++----------------------------
 1 files changed, 27 insertions(+), 56 deletions(-)

diff --git a/rsf-admin/src/page/orders/outStock/OutOrderCreate.jsx b/rsf-admin/src/page/orders/outStock/OutOrderCreate.jsx
index 25a8314..40fba47 100644
--- a/rsf-admin/src/page/orders/outStock/OutOrderCreate.jsx
+++ b/rsf-admin/src/page/orders/outStock/OutOrderCreate.jsx
@@ -27,6 +27,8 @@
     useList,
     ListContextProvider,
     useListContext,
+    Button,
+    useRecordContext,
 } from 'react-admin';
 import {
     Dialog,
@@ -43,7 +45,8 @@
 import StatusSelectInput from "../../components/StatusSelectInput";
 import OutOrderItemList from "./OutOrderItemList";
 import MemoInput from "../../components/MemoInput";
-
+import AddIcon from '@mui/icons-material/Add';
+import SelectMatnrModal from "./SelectMatnrModal";
 
 const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({
     '& .css-1vooibu-MuiSvgIcon-root': {
@@ -67,6 +70,7 @@
     const translate = useTranslate();
     const notify = useNotify();
     const [drawerVal, setDrawerVal] = useState(false);
+    const [matCreate, setMatCreate] = useState(false);
 
     const handleClose = (event, reason) => {
         if (reason !== "backdropClick") {
@@ -120,7 +124,7 @@
                         </DialogTitle>
                         <DialogContent sx={{ mt: 2 }}>
                             <>
-                                <Grid container rowSpacing={2} columnSpacing={2}>
+                                <Grid container>
                                     <Grid item xs={12} display="flex" gap={1}>
                                         <TextInput
                                             label="table.field.asnOrder.poCode"
@@ -154,12 +158,13 @@
                                             source="anfme"
                                             validate={required()}
                                         />
+
+                                    </Grid>
+                                    <Grid item xs={12} display="flex" gap={1}>
                                         <NumberInput
                                             label="table.field.asnOrder.qty"
                                             source="qty"
                                         />
-                                    </Grid>
-                                    <Grid item xs={12} display="flex" gap={1}>
                                         <TextInput
                                             label="table.field.asnOrder.logisNo"
                                             source="logisNo"
@@ -179,64 +184,15 @@
                                         />
                                     </Grid>
                                 </Grid>
+                                <SelectMatnrModal open={matCreate} setOpen={setMatCreate} />
                                 <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
                                     <Toolbar sx={{ width: '100%', justifyContent: 'end' }}  >
+                                        <AddOutOrderButton setMatCreate={setMatCreate} />
                                         <SaveButton />
                                     </Toolbar>
                                 </DialogActions>
-
                                 <Box>
-                                    <ListContextProvider
-                                        // resource="waveItem脧"
-                                        value={listContext}
-                                        sx={{
-                                            flexGrow: 1,
-                                            transition: (theme) =>
-                                                theme.transitions.create(['all'], {
-                                                    duration: theme.transitions.duration.enteringScreen,
-                                                }),
-                                            marginRight: !!drawerVal ? `${PAGE_DRAWER_WIDTH}px` : 0,
-                                        }}
-                                        title={"menu.waveItem"}
-                                        empty={false}
-                                        sort={{ field: "create_time", order: "desc" }}
-                                        filters={false}
-                                        actions={(
-                                            <TopToolbar>
-                                                <SelectColumnsButton preferenceKey='waveItem' />
-                                            </TopToolbar>
-                                        )}
-                                        perPage={DEFAULT_PAGE_SIZE}
-                                    >
-                                        <StyledDatagrid
-                                            preferenceKey='waveItem'
-                                            bulkActionButtons={false}
-                                            rowClick={(id, resource, record) => false}
-                                            expand={false}
-                                            expandSingle={false}
-                                            omit={['id', 'createTime', 'matnrId', 'waveId', 'batch', 'orderItemId', 'unit', 'batch', 'trackCode', 'fieldsIndex', 'createBy', 'memo']}
-                                        >
-                                            <NumberField source="id" />
-                                            <NumberField source="waveId" label="table.field.waveItem.waveId" />
-                                            <TextField source="waveCode" label="table.field.waveItem.waveCode" />
-                                            <TextField source="orderCode" label="table.field.waveItem.orderCode" />
-                                            <NumberField source="matnrId" label="table.field.waveItem.matnrId" />
-                                            <TextField source="matnrCode" label="table.field.waveItem.matnrCode" />
-                                            <TextField source="batch" label="table.field.waveItem.batch" />
-                                            <TextField source="splrBatch" label="table.field.waveItem.splrBatch" />
-                                            <NumberField source="orderItemId" label="table.field.waveItem.orderItemId" />
-                                            <TextField source="unit" label="table.field.waveItem.unit" />
-                                            <TextField source="trackCode" label="table.field.waveItem.trackCode" />
-                                            <TextField source="fieldsIndex" label="table.field.waveItem.fieldsIndex" />
-                                            <NumberField source="anfme" label="table.field.waveItem.anfme" />
-                                            <NumberField source="workQty" label="table.field.waveItem.workQty" />
-                                            <NumberField source="qty" label="table.field.waveItem.qty" />
-                                            <NumberField source="stockQty" label="table.field.waveItem.stockQty" />
-                                            <WrapperField cellClassName="opt" label="table.field.waveItem.stockLocs">
-                                                {/* <TagsField /> */}
-                                            </WrapperField>
-                                        </StyledDatagrid>
-                                    </ListContextProvider>
+
                                 </Box>
                             </>
                         </DialogContent>
@@ -248,3 +204,18 @@
 }
 
 export default OutOrderCreate;
+
+
+const AddOutOrderButton = (setMatCreate) => {
+    const record = useRecordContext();
+    const addMats = (event) => {
+        event.stopPropagation();
+        setMatCreate(true)
+    }
+
+    return (
+        <Button label={"common.action.newAddMats"} onClick={addMats} variant="contained" sx={{ padding: '0.6em', marginRight: '1em' }}>
+            <AddIcon />
+        </Button>
+    );
+}

--
Gitblit v1.9.1