From 6f5a86b74457f2fdad3caa63f3378e81624d47d2 Mon Sep 17 00:00:00 2001
From: lbq <1065079612@qq.com>
Date: 星期三, 11 二月 2026 08:22:14 +0800
Subject: [PATCH] 优化基础信息页面字段
---
rsf-admin/src/page/basicInfo/basStation/BasStationCreate.jsx | 145 +++++++++++++++++++++++++++++++----------------
1 files changed, 95 insertions(+), 50 deletions(-)
diff --git a/rsf-admin/src/page/basicInfo/basStation/BasStationCreate.jsx b/rsf-admin/src/page/basicInfo/basStation/BasStationCreate.jsx
index 5d82fd9..b73e16b 100644
--- a/rsf-admin/src/page/basicInfo/basStation/BasStationCreate.jsx
+++ b/rsf-admin/src/page/basicInfo/basStation/BasStationCreate.jsx
@@ -17,6 +17,7 @@
useNotify,
Form,
useCreateController,
+ SelectArrayInput,
} from 'react-admin';
import {
Dialog,
@@ -30,13 +31,15 @@
import DialogCloseButton from "../../components/DialogCloseButton";
import StatusSelectInput from "../../components/StatusSelectInput";
import MemoInput from "../../components/MemoInput";
+import DictionarySelect from "../../components/DictionarySelect";
+import DictionaryArraySelect from "../../components/DictionaryArraySelect";
const BasStationCreate = (props) => {
const { open, setOpen } = props;
const translate = useTranslate();
const notify = useNotify();
-
+ const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_station_type')) || [];
const handleClose = (event, reason) => {
if (reason !== "backdropClick") {
setOpen(false);
@@ -90,87 +93,129 @@
source="stationName"
parse={v => v}
autoFocus
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.basStation.inAble"
- source="inAble"
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.basStation.outAble"
- source="outAble"
+ validate={[required()]}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
<TextInput
- label="table.field.basStation.useStatus"
- source="useStatus"
+ label="table.field.basStation.stationId"
+ source="stationId"
parse={v => v}
+ autoFocus
+ validate={[required()]}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.basStation.area"
- source="area"
+ <SelectInput
+ label="table.field.basStation.type"
+ source="type"
+ choices={[
+ { id: 0, name: '鏅鸿兘绔欑偣' },
+ { id: 1, name: '鏅�氱珯鐐�' },
+ ]}
+ validate={[required()]}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
- <NumberInput
+ <DictionarySelect
+ label={translate("table.field.basStation.useStatus")}
+ name="useStatus"
+ size="small"
+ // validate={[required()]}
+ dictTypeCode="sys_sta_use_stas"
+ />
+ </Grid>
+ {/* <Grid item xs={6} display="flex" gap={1}>
+ <ReferenceInput source="area" reference="warehouseAreas" sort={{ field: 'sort', order: 'ASC' }}>
+ <SelectInput
+ label="table.field.basStation.area"
+ optionText="name"
+ optionValue="id"
+ fullWidth
+ validate={[required()]}
+ />
+ </ReferenceInput>
+ </Grid>
+ <Grid item xs={6} display="flex" gap={1}>
+ <SelectInput
label="table.field.basStation.isCrossZone"
source="isCrossZone"
+ choices={[
+ { id: 0, name: '鍚�' },
+ { id: 1, name: '鏄�' },
+ ]}
+ validate={[required()]}
/>
- </Grid>
+ </Grid> */}
<Grid item xs={6} display="flex" gap={1}>
- <TextInput
- label="table.field.basStation.crossZoneArea"
- source="crossZoneArea"
- parse={v => v}
- />
+ <ReferenceArrayInput source="areaIds" reference="warehouseAreas" sort={{ field: 'sort', order: 'ASC' }}>
+ <SelectArrayInput
+ label="table.field.basStation.crossZoneArea"
+ optionText="name"
+ optionValue="id"
+ fullWidth
+ validate={[required()]}
+ />
+ </ReferenceArrayInput>
</Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
+ {/* <Grid item xs={6} display="flex" gap={1}>
+ <SelectInput
label="table.field.basStation.isWcs"
source="isWcs"
+ choices={[
+ { id: 0, name: '鍚�' },
+ { id: 1, name: '鏄�' },
+ ]}
+ validate={[required()]}
+ />
+ </Grid> */}
+ <Grid item xs={6} display="flex" gap={1}>
+ <DictionaryArraySelect
+ label={translate("table.field.basStation.containerType")}
+ name="containerTypes"
+ size="small"
+ validate={[required()]}
+ dictTypeCode="sys_container_type"
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
- <TextInput
- label="table.field.basStation.wcsData"
- source="wcsData"
- parse={v => v}
+ <SelectInput
+ label="table.field.basStation.inAble"
+ source="inAble"
+ choices={[
+ { id: 0, name: '鍚�' },
+ { id: 1, name: '鏄�' },
+ ]}
+ validate={[required()]}
/>
</Grid>
<Grid item xs={6} display="flex" gap={1}>
- <NumberInput
- label="table.field.basStation.containerType"
- source="containerType"
+ <SelectInput
+ label="table.field.basStation.outAble"
+ source="outAble"
+ choices={[
+ { id: 0, name: '鍚�' },
+ { id: 1, name: '鏄�' },
+ ]}
+ validate={[required()]}
/>
</Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <TextInput
- label="table.field.basStation.barcode"
- source="barcode"
- parse={v => v}
- />
- </Grid>
- <Grid item xs={6} display="flex" gap={1}>
- <NumberInput
+ {/* <Grid item xs={6} display="flex" gap={1}>
+ <SelectInput
label="table.field.basStation.autoTransfer"
source="autoTransfer"
+ choices={[
+ { id: 0, name: '鍚�' },
+ { id: 1, name: '鏄�' },
+ ]}
+ validate={[required()]}
/>
- </Grid>
-
- <Grid item xs={6} display="flex" gap={1}>
- <StatusSelectInput />
- </Grid>
- <Grid item xs={12} display="flex" gap={1}>
+ </Grid> */}
+ {/* <Grid item xs={12} display="flex" gap={1}>
<Stack direction="column" spacing={1} width={'100%'}>
<MemoInput />
</Stack>
- </Grid>
+ </Grid> */}
</Grid>
</DialogContent>
<DialogActions sx={{ position: 'sticky', bottom: 0, backgroundColor: 'background.paper', zIndex: 1000 }}>
--
Gitblit v1.9.1