| 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, Card } from '@mui/material'; | 
| import { EDIT_MODE, REFERENCE_INPUT_PAGESIZE } from '@/config/setting'; | 
| import EditBaseAside from "../../components/EditBaseAside"; | 
| import CustomerTopToolBar from "../../components/EditTopToolBar"; | 
| import AsnOrderItemLogList from "./AsnOrderItemLogList" | 
| const FormToolbar = () => { | 
|     return ( | 
|         <Toolbar sx={{ justifyContent: 'end' }}> | 
|            <></> | 
|         </Toolbar> | 
|     ) | 
| } | 
|   | 
| const AsnOrderLogEdit = () => { | 
|     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: '80%' }} rowSpacing={3} columnSpacing={3}> | 
|                         <Grid item xs={24} md={12} sx={{ | 
|                             "& .MuiFormLabel-root.MuiInputLabel-root.Mui-disabled":{ | 
|                             bgcolor : 'white', | 
|                             WebkitTextFillColor: "rgba(0, 0, 0)"                             | 
|                             }, | 
|   | 
|                             "& .MuiInputBase-input.MuiFilledInput-input.Mui-disabled":{ | 
|                             bgcolor : 'white', | 
|                             WebkitTextFillColor: "rgba(0, 0, 0)"                             | 
|                             }  | 
|                         }}> | 
|                             <Typography variant="h6" gutterBottom> | 
|                                 {translate('common.edit.title.main')} | 
|                             </Typography> | 
|                             <Stack direction='row' gap={2}> | 
|                                 <TextInput | 
|                                 disableUnderline  | 
|                                     label="table.field.asnOrderLog.code" | 
|                                     source="code" | 
|                                     parse={v => v} | 
|                                     readOnly | 
|                                 /> | 
|                                 <TextInput | 
|                                     label="table.field.asnOrderLog.poCode" | 
|                                     source="poCode" | 
|                                     readOnly | 
|                                     parse={v => v} | 
|                                 /> | 
|                                 <NumberInput | 
|                                     label="table.field.asnOrderLog.poId" | 
|                                     readOnly | 
|                                     source="poId" | 
|                                 /> | 
|                                 <TextInput | 
|                                     label="table.field.asnOrderLog.type" | 
|                                     source="type$" | 
|                                     readOnly | 
|                                     parse={v => v} | 
|                                     validate={required()} | 
|                                 /> | 
|                                 <TextInput | 
|                                     label="table.field.asnOrderLog.wkType" | 
|                                     source="wkType$" | 
|                                     readOnly | 
|                                     parse={v => v} | 
|                                     validate={required()} | 
|                                 /> | 
|                             </Stack> | 
|                             <Stack direction='row' gap={2}> | 
|                                 <NumberInput | 
|                                     label="table.field.asnOrderLog.anfme" | 
|                                     source="anfme" | 
|                                     readOnly | 
|                                     validate={required()} | 
|                                 /> | 
|                                 <NumberInput | 
|                                     label="table.field.asnOrderLog.qty" | 
|                                     source="qty" | 
|                                     readOnly | 
|                                     validate={required()} | 
|                                 /> | 
|                                 <TextInput | 
|                                     label="table.field.asnOrderLog.logisNo" | 
|                                     source="logisNo" | 
|                                     readOnly | 
|                                     parse={v => v} | 
|                                 /> | 
|                                 <DateInput | 
|                                     label="table.field.asnOrderLog.arrTime" | 
|                                     readOnly | 
|                                     source="arrTime" | 
|                                 /> | 
|                                 <SelectInput | 
|                                     label="table.field.asnOrderLog.ntyStatus" | 
|                                     source="ntyStatus" | 
|                                     readOnly | 
|                                     choices={[ | 
|                                         { id: 0, name: ' 未上报' }, | 
|                                         { id: 1, name: ' 已上报' }, | 
|                                         { id: 2, name: ' 部分上报' }, | 
|                                     ]} | 
|                                     validate={required()} | 
|                                 /> | 
|                             </Stack> | 
|                         </Grid> | 
|                     </Grid> | 
|                 </SimpleForm> | 
|             </Edit > | 
|             <Grid item xs={24} md={16} sx={{ marginTop: '1em' }}> | 
|                 <Typography variant="h6" gutterBottom > | 
|                     {translate('common.edit.title.common')} | 
|                 </Typography> | 
|             </Grid> | 
|             <AsnOrderItemLogList /> | 
|         </> | 
|     ) | 
| } | 
|   | 
| export default AsnOrderLogEdit; |