From cc2984eeb289b54cfa193dde558417c46f309e8f Mon Sep 17 00:00:00 2001 From: DESKTOP-LMJ82IJ\Eno <creaycat@gmail.com> Date: 星期日, 13 四月 2025 19:32:38 +0800 Subject: [PATCH] #修改 1. 采购单界面优化及修改 --- rsf-admin/src/page/basicInfo/loc/LocCreate.jsx | 72 +++++++++++++++++++++++++++++++---- 1 files changed, 63 insertions(+), 9 deletions(-) diff --git a/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx b/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx index e48599a..23465f9 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocCreate.jsx @@ -16,6 +16,7 @@ useDataProvider, useNotify, Form, + SelectArrayInput, useCreateController, } from 'react-admin'; import { @@ -30,13 +31,15 @@ import DialogCloseButton from "../../components/DialogCloseButton"; import StatusSelectInput from "../../components/StatusSelectInput"; import MemoInput from "../../components/MemoInput"; +import request from '@/utils/request'; +import DictionarySelect from "../../components/DictionarySelect"; const LocCreate = (props) => { const { open, setOpen } = props; + const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || []; const translate = useTranslate(); const notify = useNotify(); - const handleClose = (event, reason) => { if (reason !== "backdropClick") { setOpen(false); @@ -51,6 +54,13 @@ const handleError = async (error) => { notify(error.message || 'common.response.fail', { type: 'error', messageArgs: { _: error.message } }); }; + + const [warehouseId, setWrehouseId] = useState(); + + const warehouseChange = (val) => { + setWrehouseId(val) + } + return ( <> @@ -86,13 +96,14 @@ <Grid container rowSpacing={2} columnSpacing={2}> <Grid item xs={6} display="flex" gap={1}> <ReferenceInput - source="warehouseId$" + source="warehouseId" reference="warehouse" > <AutocompleteInput label="table.field.loc.warehouseId" optionText="name" validate={[required()]} + onChange={warehouseChange} filterToQuery={(val) => ({ name: val })} /> </ReferenceInput> @@ -101,6 +112,7 @@ <ReferenceInput source="areaId" reference="warehouseAreas" + filter={{ warehouseId }} > <AutocompleteInput label="table.field.loc.areaId" @@ -119,12 +131,31 @@ /> </Grid> <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.type" + {/* <ReferenceInput source="type" + reference="dictData" + filter={{ dictTypeCode: 'sys_loc_type' }} + > + <AutocompleteInput + label="table.field.loc.type" + optionText="label" + optionValue="value" + parse={v => v} + validate={[required()]} + /> + </ReferenceInput> */} + {/* <AutocompleteInput + choices={dicts} + source="type" + optionText="label" + label="table.field.loc.type" + optionValue="value" parse={v => v} - validate={required()} - /> + validate={[required()]} + /> */} + <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" validate={[required()]} /> + </ReferenceArrayInput> </Grid> {/* <Grid item xs={6} display="flex" gap={1}> <TextInput @@ -133,7 +164,7 @@ parse={v => v} /> </Grid> */} - <Grid item xs={6} display="flex" gap={1}> + {/* <Grid item xs={6} display="flex" gap={1}> <NumberInput label="table.field.loc.flagLogic" source="flagLogic" @@ -152,7 +183,7 @@ source="barcode" parse={v => v} /> - </Grid> + </Grid> */} {/* <Grid item xs={6} display="flex" gap={1}> <TextInput label="table.field.loc.unit" @@ -201,7 +232,7 @@ validate={required()} /> </Grid> - <Grid item xs={6} display="flex" gap={1}> + {/* <Grid item xs={6} display="flex" gap={1}> <NumberInput label="table.field.loc.channel" source="channel" @@ -233,8 +264,31 @@ parse={v => v} validate={required()} /> + </Grid> */} + <Grid item xs={6} display="flex" gap={1}> + <DictionarySelect + label={translate("table.field.loc.useStatus")} + name="useStatus" + size="small" + validate={[required()]} + dictTypeCode="sys_loc_use_stas" + /> + {/* <ReferenceInput + source="useStatus" + reference="dictData" + filter={{ dictTypeCode: 'sys_loc_use_stas' }} + > + <AutocompleteInput + label="table.field.loc.useStatus" + optionText="label" + optionValue="value" + parse={v => v} + validate={[required()]} + /> + </ReferenceInput> */} </Grid> + <Grid item xs={6} display="flex" gap={1}> <StatusSelectInput /> </Grid> -- Gitblit v1.9.1