DESKTOP-LMJ82IJ\Eno
2025-04-13 e411a471a08717964937be2e6ac0eadaa84961ca
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
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";
import QlyIsptItemList from "./QlyIsptItemList";
 
const FormToolbar = () => {
    const { getValues } = useFormContext();
 
    return (
        <Toolbar sx={{ justifyContent: 'end' }}>
            <SaveButton />
            <DeleteButton mutationMode="optimistic" />
        </Toolbar>
    )
}
 
const QlyInspectEdit = () => {
    const translate = useTranslate();
    const business = JSON.parse(localStorage.getItem('sys_dicts'))?.filter(dict => (dict.dictTypeCode == 'sys_business_type')) || [];
 
    return (
        <>
            <Edit
                redirect="list"
                mutationMode={EDIT_MODE}
                actions={<CustomerTopToolBar />}
                aside={<EditBaseAside />}
            >
                <SimpleForm
                    shouldUnregister
                    warnWhenUnsavedChanges
                    toolbar={<FormToolbar />}
                    mode="onTouched"
                    defaultValues={{}}
                >
                    <Grid container width={{ xs: '100%', xl: '100%' }}>
                        <Grid item xs={24} md={12}>
                            <Typography variant="h6" gutterBottom>
                                {translate('common.edit.title.main')}
                            </Typography>
                            <Stack direction='row' gap={2}>
                                <TextInput
                                    label="table.field.qlyInspect.asnCode"
                                    source="asnCode"
                                    readOnly
                                />
                                <TextInput
                                    label="table.field.qlyInspect.code"
                                    source="code"
                                    parse={v => v}
                                    readOnly
                                    validate={required()}
                                />
                                <AutocompleteInput
                                    choices={business}
                                    optionText="label"
                                    label="table.field.asnOrder.wkType"
                                    source="wkType"
                                    readOnly
                                    optionValue="value"
                                    parse={v => v}
                                />
                            </Stack>
                            <Stack direction='row' gap={2}>
                                <NumberInput
                                    label="table.field.qlyInspect.safeQty"
                                    source="safeQty"
                                    readOnly
                                />
                                <NumberInput
                                    label="table.field.qlyInspect.dlyQty"
                                    source="dlyQty"
                                    readOnly
 
                                />
                                <NumberInput
                                    label="table.field.qlyInspect.rcptQty"
                                    source="rcptQty"
                                    readOnly
 
                                />
                                <NumberInput
                                    label="table.field.qlyInspect.isptQty"
                                    source="isptQty"
                                    readOnly
 
                                />
                            </Stack>
                        </Grid>
                    </Grid>
                </SimpleForm>
            </Edit >
            <QlyIsptItemList />
        </>
    )
}
 
export default QlyInspectEdit;