2022-05-27 14:39:05 +03:00
|
|
|
import React, {useEffect, useState} from 'react';
|
|
|
|
import {useDispatch, useSelector} from "react-redux";
|
|
|
|
import {fetchResultTest, selectedTest, selectResult} from "../../../redux/quizSlice";
|
2023-01-20 16:20:06 +03:00
|
|
|
import {apiRequest} from "../../../api/request";
|
2022-05-27 14:39:05 +03:00
|
|
|
|
|
|
|
|
|
|
|
export const Results = () => {
|
2023-01-16 15:24:08 +03:00
|
|
|
const result = useSelector(selectResult);
|
|
|
|
const test = useSelector(selectedTest);
|
|
|
|
const [maxScore, setMaxScore] = useState('');
|
|
|
|
const dispatch = useDispatch();
|
2022-05-27 14:39:05 +03:00
|
|
|
|
2023-01-16 19:57:55 +03:00
|
|
|
useEffect(() => {
|
2023-01-16 15:24:08 +03:00
|
|
|
dispatch(fetchResultTest(test.uuid));
|
|
|
|
apiRequest(`/user-questionnaire/get-points-number?user_questionnaire_uuid=${test.uuid}`)
|
|
|
|
.then((res) => setMaxScore(res.sum_point));
|
|
|
|
|
2023-01-16 19:57:55 +03:00
|
|
|
}, [apiRequest, dispatch, test]);
|
2022-05-27 14:39:05 +03:00
|
|
|
|
2023-01-16 15:24:08 +03:00
|
|
|
return (
|
|
|
|
<div className={'result _container'}>
|
2022-05-27 14:39:05 +03:00
|
|
|
{
|
2023-01-16 15:24:08 +03:00
|
|
|
!result ? <h1 style={{display: "block"}}>Ожидайте результата...</h1> :
|
2022-05-27 14:39:05 +03:00
|
|
|
|
2023-01-16 15:24:08 +03:00
|
|
|
<div className="result__body">
|
2022-05-27 14:39:05 +03:00
|
|
|
<div className="result__text">Благодарим за прохождение теста</div>
|
|
|
|
<div className="result__text">Ваш Результат: <span
|
2023-01-16 15:24:08 +03:00
|
|
|
className="result__score">{result.score}</span> из {maxScore} </div>
|
|
|
|
</div>
|
2022-05-27 14:39:05 +03:00
|
|
|
}
|
2023-01-16 15:24:08 +03:00
|
|
|
</div>
|
|
|
|
);
|
2022-05-27 14:39:05 +03:00
|
|
|
};
|
|
|
|
|