#
luxiaotao1123
2024-10-18 652a7305f0d991e59b9592c0519897c5383c0130
#
2个文件已修改
171 ■■■■ 已修改文件
zy-acs-flow/src/map/insight/agv/AgvControl.jsx 170 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/insight/agv/useCoolHook.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-flow/src/map/insight/agv/AgvControl.jsx
@@ -19,7 +19,7 @@
import RestartAltIcon from '@mui/icons-material/RestartAlt';
import useCoolHook from './useCoolHook';
function AgvControl({ open, onClose }) {
function AgvControl(props) {
    const theme = useTheme();
    const translate = useTranslate();
@@ -72,9 +72,30 @@
    };
    const {
        options: codeOptions,
        setInputValue: setCodeInputValue,
        options: endCodeOptions,
        setInputValue: setEndCodeInputValue,
    } = useCoolHook('/code/page', 'data');
    const {
        options: startLocOptions,
        setInputValue: setStartLocInputValue,
    } = useCoolHook('/loc/page', 'locNo');
    const {
        options: endLocOptions,
        setInputValue: setEndLocInputValue,
    } = useCoolHook('/loc/page', 'locNo');
    const {
        options: startStaOptions,
        setInputValue: setStartStaInputValue,
    } = useCoolHook('/sta/page', 'staNo');
    const {
        options: endStaOptions,
        setInputValue: setEndStaInputValue,
    } = useCoolHook('/sta/page', 'staNo');
    return (
        <>
@@ -143,16 +164,17 @@
                                    <Controller
                                        name="endCode"
                                        control={control}
                                        rules={{ required: '目标地面码不能为空' }}
                                        render={({ field, fieldState }) => {
                                            const selectedOption = codeOptions.find(option => option.id === field.value) || null;
                                            const selectedOption = endCodeOptions.find(option => option.id === field.value) || null;
                                            return (
                                                <Autocomplete
                                                    options={codeOptions}
                                                    options={endCodeOptions}
                                                    getOptionLabel={(option) => option.label}
                                                    isOptionEqualToValue={(option, value) => option.id === value.id}
                                                    value={selectedOption}
                                                    onInputChange={(event, value) => {
                                                        setCodeInputValue(value);
                                                        setEndCodeInputValue(value);
                                                    }}
                                                    onChange={(event, value) => {
                                                        field.onChange(value ? value.id : null);
@@ -178,15 +200,31 @@
                                        name="startLocNo"
                                        control={control}
                                        rules={{ required: '起始库位不能为空' }}
                                        render={({ field, fieldState }) => (
                                            <TextField
                                                {...field}
                                                fullWidth
                                                label="起始库位"
                                                error={!!fieldState.error}
                                                helperText={fieldState.error?.message}
                                            />
                                        )}
                                        render={({ field, fieldState }) => {
                                            const selectedOption = startLocOptions.find(option => option.id === field.value) || null;
                                            return (
                                                <Autocomplete
                                                    options={startLocOptions}
                                                    getOptionLabel={(option) => option.label}
                                                    isOptionEqualToValue={(option, value) => option.id === value.id}
                                                    value={selectedOption}
                                                    onInputChange={(event, value) => {
                                                        setStartLocInputValue(value);
                                                    }}
                                                    onChange={(event, value) => {
                                                        field.onChange(value ? value.id : null);
                                                    }}
                                                    renderInput={(params) => (
                                                        <TextField
                                                            {...params}
                                                            label="起始库位"
                                                            error={!!fieldState.error}
                                                            helperText={fieldState.error?.message}
                                                        />
                                                    )}
                                                />
                                            );
                                        }}
                                    />
                                </Grid>
                            )}
@@ -197,15 +235,31 @@
                                        name="endLocNo"
                                        control={control}
                                        rules={{ required: '目标库位不能为空' }}
                                        render={({ field, fieldState }) => (
                                            <TextField
                                                {...field}
                                                fullWidth
                                                label="目标库位"
                                                error={!!fieldState.error}
                                                helperText={fieldState.error?.message}
                                            />
                                        )}
                                        render={({ field, fieldState }) => {
                                            const selectedOption = endLocOptions.find(option => option.id === field.value) || null;
                                            return (
                                                <Autocomplete
                                                    options={endLocOptions}
                                                    getOptionLabel={(option) => option.label}
                                                    isOptionEqualToValue={(option, value) => option.id === value.id}
                                                    value={selectedOption}
                                                    onInputChange={(event, value) => {
                                                        setEndLocInputValue(value);
                                                    }}
                                                    onChange={(event, value) => {
                                                        field.onChange(value ? value.id : null);
                                                    }}
                                                    renderInput={(params) => (
                                                        <TextField
                                                            {...params}
                                                            label="目标库位"
                                                            error={!!fieldState.error}
                                                            helperText={fieldState.error?.message}
                                                        />
                                                    )}
                                                />
                                            );
                                        }}
                                    />
                                </Grid>
                            )}
@@ -216,15 +270,31 @@
                                        name="startStaNo"
                                        control={control}
                                        rules={{ required: '起始站点不能为空' }}
                                        render={({ field, fieldState }) => (
                                            <TextField
                                                {...field}
                                                fullWidth
                                                label="起始站点"
                                                error={!!fieldState.error}
                                                helperText={fieldState.error?.message}
                                            />
                                        )}
                                        render={({ field, fieldState }) => {
                                            const selectedOption = startStaOptions.find(option => option.id === field.value) || null;
                                            return (
                                                <Autocomplete
                                                    options={startStaOptions}
                                                    getOptionLabel={(option) => option.label}
                                                    isOptionEqualToValue={(option, value) => option.id === value.id}
                                                    value={selectedOption}
                                                    onInputChange={(event, value) => {
                                                        setStartStaInputValue(value);
                                                    }}
                                                    onChange={(event, value) => {
                                                        field.onChange(value ? value.id : null);
                                                    }}
                                                    renderInput={(params) => (
                                                        <TextField
                                                            {...params}
                                                            label="起始站点"
                                                            error={!!fieldState.error}
                                                            helperText={fieldState.error?.message}
                                                        />
                                                    )}
                                                />
                                            );
                                        }}
                                    />
                                </Grid>
                            )}
@@ -235,15 +305,31 @@
                                        name="endStaNo"
                                        control={control}
                                        rules={{ required: '目标站点不能为空' }}
                                        render={({ field, fieldState }) => (
                                            <TextField
                                                {...field}
                                                fullWidth
                                                label="目标站点"
                                                error={!!fieldState.error}
                                                helperText={fieldState.error?.message}
                                            />
                                        )}
                                        render={({ field, fieldState }) => {
                                            const selectedOption = endStaOptions.find(option => option.id === field.value) || null;
                                            return (
                                                <Autocomplete
                                                    options={endStaOptions}
                                                    getOptionLabel={(option) => option.label}
                                                    isOptionEqualToValue={(option, value) => option.id === value.id}
                                                    value={selectedOption}
                                                    onInputChange={(event, value) => {
                                                        setEndStaInputValue(value);
                                                    }}
                                                    onChange={(event, value) => {
                                                        field.onChange(value ? value.id : null);
                                                    }}
                                                    renderInput={(params) => (
                                                        <TextField
                                                            {...params}
                                                            label="目标站点"
                                                            error={!!fieldState.error}
                                                            helperText={fieldState.error?.message}
                                                        />
                                                    )}
                                                />
                                            );
                                        }}
                                    />
                                </Grid>
                            )}
zy-acs-flow/src/map/insight/agv/useCoolHook.js
@@ -22,6 +22,7 @@
                })))
            } else {
                console.error(msg);
                setOptions([]);
            }
        } catch (error) {
            console.error(error.message);