mirror of
https://gitlab.com/mbugroup/lti-web-client.git
synced 2026-05-20 13:32:00 +00:00
fix(FE): fixing closing button project flock
This commit is contained in:
@@ -21,6 +21,7 @@ import { useMemo, useState } from 'react';
|
|||||||
import toast from 'react-hot-toast';
|
import toast from 'react-hot-toast';
|
||||||
import { useRouter } from 'next/navigation';
|
import { useRouter } from 'next/navigation';
|
||||||
import { ProductWarehouse } from '@/types/api/inventory/product-warehouse';
|
import { ProductWarehouse } from '@/types/api/inventory/product-warehouse';
|
||||||
|
import { ApprovalApi } from '@/services/api/approval';
|
||||||
|
|
||||||
const ProjectFlockClosingForm = ({
|
const ProjectFlockClosingForm = ({
|
||||||
projectFlock,
|
projectFlock,
|
||||||
@@ -31,7 +32,7 @@ const ProjectFlockClosingForm = ({
|
|||||||
}) => {
|
}) => {
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const closeModal = useModal();
|
const closeModal = useModal();
|
||||||
const isCanClose = projectFlock.approval?.step_number <= 2;
|
|
||||||
const [isClosingLoading, setIsClosingLoading] = useState(false);
|
const [isClosingLoading, setIsClosingLoading] = useState(false);
|
||||||
|
|
||||||
const { data: closingData, isLoading } = useSWR(
|
const { data: closingData, isLoading } = useSWR(
|
||||||
@@ -39,19 +40,35 @@ const ProjectFlockClosingForm = ({
|
|||||||
() => ProjectFlockKandangApi.checkClosing(projectFlockKandang.id)
|
() => ProjectFlockKandangApi.checkClosing(projectFlockKandang.id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const { data: projectFlockKandangApprovals } = useSWR(
|
||||||
|
`${ApprovalApi.basePath}?module_name=PROJECT_FLOCK_KANDANGS&module_id=${projectFlockKandang.id}`,
|
||||||
|
() =>
|
||||||
|
ApprovalApi.getAllFetcher(
|
||||||
|
`${ApprovalApi.basePath}?module_name=PROJECT_FLOCK_KANDANGS&module_id=${projectFlockKandang.id}`
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
const isCanClose = useMemo(() => {
|
||||||
|
return isResponseSuccess(projectFlockKandangApprovals)
|
||||||
|
? projectFlockKandangApprovals?.data?.[0]?.step_number <= 2
|
||||||
|
: true;
|
||||||
|
}, [projectFlockKandangApprovals]);
|
||||||
|
|
||||||
const confirmationModalCloseClickHandler = async () => {
|
const confirmationModalCloseClickHandler = async () => {
|
||||||
setIsClosingLoading(true);
|
setIsClosingLoading(true);
|
||||||
const deleteProjectFlockRes = await ProjectFlockKandangApi.closing(
|
const deleteProjectFlockRes = await ProjectFlockKandangApi.closing(
|
||||||
projectFlockKandang?.id as number,
|
projectFlockKandang?.id as number,
|
||||||
{
|
{
|
||||||
closed_date: formatDate(new Date(), 'YYYY-MM-DD'),
|
closed_date: isCanClose ? formatDate(new Date(), 'YYYY-MM-DD') : '',
|
||||||
action: isCanClose ? 'close' : 'unclose',
|
action: isCanClose ? 'close' : 'unclose',
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
if (isResponseSuccess(deleteProjectFlockRes)) {
|
if (isResponseSuccess(deleteProjectFlockRes)) {
|
||||||
toast.success(deleteProjectFlockRes?.message as string);
|
toast.success(deleteProjectFlockRes?.message as string);
|
||||||
router.push(`/production/project-flock`);
|
router.push(
|
||||||
|
`/production/project-flock/detail?projectFlockId=${projectFlock.id}`
|
||||||
|
);
|
||||||
}
|
}
|
||||||
if (isResponseError(deleteProjectFlockRes)) {
|
if (isResponseError(deleteProjectFlockRes)) {
|
||||||
toast.error(deleteProjectFlockRes?.message as string);
|
toast.error(deleteProjectFlockRes?.message as string);
|
||||||
|
|||||||
Reference in New Issue
Block a user