From 408033e4db94bdc9015a040824307b093286d827 Mon Sep 17 00:00:00 2001 From: abiyasa05 Date: Wed, 23 Oct 2024 13:27:40 +0700 Subject: [PATCH] update: add function for update status after click button finish on file index lazy --- .../_assessmentLayout/assessment/index.lazy.tsx | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/apps/frontend/src/routes/_assessmentLayout/assessment/index.lazy.tsx b/apps/frontend/src/routes/_assessmentLayout/assessment/index.lazy.tsx index 3a1df60..260dd75 100644 --- a/apps/frontend/src/routes/_assessmentLayout/assessment/index.lazy.tsx +++ b/apps/frontend/src/routes/_assessmentLayout/assessment/index.lazy.tsx @@ -14,6 +14,7 @@ import { } from "@mantine/core"; import { useQuery, useMutation } from "@tanstack/react-query"; import { + submitAssessmentMutationOptions, uploadFileMutationOptions, submitValidationMutationOptions, submitOptionMutationOptions, @@ -130,13 +131,23 @@ export default function AssessmentPage() { } }, [aspectsQuery.data, selectedSubAspectId, data?.data]); - const handleConfirmFinish = () => { - if (assessmentId) { - // Menggunakan history.pushState untuk mengubah URL tanpa reload + const handleConfirmFinish = async (assessmentId: string) => { + try { + // Memanggil mutation untuk mengubah status asesmen menjadi 'selesai' di backend + const mutation = submitAssessmentMutationOptions(assessmentId); + + const response = await mutation.mutationFn(); + + // Setelah status diubah, navigasikan ke halaman hasil asesmen const newUrl = `/assessmentResult?id=${assessmentId}`; window.history.pushState({}, "", newUrl); // Setelah mengubah URL, Anda bisa menjalankan logika lain jika diperlukan console.log("Navigated to:", newUrl); + console.log(response.message); + } catch (error) { + console.error("Error finishing assessment:", error); + } finally { + setModalOpen(false); // Menutup modal setelah selesai } };