| New file | 
 |  |  | 
 |  |  | import React, { useState, useRef, useEffect, useMemo } from "react"; | 
 |  |  | import { | 
 |  |  |     Edit, | 
 |  |  |     SimpleForm, | 
 |  |  |     FormDataConsumer, | 
 |  |  |     useTranslate, | 
 |  |  |     TextInput, | 
 |  |  |     NumberInput, | 
 |  |  |     BooleanInput, | 
 |  |  |     DateInput, | 
 |  |  |     SelectInput, | 
 |  |  |     ReferenceInput, | 
 |  |  |     ReferenceArrayInput, | 
 |  |  |     AutocompleteInput, | 
 |  |  |     SaveButton, | 
 |  |  |     Toolbar, | 
 |  |  |     Labeled, | 
 |  |  |     NumberField, | 
 |  |  |     required, | 
 |  |  |     useRecordContext, | 
 |  |  |     DeleteButton, | 
 |  |  | } from 'react-admin'; | 
 |  |  | import { useWatch, useFormContext } from "react-hook-form"; | 
 |  |  | import { Stack, Grid, Box, Typography } from '@mui/material'; | 
 |  |  | import * as Common from '@/utils/common'; | 
 |  |  | import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting'; | 
 |  |  | import EditBaseAside from "../components/EditBaseAside"; | 
 |  |  | import CustomerTopToolBar from "../components/EditTopToolBar"; | 
 |  |  | import MemoInput from "../components/MemoInput"; | 
 |  |  | import StatusSelectInput from "../components/StatusSelectInput"; | 
 |  |  |  | 
 |  |  | const FormToolbar = () => { | 
 |  |  |     const { getValues } = useFormContext(); | 
 |  |  |  | 
 |  |  |     return ( | 
 |  |  |         <Toolbar sx={{ justifyContent: 'end' }}> | 
 |  |  |             <SaveButton /> | 
 |  |  |             {/* <DeleteButton mutationMode="optimistic" /> */} | 
 |  |  |         </Toolbar> | 
 |  |  |     ) | 
 |  |  | } | 
 |  |  |  | 
 |  |  | const LocItemEdit = () => { | 
 |  |  |     const translate = useTranslate(); | 
 |  |  |  | 
 |  |  |     return ( | 
 |  |  |         <Edit | 
 |  |  |             redirect="list" | 
 |  |  |             mutationMode={EDIT_MODE} | 
 |  |  |             actions={<CustomerTopToolBar />} | 
 |  |  |             aside={<EditBaseAside />} | 
 |  |  |         > | 
 |  |  |             <SimpleForm | 
 |  |  |                 shouldUnregister | 
 |  |  |                 warnWhenUnsavedChanges | 
 |  |  |                 toolbar={<FormToolbar />} | 
 |  |  |                 mode="onTouched" | 
 |  |  |                 defaultValues={{}} | 
 |  |  |             // validate={(values) => { }} | 
 |  |  |             > | 
 |  |  |                 <Grid container width={{ xs: '100%', xl: '100%' }} rowSpacing={3} columnSpacing={3}> | 
 |  |  |                     <Grid item xs={14} md={10}> | 
 |  |  |                         <Typography variant="h6" gutterBottom> | 
 |  |  |                             {translate('common.edit.title.main')} | 
 |  |  |                         </Typography> | 
 |  |  |                         <Stack direction='row' gap={2}> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.locId" | 
 |  |  |                                 source="locId" | 
 |  |  |                                 autoFocus | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.locCode" | 
 |  |  |                                 source="locCode" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.orderId" | 
 |  |  |                                 source="orderId" | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.type" | 
 |  |  |                                 source="type$" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                         </Stack> | 
 |  |  |                         <Stack direction='row' gap={2}> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.orderItemId" | 
 |  |  |                                 source="orderItemId" | 
 |  |  |                             /> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.wkType" | 
 |  |  |                                 source="wkType" | 
 |  |  |                             /> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.matnrId" | 
 |  |  |                                 source="matnrId" | 
 |  |  |                             /> | 
 |  |  |                         </Stack> | 
 |  |  |                         <Stack direction='row' gap={2}> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.maktx" | 
 |  |  |                                 source="maktx" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |  | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.matnrCode" | 
 |  |  |                                 source="matnrCode" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.trackCode" | 
 |  |  |                                 source="trackCode" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.unit" | 
 |  |  |                                 source="unit" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                         </Stack> | 
 |  |  |                         <Stack direction='row' gap={2}> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.anfme" | 
 |  |  |                                 source="anfme" | 
 |  |  |                             /> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.qty" | 
 |  |  |                                 source="qty" | 
 |  |  |                             /> | 
 |  |  |                             <NumberInput | 
 |  |  |                                 label="table.field.locItem.workQty" | 
 |  |  |                                 source="workQty" | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.batch" | 
 |  |  |                                 source="batch" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                         </Stack> | 
 |  |  |                         <Stack direction='row' gap={2}> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.splrBatch" | 
 |  |  |                                 source="splrBatch" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.spec" | 
 |  |  |                                 source="spec" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.model" | 
 |  |  |                                 source="model" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                             <TextInput | 
 |  |  |                                 label="table.field.locItem.fieldsIndex" | 
 |  |  |                                 source="fieldsIndex" | 
 |  |  |                                 parse={v => v} | 
 |  |  |                             /> | 
 |  |  |                         </Stack> | 
 |  |  |  | 
 |  |  |                     </Grid> | 
 |  |  |                     <Grid item xs={10} md={2}> | 
 |  |  |                         <Typography variant="h6" gutterBottom> | 
 |  |  |                             {translate('common.edit.title.common')} | 
 |  |  |                         </Typography> | 
 |  |  |                         <StatusSelectInput /> | 
 |  |  |                         <Box mt="2em" /> | 
 |  |  |                         <MemoInput /> | 
 |  |  |                     </Grid> | 
 |  |  |                 </Grid> | 
 |  |  |             </SimpleForm> | 
 |  |  |         </Edit > | 
 |  |  |     ) | 
 |  |  | } | 
 |  |  |  | 
 |  |  | export default LocItemEdit; |