From c44cdd8db1e6691e2b2d6a915f37e956d2ed4b60 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 15 七月 2025 10:18:17 +0800
Subject: [PATCH] 盘点单导入功能优化

---
 rsf-admin/src/page/basicInfo/loc/InitModal.jsx |  108 +++++++++++++++++++++++++++++++----------------------
 1 files changed, 63 insertions(+), 45 deletions(-)

diff --git a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
index 16a287a..38a3297 100644
--- a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
+++ b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
@@ -58,14 +58,15 @@
 const InitModal = ({ open, setOpen }) => {
     const refresh = useRefresh();
     const translate = useTranslate();
+    const { filterValues } = useListContext(); // 鑾峰彇鍒楄〃涓婁笅鏂�   
 
 
     const notify = useNotify();
     const [disabled, setDisabled] = useState(false)
 
     const [formData, setFormData] = useState({
-        "warehouseId": null,
-        "areaId": undefined,
+        "warehouseId": filterValues.warehouseId,
+        "areaId": filterValues.areaId,
         "endBay": undefined,
         "endLev": undefined,
         "endRow": undefined,
@@ -109,7 +110,7 @@
 
     return (
         <Dialog open={open} maxWidth="md" fullWidth>
-            <Form onSubmit={handleSubmit}>
+            <Form onSubmit={handleSubmit} defaultValues={filterValues}>
                 <DialogCloseButton onClose={handleClose} />
                 <DialogTitle>{translate('toolbar.locInit')}</DialogTitle>
                 <DialogContent sx={{ mt: 2 }}>
@@ -121,6 +122,7 @@
                                     reference="warehouse"
                                 >
                                     <AutocompleteInput
+                                        debounce
                                         label="table.field.loc.warehouseId"
                                         optionText="name"
                                         onChange={(value) => handleChange(value, 'warehouseId')}
@@ -147,40 +149,15 @@
                                         filterToQuery={(val) => ({ name: val })}
                                     />
                                 </ReferenceInput>
-
                             </Grid>
-
-
                             <Grid item xs={4}>
                                 <ReferenceArrayInput source="typeIds" reference="locType" >
-                                    <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} />
+                                    <SelectArrayInput label="table.field.loc.type" validate={[required()]} onChange={(e) => handleChange(e.target.value, 'typeIds')} />
                                 </ReferenceArrayInput>
+                                {/* <ReferenceArrayInput source="typeIds" reference="dictData" filter={{}}>
+                                    <SelectArrayInput label="table.field.loc.type" onChange={(e) => handleChange(e.target.value, 'typeIds')} validate={[required()]} />
+                                </ReferenceArrayInput> */}
                             </Grid>
-
-                            <Grid item xs={4}>
-                                <TextInput
-                                    label={translate("table.field.loc.startBay")}
-                                    name="startBay"
-                                    value={formData.startBay}
-                                    onChange={(e) => handleChange(+e.target.value, 'startBay')}
-                                    size="small"
-                                    type="number"
-                                    validate={[required()]}
-                                />
-                            </Grid>
-
-                            <Grid item xs={4}>
-                                <TextInput
-                                    label={translate("table.field.loc.startLev")}
-                                    name="startLev"
-                                    value={formData.startLev}
-                                    onChange={(e) => handleChange(+e.target.value, 'startLev')}
-                                    size="small"
-                                    type="number"
-                                    validate={[required()]}
-                                />
-                            </Grid>
-
                             <Grid item xs={4}>
                                 <TextInput
                                     label={translate("table.field.loc.startRow")}
@@ -192,31 +169,28 @@
                                     validate={[required()]}
                                 />
                             </Grid>
-
                             <Grid item xs={4}>
                                 <TextInput
-                                    label={translate("table.field.loc.endBay")}
-                                    name="endBay"
-                                    value={formData.endBay}
-                                    onChange={(e) => handleChange(+e.target.value, 'endBay')}
+                                    label={translate("table.field.loc.startBay")}
+                                    name="startBay"
+                                    value={formData.startBay}
+                                    onChange={(e) => handleChange(+e.target.value, 'startBay')}
                                     size="small"
                                     type="number"
                                     validate={[required()]}
                                 />
                             </Grid>
-
                             <Grid item xs={4}>
                                 <TextInput
-                                    label={translate("table.field.loc.endLev")}
-                                    name="endLev"
-                                    value={formData.endLev}
-                                    onChange={(e) => handleChange(+e.target.value, 'endLev')}
+                                    label={translate("table.field.loc.startLev")}
+                                    name="startLev"
+                                    value={formData.startLev}
+                                    onChange={(e) => handleChange(+e.target.value, 'startLev')}
                                     size="small"
                                     type="number"
                                     validate={[required()]}
                                 />
                             </Grid>
-
                             <Grid item xs={4}>
                                 <TextInput
                                     label={translate("table.field.loc.endRow")}
@@ -228,9 +202,51 @@
                                     validate={[required()]}
                                 />
                             </Grid>
-
+                            <Grid item xs={4}>
+                                <TextInput
+                                    label={translate("table.field.loc.endBay")}
+                                    name="endBay"
+                                    value={formData.endBay}
+                                    onChange={(e) => handleChange(+e.target.value, 'endBay')}
+                                    size="small"
+                                    type="number"
+                                    validate={[required()]}
+                                />
+                            </Grid>
+                            <Grid item xs={4}>
+                                <TextInput
+                                    label={translate("table.field.loc.endLev")}
+                                    name="endLev"
+                                    value={formData.endLev}
+                                    onChange={(e) => handleChange(+e.target.value, 'endLev')}
+                                    size="small"
+                                    type="number"
+                                    validate={[required()]}
+                                />
+                            </Grid>
+                            <Grid item xs={4}>
+                                <TextInput
+                                    label={"table.field.loc.channel"}
+                                    name="channel"
+                                    value={formData.channel}
+                                    onChange={(e) => handleChange(+e.target.value, 'channel')}
+                                    size="small"
+                                    type="number"
+                                    validate={[required()]}
+                                />
+                            </Grid>
+                            <Grid item xs={4}>
+                                <TextInput
+                                    label={"table.field.loc.startChannel"}
+                                    name="startChannel"
+                                    value={formData.startChannel}
+                                    onChange={(e) => handleChange(+e.target.value, 'startChannel')}
+                                    size="small"
+                                    type="number"
+                                    validate={[required()]}
+                                />
+                            </Grid>
                         </Grid>
-
                     </Box>
                 </DialogContent>
                 <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
@@ -246,4 +262,6 @@
     );
 }
 
+
+
 export default InitModal;
\ No newline at end of file

--
Gitblit v1.9.1