mirror of
https://gitlab.com/mbugroup/lti-web-client.git
synced 2026-05-25 15:55:48 +00:00
refactor(FE-438): Normalize ID handling and simplify callbacks
This commit is contained in:
@@ -250,54 +250,46 @@ const UniformityForm = ({
|
|||||||
const handleLocationChange = useCallback(
|
const handleLocationChange = useCallback(
|
||||||
(val: OptionType | OptionType[] | null) => {
|
(val: OptionType | OptionType[] | null) => {
|
||||||
const location = val as OptionType | null;
|
const location = val as OptionType | null;
|
||||||
|
const locationId = Number(location?.value);
|
||||||
|
|
||||||
formik.setFieldTouched('location', true);
|
formik.setFieldTouched('location', true);
|
||||||
formik.setFieldValue('location', location);
|
formik.setFieldValue('location', location);
|
||||||
formik.setFieldTouched('location_id', true);
|
formik.setFieldTouched('location_id', true);
|
||||||
formik.setFieldValue('location_id', (location as OptionType)?.value || 0);
|
formik.setFieldValue('location_id', locationId);
|
||||||
|
|
||||||
setSelectedLocation(location);
|
setSelectedLocation(location);
|
||||||
setSelectedProjectFlock(null);
|
|
||||||
setSelectedKandang(null);
|
|
||||||
|
|
||||||
formik.setFieldValue('project_flock', null);
|
|
||||||
formik.setFieldValue('project_flock_id', 0);
|
|
||||||
formik.setFieldValue('kandang', null);
|
|
||||||
formik.setFieldValue('kandang_id', 0);
|
|
||||||
},
|
},
|
||||||
[formik]
|
[]
|
||||||
);
|
);
|
||||||
|
|
||||||
const handleProjectFlockChange = useCallback(
|
const handleProjectFlockChange = useCallback(
|
||||||
(val: OptionType | OptionType[] | null) => {
|
(val: OptionType | OptionType[] | null) => {
|
||||||
const projectFlock = val as OptionType | null;
|
const projectFlock = val as OptionType | null;
|
||||||
|
const projectFlockId = Number(projectFlock?.value);
|
||||||
|
|
||||||
formik.setFieldTouched('project_flock', true);
|
formik.setFieldTouched('project_flock', true);
|
||||||
formik.setFieldValue('project_flock', projectFlock);
|
formik.setFieldValue('project_flock', projectFlock);
|
||||||
formik.setFieldTouched('project_flock_id', true);
|
formik.setFieldTouched('project_flock_id', true);
|
||||||
formik.setFieldValue(
|
formik.setFieldValue('project_flock_id', projectFlockId);
|
||||||
'project_flock_id',
|
|
||||||
(projectFlock as OptionType)?.value || 0
|
|
||||||
);
|
|
||||||
|
|
||||||
setSelectedProjectFlock(projectFlock);
|
setSelectedProjectFlock(projectFlock);
|
||||||
setSelectedKandang(null);
|
|
||||||
|
|
||||||
formik.setFieldValue('kandang', null);
|
|
||||||
formik.setFieldValue('kandang_id', 0);
|
|
||||||
},
|
},
|
||||||
[formik]
|
[]
|
||||||
);
|
);
|
||||||
|
|
||||||
const handleKandangChange = useCallback(
|
const handleKandangChange = useCallback(
|
||||||
(val: OptionType | OptionType[] | null) => {
|
(val: OptionType | OptionType[] | null) => {
|
||||||
const kandang = val as OptionType | null;
|
const kandang = val as OptionType | null;
|
||||||
|
const kandangId = Number(kandang?.value);
|
||||||
|
|
||||||
formik.setFieldTouched('kandang', true);
|
formik.setFieldTouched('kandang', true);
|
||||||
formik.setFieldValue('kandang', kandang);
|
formik.setFieldValue('kandang', kandang);
|
||||||
formik.setFieldTouched('kandang_id', true);
|
formik.setFieldTouched('kandang_id', true);
|
||||||
formik.setFieldValue('kandang_id', (kandang as OptionType)?.value || 0);
|
formik.setFieldValue('kandang_id', kandangId);
|
||||||
|
|
||||||
setSelectedKandang(kandang);
|
setSelectedKandang(kandang);
|
||||||
},
|
},
|
||||||
[formik]
|
[]
|
||||||
);
|
);
|
||||||
|
|
||||||
const handleFileChange = useCallback(
|
const handleFileChange = useCallback(
|
||||||
|
|||||||
Reference in New Issue
Block a user