From 9e27b1b292872bd83b761091554fbd8db72b595e Mon Sep 17 00:00:00 2001
From: yangyang
Date: 星期四, 20 三月 2025 10:47:13 +0800
Subject: [PATCH] #优化 物料扩展字段修改优化
---
rsf-admin/src/page/basicInfo/loc/InitModal.jsx | 268 +++++++++++++++++++++++++++--------------------------
1 files changed, 137 insertions(+), 131 deletions(-)
diff --git a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
index ef64347..80c6a2b 100644
--- a/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
+++ b/rsf-admin/src/page/basicInfo/loc/InitModal.jsx
@@ -43,6 +43,7 @@
} from '@mui/material';
import DialogCloseButton from "../../components/DialogCloseButton";
+import DictionarySelect from "../../components/DictionarySelect";
import { useForm, Controller, useWatch, FormProvider, useFormContext } from "react-hook-form";
import SaveIcon from '@mui/icons-material/Save';
import request from '@/utils/request';
@@ -61,14 +62,14 @@
const notify = useNotify();
const [formData, setFormData] = useState({
- "areaId": "",
- "endBay": "",
- "endLev": "",
- "endRow": "",
+ "areaId": undefined,
+ "endBay": undefined,
+ "endLev": undefined,
+ "endRow": undefined,
"locType": "",
- "startBay": "",
- "startLev": "",
- "startRow": "",
+ "startBay": undefined,
+ "startLev": undefined,
+ "startRow": undefined,
"type": ""
});
@@ -82,8 +83,7 @@
e.preventDefault();
};
- const handleChange = (e) => {
- const { name, value } = e.target;
+ const handleChange = (value, name) => {
setFormData((prevData) => ({
...prevData,
[name]: value
@@ -103,130 +103,136 @@
return (
<Dialog open={open} maxWidth="md" fullWidth>
- <DialogCloseButton onClose={handleClose} />
- <DialogTitle>{translate('toolbar.locInit')}</DialogTitle>
- <DialogContent sx={{ mt: 2 }}>
- <Box component="form" sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}>
- <Grid container spacing={2}>
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.areaId")}
- name="wkType"
- value={formData.areaId}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
+ <Form onSubmit={handleSubmit}>
+ <DialogCloseButton onClose={handleClose} />
+ <DialogTitle>{translate('toolbar.locInit')}</DialogTitle>
+ <DialogContent sx={{ mt: 2 }}>
+ <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3 }}>
+ <Grid container spacing={2}>
+ <Grid item xs={4}>
+ <ReferenceInput
+ source="areaId"
+ reference="warehouseAreas"
+ >
+ <AutocompleteInput
+ label="table.field.loc.areaId"
+ optionText="name"
+ onChange={(value) => handleChange(value, 'areaId')}
+ value={formData.areaId}
+ validate={[required()]}
+ filterToQuery={(val) => ({ name: val })}
+ />
+ </ReferenceInput>
+
+ </Grid>
+
+ <Grid item xs={4}>
+ <DictionarySelect
+ label={translate("table.field.loc.locType")}
+ name="locType"
+ value={formData.locType}
+ onChange={(e) => handleChange(e.target.value, 'locType')}
+ size="small"
+ dictTypeCode="sys_width_type"
+ />
+ </Grid>
+
+ <Grid item xs={4}>
+ <DictionarySelect
+ label={translate("table.field.loc.type")}
+ name="type"
+ value={formData.type}
+ onChange={(e) => handleChange(e.target.value, 'type')}
+ size="small"
+ validate={[required()]}
+ dictTypeCode="sys_loc_type"
+ />
+ </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")}
+ name="startRow"
+ value={formData.startRow}
+ onChange={(e) => handleChange(+e.target.value, 'startRow')}
+ size="small"
+ type="number"
+ 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={translate("table.field.loc.endRow")}
+ name="endRow"
+ value={formData.endRow}
+ onChange={(e) => handleChange(+e.target.value, 'endRow')}
+ size="small"
+ type="number"
+ validate={[required()]}
+ />
+ </Grid>
+
</Grid>
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.locType")}
- name="wkType"
- value={formData.locType}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.type")}
- name="wkType"
- value={formData.type}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.startBay")}
- name="type"
- value={formData.startBay}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.startLev")}
- name="wkType"
- value={formData.startLev}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.startRow")}
- name="wkType"
- value={formData.startRow}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.endBay")}
- name="wkType"
- value={formData.endBay}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.endLev")}
- name="wkType"
- value={formData.endLev}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
- <Grid item xs={4}>
- <TextField
- label={translate("table.field.loc.endRow")}
- name="wkType"
- value={formData.endRow}
- onChange={handleChange}
- variant="outlined"
- size="small"
- validate={required()}
- />
- </Grid>
-
-
- </Grid>
- </Box>
- </DialogContent>
- <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
- <Box sx={{ width: '100%', display: 'flex', justifyContent: 'space-between' }}>
- <Button onClick={handleSubmit} variant="contained" startIcon={<SaveIcon />}>
- 纭
- </Button>
- </Box>
- </DialogActions>
+ </Box>
+ </DialogContent>
+ <DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
+ <Box sx={{ width: '100%', display: 'flex', justifyContent: 'space-between' }}>
+ <Button type="submit" variant="contained" startIcon={<SaveIcon />}>
+ 纭
+ </Button>
+ </Box>
+ </DialogActions>
+ </Form>
</Dialog>
);
}
--
Gitblit v1.9.1