From 9483baffba9a24a2a36fc8739fc65b59317d9142 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期四, 03 七月 2025 14:18:46 +0800 Subject: [PATCH] 队列拆分 --- zy-acs-flow/src/map/settings/ConfigSettings.jsx | 45 +++++++++++++++------------------------------ 1 files changed, 15 insertions(+), 30 deletions(-) diff --git a/zy-acs-flow/src/map/settings/ConfigSettings.jsx b/zy-acs-flow/src/map/settings/ConfigSettings.jsx index 75aee21..2ac2917 100644 --- a/zy-acs-flow/src/map/settings/ConfigSettings.jsx +++ b/zy-acs-flow/src/map/settings/ConfigSettings.jsx @@ -22,28 +22,20 @@ } from '../constants'; import { useNotification } from '../Notification'; -export const getFormDefaultValues = (data) => { - return { - row: data?.row ?? '', - bay: data?.bay ?? '', - no: data?.no ?? '', - ...data, - } -}; - const ConfigSettings = (props) => { const { sprite, onSubmit } = props; const notify = useNotification(); const translate = useTranslate(); - const { control, handleSubmit, reset, watch, setValue, unregister } = useForm({ - defaultValues: getFormDefaultValues(sprite?.data), - shouldUnregister: true, + const { control, handleSubmit, reset, watch, setValue, formState: { errors } } = useForm({ + defaultValues: { ...sprite?.data }, }); useEffect(() => { if (sprite?.data) { - reset(getFormDefaultValues(sprite.data)); + reset({ + ...sprite.data + }); } }, [sprite, reset]); @@ -51,13 +43,6 @@ const rowValue = watch('row'); const bayValue = watch('bay'); - - useEffect(() => { - if (deviceType !== DEVICE_TYPE.SHELF) { - unregister('row'); - unregister('bay'); - } - }, [deviceType, unregister]); useEffect(() => { if (deviceType === DEVICE_TYPE.SHELF) { @@ -75,7 +60,7 @@ ]); const onFormSubmit = (data) => { - if (sprite && sprite.data) { + if (sprite?.data) { Object.keys(data).forEach((key) => { sprite.data[key] = data[key]; }); @@ -83,7 +68,6 @@ if (onSubmit) { onSubmit(data); } - console.log(sprite.data); notify.info(translate('common.response.success')); }; @@ -91,6 +75,7 @@ <> <Box component="form" onSubmit={handleSubmit(onFormSubmit)} noValidate sx={{ mt: 0 }}> <Grid container spacing={1.4}> + {deviceType === DEVICE_TYPE.SHELF && ( <> <Grid item xs={6}> @@ -105,7 +90,7 @@ value={field.value ?? ''} fullWidth onChange={(e) => { - field.onChange(e); + field.onChange(e.target.value === '' ? '' : Number(e.target.value)); }} /> )} @@ -123,7 +108,7 @@ value={field.value ?? ''} fullWidth onChange={(e) => { - field.onChange(e); + field.onChange(e.target.value === '' ? '' : Number(e.target.value)); }} /> )} @@ -151,22 +136,22 @@ <Divider /> </Grid> - {/* <Grid item xs={12}> - <Typography variant="inherit"> - {translate('page.map.settings.config.base.no')} - </Typography> - </Grid> */} <Grid item xs={6}> <Controller name="no" control={control} + rules={{ + required: translate('ra.validation.required') // warn msg + }} render={({ field }) => { return ( <TextField {...field} - label="No" + label={translate('page.map.settings.config.base.no')} type="text" value={field.value ?? ''} + error={!!errors.no} // show red warn + helperText={errors.no ? errors.no.message : null} // show warn msg fullWidth onChange={(e) => { field.onChange(e); -- Gitblit v1.9.1