From 2507f733fbd083223dcd4f96cbe8c715cd08065d Mon Sep 17 00:00:00 2001 From: ValdiANS Date: Sat, 24 Jan 2026 13:35:09 +0700 Subject: [PATCH] chore: fetch flock source kandang available qty in TransferToLayingFormModal --- .../TransferToLayingFormModal.tsx | 30 ++++++++++++++++--- 1 file changed, 26 insertions(+), 4 deletions(-) diff --git a/src/components/pages/production/transfer-to-laying/TransferToLayingFormModal.tsx b/src/components/pages/production/transfer-to-laying/TransferToLayingFormModal.tsx index b2718db4..2aa6ed47 100644 --- a/src/components/pages/production/transfer-to-laying/TransferToLayingFormModal.tsx +++ b/src/components/pages/production/transfer-to-laying/TransferToLayingFormModal.tsx @@ -224,8 +224,7 @@ const TransferToLayingFormModal = () => { formik.values.flockSource ? String(formik.values.flockSource.value) : undefined, - (id: string) => - TransferToLayingApi.getMappedFlockKandangsAvailability(Number(id)) + (id: string) => TransferToLayingApi.getAvailabelQty(Number(id)) ); const mappedFlockSourceKandangsAvailability: { @@ -236,11 +235,32 @@ const TransferToLayingFormModal = () => { if (!flockSourceKandangsAvailability || !selectedFlockSourceRawData) return []; + const flockSourceKandangsAvailableQty = isResponseSuccess( + flockSourceKandangsAvailability + ) + ? flockSourceKandangsAvailability.data.kandangs + : []; + + const mappedFlockSourceKandangsAvailableQty: Record< + number, + (typeof flockSourceKandangsAvailableQty)[0] + > = {}; + + flockSourceKandangsAvailableQty.forEach((item) => { + if ( + !mappedFlockSourceKandangsAvailableQty[item.project_flock_kandang_id] + ) { + mappedFlockSourceKandangsAvailableQty[item.project_flock_kandang_id] = + item; + } + }); + return selectedFlockSourceRawData ? selectedFlockSourceRawData.kandangs.map((kandang) => { const availability = - flockSourceKandangsAvailability[kandang.project_flock_kandang_id] - ?.available_qty ?? 0; + mappedFlockSourceKandangsAvailableQty[ + kandang.project_flock_kandang_id + ]?.available_qty ?? 0; console.log({ availability, @@ -248,6 +268,8 @@ const TransferToLayingFormModal = () => { kandang, 'kandang.project_flock_kandang_id': kandang.project_flock_kandang_id, + mappedFlockSourceKandangsAvailableQty, + flockSourceKandangsAvailableQty, }); return {