From b9d414bc2d61b4824ce6a019b1c10f526f71ced1 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期一, 21 四月 2025 12:56:12 +0800 Subject: [PATCH] #修改 1. 新增DO单,DO单明细 --- rsf-admin/src/page/basicInfo/loc/LocEdit.jsx | 311 ++++++++++++++++++++------------------------------- 1 files changed, 125 insertions(+), 186 deletions(-) diff --git a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx index 3ea6793..1e467c5 100644 --- a/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx +++ b/rsf-admin/src/page/basicInfo/loc/LocEdit.jsx @@ -10,6 +10,7 @@ DateInput, SelectInput, ReferenceInput, + SelectArrayInput, ReferenceArrayInput, AutocompleteInput, SaveButton, @@ -19,6 +20,7 @@ required, useRecordContext, DeleteButton, + useNotify, } from 'react-admin'; import { useWatch, useFormContext } from "react-hook-form"; import { Stack, Grid, Box, Typography } from '@mui/material'; @@ -28,6 +30,9 @@ import CustomerTopToolBar from "../../components/EditTopToolBar"; import MemoInput from "../../components/MemoInput"; import StatusSelectInput from "../../components/StatusSelectInput"; +import request from '@/utils/request'; +import DictionarySelect from "../../components/DictionarySelect"; +import LocItemList from "./LocItemList"; const FormToolbar = () => { const { getValues } = useFormContext(); @@ -42,200 +47,134 @@ const LocEdit = () => { const translate = useTranslate(); + const dicts = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_loc_type')) || []; + const [warehouseId, setWrehouseId] = useState(); + + const warehouseChange = (val) => { + setWrehouseId(val) + } return ( - <Edit - redirect="list" - mutationMode={EDIT_MODE} - actions={<CustomerTopToolBar />} - aside={<EditBaseAside />} - > - <SimpleForm - shouldUnregister - warnWhenUnsavedChanges - toolbar={<FormToolbar />} - mode="onTouched" - defaultValues={{}} - // validate={(values) => { }} + <> + <Edit + redirect="list" + mutationMode={EDIT_MODE} + actions={<CustomerTopToolBar />} + aside={<EditBaseAside />} + title={"menu.loc"} > - <Grid container width={{ xs: '100%', xl: '80%' }} rowSpacing={3} columnSpacing={3}> - <Grid item xs={12} md={10}> - <Typography variant="h6" gutterBottom> - {translate('common.edit.title.main')} - </Typography> - <Grid container rowSpacing={2} columnSpacing={2}> - <Grid item xs={6} display="flex" gap={1}> - <ReferenceInput - source="warehouseId" - reference="warehouse" - > - <AutocompleteInput - label="table.field.loc.warehouseId" - optionText="name" - validate={[required()]} - filterToQuery={(val) => ({ name: val })} - /> - </ReferenceInput> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <ReferenceInput - source="areaId" - reference="warehouseAreas" - > - <AutocompleteInput - label="table.field.loc.areaId" - optionText="name" - validate={[required()]} - filterToQuery={(val) => ({ name: val })} - /> - </ReferenceInput> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.code" - source="code" - parse={v => v} - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <ReferenceInput - source="type" - reference="dictData" - filter={{ dictTypeCode: 'sys_loc_type' }} - > - <AutocompleteInput - label="table.field.loc.type" - optionText="label" - optionValue="value" + <SimpleForm + shouldUnregister + warnWhenUnsavedChanges + toolbar={<FormToolbar />} + mode="onTouched" + defaultValues={{}} + // validate={(values) => { }} + > + <Grid container width={{ xs: '100%', xl: '90%' }} rowSpacing={3} columnSpacing={3}> + <Grid item xs={12} md={10}> + <Typography variant="h6" gutterBottom> + {translate('common.edit.title.main')} + </Typography> + <Grid container rowSpacing={2} columnSpacing={2}> + <Grid item display="flex" gap={2}> + <ReferenceInput + source="warehouseId" + reference="warehouse" + > + <AutocompleteInput + label="table.field.loc.warehouseId" + optionText="name" + validate={[required()]} + onChange={warehouseChange} + filterToQuery={(val) => ({ name: val })} + /> + </ReferenceInput> + <ReferenceInput + source="areaId" + reference="warehouseAreas" + filter={{ warehouseId }} + > + <AutocompleteInput + label="table.field.loc.areaId" + optionText="name" + validate={[required()]} + filterToQuery={(val) => ({ name: val })} + /> + </ReferenceInput> + <TextInput + label="table.field.loc.code" + source="code" parse={v => v} - validate={[required()]} + validate={required()} /> - </ReferenceInput> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.name" - source="name" - parse={v => v} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.flagLogic" - source="flagLogic" - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.fucAtrrs" - source="fucAtrrs" - parse={v => v} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.barcode" - source="barcode" - parse={v => v} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.unit" - source="unit" - parse={v => v} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.length" - source="length" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.width" - source="width" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.height" - source="height" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.row" - source="lrow" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.col" - source="col" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.lev" - source="lev" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.channel" - source="channel" - validate={required()} - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.maxParts" - source="maxParts" - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.maxPack" - source="maxPack" - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <NumberInput - label="table.field.loc.flagLabelMange" - source="flagLabelMange" - /> - </Grid> - <Grid item xs={6} display="flex" gap={1}> - <TextInput - label="table.field.loc.locAttrs" - source="locAttrs" - parse={v => v} - validate={required()} - /> + <NumberInput + label="table.field.loc.length" + source="length" + validate={required()} + /> + + <NumberInput + label="table.field.loc.width" + source="width" + validate={required()} + /> + + <NumberInput + label="table.field.loc.height" + source="height" + validate={required()} + /> + </Grid> + <Grid item display="flex" gap={1}> + <ReferenceArrayInput source="typeIds" reference="locType" > + <SelectArrayInput label="table.field.loc.type" validate={[required()]} /> + </ReferenceArrayInput> + <TextInput + label="table.field.loc.unit" + source="unit" + parse={v => v} + /> + <DictionarySelect + label={translate("table.field.loc.useStatus")} + name="useStatus" + validate={[required()]} + size="small" + dictTypeCode="sys_loc_use_stas" + /> + <NumberInput + label="table.field.loc.row" + source="row" + validate={required()} + /> + + <NumberInput + label="table.field.loc.col" + source="col" + validate={required()} + /> + + <NumberInput + label="table.field.loc.lev" + source="lev" + validate={required()} + /> + </Grid> </Grid> </Grid> - + <Grid item xs={12} md={2}> + <Typography variant="h6" gutterBottom> + {translate('common.edit.title.common')} + </Typography> + <StatusSelectInput /> + <Box mt="2em" /> + <MemoInput /> + </Grid> </Grid> - <Grid item xs={12} md={2}> - <Typography variant="h6" gutterBottom> - {translate('common.edit.title.common')} - </Typography> - <StatusSelectInput /> - <Box mt="2em" /> - <MemoInput /> - </Grid> - </Grid> - </SimpleForm> - </Edit > + </SimpleForm> + </Edit > + <LocItemList /> + </> ) } -- Gitblit v1.9.1