refactor(FE): Fix logic for checking active projects in the same kandang

from the validation logic.
This commit is contained in:
rstubryan
2026-02-23 12:10:44 +07:00
parent 08aa1900a8
commit 755bddc74c
@@ -50,12 +50,14 @@ const ProjectFlockDetail = ({
(kandang) => kandang.id === Number(selectedKandangId) (kandang) => kandang.id === Number(selectedKandangId)
); );
// Cek apakah ada project aktif di kandang yang sama (selain project saat ini)
// Hanya boleh 1 kandang aktif, jadi jika ada project lain yang aktif, tidak bisa di-unclose baik kategori growing maupun laying
const hasActiveProjectWithSameKandang = isResponseSuccess(projectFlockRawData) const hasActiveProjectWithSameKandang = isResponseSuccess(projectFlockRawData)
? projectFlockRawData.data.some((pf) => ? projectFlockRawData.data.some((pf) =>
pf.kandangs?.some( pf.kandangs?.some(
(k) => (k) =>
k.id === Number(selectedKandangId) && k.id === Number(selectedKandangId) &&
k.closed_at && pf.id !== projectFlock.id &&
k.status !== 'NON_ACTIVE' k.status !== 'NON_ACTIVE'
) )
) )
@@ -64,8 +66,7 @@ const ProjectFlockDetail = ({
const isCloseButtonDisabled = const isCloseButtonDisabled =
!selectedKandangId || !selectedKandangId ||
projectFlock?.approval?.step_number == 1 || projectFlock?.approval?.step_number == 1 ||
(projectFlock?.category === 'GROWING' && (selectedKandang?.status === 'NON_ACTIVE' &&
selectedKandang?.status === 'NON_ACTIVE' &&
hasActiveProjectWithSameKandang); hasActiveProjectWithSameKandang);
const { data: projectFlockApprovalResponse } = useSWR( const { data: projectFlockApprovalResponse } = useSWR(