Pull Request branch dev-clone to main #1
|
|
@ -23,6 +23,7 @@ import {
|
|||
} from "@/shadcn/components/ui/pagination-assessment";
|
||||
import { useQuery, useMutation } from "@tanstack/react-query";
|
||||
import {
|
||||
getAnswersQueryOptions,
|
||||
submitAssessmentMutationOptions,
|
||||
uploadFileMutationOptions,
|
||||
submitValidationMutationOptions,
|
||||
|
|
@ -169,6 +170,34 @@ export default function AssessmentPage() {
|
|||
}
|
||||
}, [aspectsQuery.data, selectedSubAspectId, data?.data]);
|
||||
|
||||
// Fetching answers for the assessment
|
||||
const { data: answersData } = useQuery(
|
||||
getAnswersQueryOptions(assessmentId || "", page, limit) // Memanggil query untuk mengambil jawaban dengan argumen yang diperlukan
|
||||
);
|
||||
|
||||
// Effect untuk mengatur answers dari data yang diambil
|
||||
useEffect(() => {
|
||||
const assessmentId = getQueryParam("id"); // Ambil assessmentId dari query params
|
||||
if (!assessmentId) {
|
||||
console.error("Assessment ID tidak ditemukan");
|
||||
return;
|
||||
}
|
||||
|
||||
// Ambil jawaban dari localStorage berdasarkan ID assessment
|
||||
const savedAnswers = localStorage.getItem(`assessmentAnswers_${assessmentId}`);
|
||||
if (savedAnswers) {
|
||||
setAnswers(JSON.parse(savedAnswers)); // Set state answers dengan data dari local storage
|
||||
}
|
||||
}, []);
|
||||
|
||||
// Mengambil jawaban dari local storage saat komponen dimuat
|
||||
useEffect(() => {
|
||||
const storedAnswers = localStorage.getItem('assessmentAnswers');
|
||||
if (storedAnswers) {
|
||||
setAnswers(JSON.parse(storedAnswers)); // Set state answers dengan data dari local storage
|
||||
}
|
||||
}, []);
|
||||
|
||||
const handleConfirmFinish = async (assessmentId: string) => {
|
||||
try {
|
||||
// Cek pertanyaan yang belum dijawab
|
||||
|
|
@ -303,19 +332,19 @@ export default function AssessmentPage() {
|
|||
|
||||
const handleAnswerChange = (questionId: string, optionId: string) => {
|
||||
const assessmentId = getQueryParam("id");
|
||||
|
||||
|
||||
if (!assessmentId) {
|
||||
console.error("Assessment ID tidak ditemukan");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
// Simpan jawaban ke localStorage dengan ID assessment
|
||||
const updatedAnswers = { ...answers, [questionId]: optionId };
|
||||
localStorage.setItem(`assessmentAnswers_${assessmentId}`, JSON.stringify(updatedAnswers));
|
||||
|
||||
localStorage.setItem(`assessmentAnswers_${assessmentId}`, JSON.stringify(updatedAnswers)); // Simpan berdasarkan ID assessment
|
||||
|
||||
// Update state
|
||||
setAnswers(updatedAnswers);
|
||||
|
||||
|
||||
// Call the mutation to submit the option
|
||||
submitOptionMutation.mutate({
|
||||
optionId,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user