"use client"; import { getNextQuizNetijeData, getQuizNetijeData } from "@/api/queries"; import { Datum } from "@/models/quizQuestionsWinners.model"; import { notFound } from "next/navigation"; import React, { useEffect, useState } from "react"; import Loader from "../Loader"; const padding = "py-4"; const QuizTapgyrResults = ({ id, steps }: { id: string; steps: string[] }) => { const [data, setData] = useState([]); const [loading, setLoading] = useState(false); const [phone, setPhone] = useState(""); const [total, setTotal] = useState(0); const [nextPageQueries, setQueries] = useState<{ limit: number; offset: number; }>({ limit: 0, offset: 0, }); async function getData(next?: boolean) { if (next) { const res = await getNextQuizNetijeData( id, nextPageQueries.limit, nextPageQueries.offset ); if (res) { setQueries({ limit: res.per_page, offset: nextPageQueries.offset + res.per_page, }); setData([...data, ...res.data]); } } else { setLoading(true); const res = await getQuizNetijeData(id); if (res) { setTotal(res.total); setQueries({ limit: res.per_page, offset: res.per_page, }); setData(res.data); setLoading(false); } else { notFound(); } } } // const handleSearchSubmit = async (event: any) => { // if (event.key === "Enter") { // event.preventDefault(); // try { // setLoading(true); // const response = await fetch( // `https://sms.turkmentv.gov.tm/api/quiz/${id}/search`, // { // method: "POST", // headers: { // "Content-Type": "application/json", // }, // body: JSON.stringify({ phone, tapgyr: 1 }), // } // ); // // Handle the response as needed // const data = await response.json(); // setLoading(false); // // setData(data); // console.log(data); // } catch (error) { // console.log(error); // } // } // }; useEffect(() => { getData(); }, []); return (

Netijeler

{/*
setPhone(e.target.value)} onKeyDown={(e) => handleSearchSubmit(e)} maxLength={8} minLength={8} />
*/}
{data.length > 0 && !loading ? ( // Table Head
{data[0].client?.id && ( Ýeri )} {data[0].client?.phone && ( Telefon beligisi )} {data[0].tapgyr_breakdown && steps.map((item) => ( Tapgyr {item} ))} {data[0].correct_answers_time && ( Nobatlaryň jemi )} {data[0].total_score_of_client && ( Utuklaryň jemi )}
{/* Table body */}
{data.map((winner, id) => (
{id > 0 && winner.correct_answers_time === data[id - 1].correct_answers_time ? id : id + 1}
+{winner.client?.phone ? winner.client.phone : "-"} {steps.map((step, i) => ( Tapgyr {step} ))}
{steps.map((step, i) => { const tapgyr = winner.tapgyr_breakdown?.find( (i) => i.tapgyr === Number(step) ); return (
{tapgyr ? tapgyr.tapgyr_correct_time : "-"}
{tapgyr ? tapgyr.tapgyr_score : "-"}
); })}
{winner.correct_answers_time ? winner.correct_answers_time : "-"}
{steps.map((step, i) => { const tapgyr = winner.tapgyr_breakdown?.find( (i) => i.tapgyr === Number(step) ); return (
{tapgyr ? tapgyr.tapgyr_correct_time : "-"}
); })}
{winner.total_score_of_client ? winner.total_score_of_client : "-"}
{steps.map((step, i) => { const tapgyr = winner.tapgyr_breakdown?.find( (i) => i.tapgyr === Number(step) ); return (
{tapgyr ? tapgyr.tapgyr_correct_time : "-"}
); })}
{/* {steps.map((step, i) => { const tapgyr = winner.tapgyr_breakdown?.find( (i) => i.tapgyr === Number(step) ); return (
Tapgyr {step}
{tapgyr ? tapgyr.tapgyr_correct_time : "-"}
{tapgyr ? tapgyr.tapgyr_correct_time : "-"}
); })} */}
))}
) : ( )} {data.length < total && ( )}
); }; export default QuizTapgyrResults;