diff --git a/src/components/pages/production/uniformity/form/UniformityForm.schema.ts b/src/components/pages/production/uniformity/form/UniformityForm.schema.ts index 037180f0..ad2f1e61 100644 --- a/src/components/pages/production/uniformity/form/UniformityForm.schema.ts +++ b/src/components/pages/production/uniformity/form/UniformityForm.schema.ts @@ -3,7 +3,6 @@ import { Uniformity } from '@/types/api/production/uniformity'; type UniformityFormSchemaType = { date: string; - week: number; location?: { value: number; label: string; @@ -45,10 +44,6 @@ const FileSchema = Yup.mixed() export const UniformityFormSchema: Yup.ObjectSchema = Yup.object({ date: Yup.string().required('Tanggal wajib diisi!'), - week: Yup.number() - .min(1, 'Minggu ke wajib diisi!') - .required('Minggu ke wajib diisi!') - .typeError('Minggu ke wajib diisi!'), location: Yup.object({ value: Yup.number().min(1).required(), label: Yup.string().required(), @@ -81,7 +76,6 @@ export type UniformityFormValues = Yup.InferType; export type UniformityFormData = { date: string; - week: number; project_flock_kandang_id: number; document: File | null; document_name: string; @@ -91,8 +85,7 @@ export const getUniformityFormInitialValues = ( initialValues?: Partial ): UniformityFormValues => { return { - date: initialValues?.week ? '' : '', - week: initialValues?.week ?? 0, + date: '', location: null, location_id: 0, project_flock: null, diff --git a/src/components/pages/production/uniformity/form/UniformityForm.tsx b/src/components/pages/production/uniformity/form/UniformityForm.tsx index 80668748..46c97278 100644 --- a/src/components/pages/production/uniformity/form/UniformityForm.tsx +++ b/src/components/pages/production/uniformity/form/UniformityForm.tsx @@ -27,7 +27,6 @@ import { LocationApi } from '@/services/api/master-data'; import { ProjectFlockApi, ProjectFlockKandangApi, - RecordingApi, } from '@/services/api/production'; import { UniformityApi } from '@/services/api/uniformity'; import { isResponseError, isResponseSuccess } from '@/lib/api-helper'; @@ -40,7 +39,6 @@ import { ProjectFlockKandangLookup, ProjectFlock, } from '@/types/api/production/project-flock'; -import { Recording } from '@/types/api/production/recording'; import { Kandang } from '@/types/api/master-data/kandang'; import UniformityPreviewForm from '@/components/pages/production/uniformity/form/UniformityPreviewForm'; import UniformityResultForm from '@/components/pages/production/uniformity/form/UniformityResultForm'; @@ -204,23 +202,6 @@ const UniformityForm = ({ ? projectFlockKandangLookupData.data : undefined; - // ===== RECORDINGS DATA (FOR WEEK CALCULATION) ===== - const recordingsUrl = useMemo(() => { - if (!projectFlockKandangLookup?.project_flock_kandang_id) return null; - const params = new URLSearchParams({ - page: '1', - limit: '100', - project_flock_kandang_id: - projectFlockKandangLookup.project_flock_kandang_id.toString(), - }); - return `${RecordingApi.basePath}?${params.toString()}`; - }, [projectFlockKandangLookup?.project_flock_kandang_id]); - - const { data: recordingsData } = useSWR( - recordingsUrl, - recordingsUrl ? RecordingApi.getAllFetcher : null - ); - // ===== FORM CONFIGURATION ===== const formikInitialValues = useMemo( () => getUniformityFormInitialValues(initialValues), @@ -246,7 +227,6 @@ const UniformityForm = ({ setUniformityFormData({ date: values.date, - week: values.week, project_flock_kandang_id: projectFlockKandangId, document: values.document as File, document_name: (values.document as File).name, @@ -475,59 +455,6 @@ const UniformityForm = ({ generateUniformityTemplate(population, projectFlockKandangLookup); }, [projectFlockKandangLookup]); - // ===== SIDE EFFECTS ===== - useEffect(() => { - if ( - projectFlockKandangLookup?.chick_in_date && - projectFlockKandangLookup?.project_flock_kandang_id - ) { - const chickInDate = new Date(projectFlockKandangLookup.chick_in_date); - chickInDate.setHours(0, 0, 0, 0); - - let initialWeek = 18; - - if ( - isResponseSuccess(recordingsData) && - recordingsData.data && - recordingsData.data.length > 0 - ) { - const sortedRecordings = [...recordingsData.data].sort( - (a: Recording, b: Recording) => - new Date(a.record_datetime).getTime() - - new Date(b.record_datetime).getTime() - ); - - const earliestRecording = sortedRecordings[0]; - if (earliestRecording?.project_flock?.production_standart?.week) { - initialWeek = - earliestRecording.project_flock.production_standart.week; - } - } - - if (formik.values.date) { - const selectedDate = new Date(formik.values.date); - selectedDate.setHours(0, 0, 0, 0); - - const daysDiff = Math.floor( - (selectedDate.getTime() - chickInDate.getTime()) / - (1000 * 60 * 60 * 24) - ); - - const weeksDiff = Math.floor(daysDiff / 7); - - setFieldValue('week', initialWeek + weeksDiff); - } else { - setFieldValue('week', initialWeek); - } - } - }, [ - projectFlockKandangLookup?.chick_in_date, - projectFlockKandangLookup?.project_flock_kandang_id, - recordingsData, - formik.values.date, - setFieldValue, - ]); - useEffect(() => { const unsub = subscribeValidate(() => { setIsValid(true); diff --git a/src/components/pages/production/uniformity/form/UniformityResultForm.tsx b/src/components/pages/production/uniformity/form/UniformityResultForm.tsx index 108cb4f8..a5dda1e4 100644 --- a/src/components/pages/production/uniformity/form/UniformityResultForm.tsx +++ b/src/components/pages/production/uniformity/form/UniformityResultForm.tsx @@ -63,7 +63,6 @@ const UniformityResultForm = () => { try { const payload = { date: uniformityFormData.date, - week: uniformityFormData.week, project_flock_kandang_id: uniformityFormData.project_flock_kandang_id, document: uniformityFormData.document, }; diff --git a/src/services/api/uniformity.ts b/src/services/api/uniformity.ts index 7ed8098e..dda35787 100644 --- a/src/services/api/uniformity.ts +++ b/src/services/api/uniformity.ts @@ -56,7 +56,6 @@ export class UniformityApiService extends BaseApiService< ): Promise | undefined> { const formData = new FormData(); formData.append('date', payload.date); - formData.append('week', payload.week.toString()); formData.append( 'project_flock_kandang_id', payload.project_flock_kandang_id.toString() diff --git a/src/types/api/production/uniformity.d.ts b/src/types/api/production/uniformity.d.ts index 825607d8..b4ff2ed8 100644 --- a/src/types/api/production/uniformity.d.ts +++ b/src/types/api/production/uniformity.d.ts @@ -146,7 +146,6 @@ export type CreateUniformityPayload = { date: string; project_flock_kandang_id: number; document: File; - week: number; }; export type VerifyUniformityPayload = {