update: add confirmation for button finish
This commit is contained in:
parent
fdc85d6072
commit
9b71ecbef3
|
|
@ -23,6 +23,7 @@ import {
|
||||||
toggleFlagAnswer,
|
toggleFlagAnswer,
|
||||||
} from "@/modules/assessmentManagement/queries/assessmentQueries";
|
} from "@/modules/assessmentManagement/queries/assessmentQueries";
|
||||||
import { TbFlagFilled, TbUpload, TbChevronRight, TbChevronUp } from "react-icons/tb";
|
import { TbFlagFilled, TbUpload, TbChevronRight, TbChevronUp } from "react-icons/tb";
|
||||||
|
import FinishAssessmentModal from "@/modules/assessmentManagement/modals/ConfirmModal";
|
||||||
import { useState, useRef, useEffect } from "react";
|
import { useState, useRef, useEffect } from "react";
|
||||||
|
|
||||||
const getQueryParam = (param: string) => {
|
const getQueryParam = (param: string) => {
|
||||||
|
|
@ -58,7 +59,7 @@ export default function AssessmentPage() {
|
||||||
[key: string]: boolean;
|
[key: string]: boolean;
|
||||||
}>({});
|
}>({});
|
||||||
const fileInputRef = useRef<HTMLInputElement>(null);
|
const fileInputRef = useRef<HTMLInputElement>(null);
|
||||||
|
const [modalOpen, setModalOpen] = useState(false);
|
||||||
const [selectedSubAspectId, setSelectedSubAspectId] = useState<string | null>(null);
|
const [selectedSubAspectId, setSelectedSubAspectId] = useState<string | null>(null);
|
||||||
const [assessmentId, setAssessmentId] = useState<string | null>(null);
|
const [assessmentId, setAssessmentId] = useState<string | null>(null);
|
||||||
const [answers, setAnswers] = useState<{ [key: string]: string }>({});
|
const [answers, setAnswers] = useState<{ [key: string]: string }>({});
|
||||||
|
|
@ -74,6 +75,10 @@ export default function AssessmentPage() {
|
||||||
getQuestionsAllQueryOptions(page, limit)
|
getQuestionsAllQueryOptions(page, limit)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
const handleFinishClick = () => {
|
||||||
|
setModalOpen(true);
|
||||||
|
};
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const id = getQueryParam("id");
|
const id = getQueryParam("id");
|
||||||
|
|
||||||
|
|
@ -99,7 +104,7 @@ export default function AssessmentPage() {
|
||||||
}
|
}
|
||||||
}, [aspectsQuery.data, selectedSubAspectId, data?.data]);
|
}, [aspectsQuery.data, selectedSubAspectId, data?.data]);
|
||||||
|
|
||||||
const handleFinishClick = () => {
|
const handleConfirmFinish = () => {
|
||||||
if (assessmentId) {
|
if (assessmentId) {
|
||||||
// Menggunakan history.pushState untuk mengubah URL tanpa reload
|
// Menggunakan history.pushState untuk mengubah URL tanpa reload
|
||||||
const newUrl = `/assessmentResult?id=${assessmentId}`;
|
const newUrl = `/assessmentResult?id=${assessmentId}`;
|
||||||
|
|
@ -558,6 +563,14 @@ export default function AssessmentPage() {
|
||||||
Selesai
|
Selesai
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{/* Modal untuk konfirmasi selesai asesmen */}
|
||||||
|
<FinishAssessmentModal
|
||||||
|
opened={modalOpen}
|
||||||
|
onClose={() => setModalOpen(false)}
|
||||||
|
onConfirm={handleConfirmFinish}
|
||||||
|
assessmentId={assessmentId}
|
||||||
|
/>
|
||||||
</Card>
|
</Card>
|
||||||
</div>
|
</div>
|
||||||
</Flex>
|
</Flex>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user