资质考试

master
wangxi 3 years ago
parent dae2c0281d
commit 1c9b8f147f

@ -2,10 +2,10 @@
import { AlignLeftOutlined, PlusOutlined } from '@ant-design/icons'; import { AlignLeftOutlined, PlusOutlined } from '@ant-design/icons';
import { Switch, Button, Card, Col, List, Menu, Progress, Row, Typography, Space, Divider, Radio, Checkbox, Form } from 'antd'; import { Switch, Button, Card, Col, List, Menu, Progress, Row, Typography, Space, Divider, Radio, Checkbox, Form } from 'antd';
import { PageContainer } from '@ant-design/pro-layout'; import { PageContainer } from '@ant-design/pro-layout';
import { useParams, useRequest, history } from 'umi'; import { useParams, useRequest,history } from 'umi';
import { useEffect, useRef, useState } from 'react'; import { useEffect, useRef, useState } from 'react';
const { Text, Link } = Typography; const { Text, Link } = Typography;
import { getRulesPaper, getPaperQuestionList, finishExamination, getPersonPaperId } from './examAnser'; import { getRulesPaper, getPaperQuestionList, finishExamination,getPersonPaperId } from './examAnser';
import type { CardListItemDataType } from '../data'; import type { CardListItemDataType } from '../data';
import styles from './style.less'; import styles from './style.less';
import cookie from 'react-cookies'; import cookie from 'react-cookies';
@ -103,7 +103,7 @@ const CardList = () => {
const { loading, data } = useRequest(() => { const { loading, data } = useRequest(() => {
return getPersonPaperId({ return getPersonPaperId({
examination_id: params.examination_id, examination_id: params.examination_id,
person_id: cookie.load('person_id') person_id:cookie.load('person_id')
}); });
}, },
{ {
@ -132,27 +132,27 @@ const CardList = () => {
// 试题列表 // 试题列表
const paperList = result.question_list; const paperList = result.question_list;
const arr = [[], [], []]; let arr=[[],[],[]];
const question_type_count = [ let question_type_count=[
{ count: 0, question_type: 0, type_name: '单选' }, {count:0,question_type:0,type_name:'单选'},
{ count: 0, question_type: 1, type_name: '多选' }, {count:0,question_type:1,type_name:'多选'},
{ count: 0, question_type: 2, type_name: '填空' }, {count:0,question_type:2,type_name:'填空'},
]; ];
if (result.question_list.length !== 0) { if(result.question_list.length!==0){
setRuleId(result.question_list[0].rules_id) setRuleId(result.question_list[0].rules_id)
result.question_list.forEach((item) => { result.question_list.forEach((item)=>{
if (item.question_type === 0) { if(item.question_type===0){
arr[0].push(item) arr[0].push(item)
} else if (item.question_type === 1) { }else if(item.question_type===1){
arr[1].push(item) arr[1].push(item)
} else { }else {
arr[2].push(item) arr[2].push(item)
} }
}) })
} }
question_type_count[0].count = arr[0].length; question_type_count[0].count=arr[0].length;
question_type_count[1].count = arr[1].length; question_type_count[1].count=arr[1].length;
question_type_count[2].count = arr[2].length; question_type_count[2].count=arr[2].length;
const qList = question_type_count const qList = question_type_count
const questionList: any[] = [] const questionList: any[] = []
@ -179,9 +179,7 @@ const CardList = () => {
const questionInfo = [] const questionInfo = []
for (let i = 0; i < questionList.length; i++) { for (let i = 0; i < questionList.length; i++) {
questionList[i].children.map((e, index) => { questionList[i].children.map((e, index) => {
questionInfo.push({ ...e, index: [i, index] }) questionInfo.push({ ...e, index: index })
questionList[i].children[index].index = [i, index]
}) })
} }
@ -205,9 +203,9 @@ const CardList = () => {
return result; return result;
}, },
onSuccess: (result, params) => { onSuccess: (result, params) => {
if (result.success) { if(result.success){
const time = new Date(timeData).getTime(); const time=new Date(timeData).getTime();
const timeDiff = params.duration / 1000 - time; const timeDiff=params.duration/1000-time;
// console.log('timeDiff',timeDiff) // console.log('timeDiff',timeDiff)
history.push(`/dashboard/qualification/result/${result.data.pass_score}/${result.data.score}/${result.data.sum_score}/${params.examination_id}/${params.examination_name}/${timeDiff}`); history.push(`/dashboard/qualification/result/${result.data.pass_score}/${result.data.score}/${result.data.sum_score}/${params.examination_id}/${params.examination_name}/${timeDiff}`);
} }
@ -386,10 +384,10 @@ const CardList = () => {
// 修改答题卡状态 写入答案以及修改答题状态 // 修改答题卡状态 写入答案以及修改答题状态
const qX = questionNow?.question_type; const qX = questionNow?.question_type;
const qI = questionNow?.index; const qI = questionNow?.index;
questionList[questionNow.index[0]].children[questionNow.index[1]].answerSelect = questionAnswer; questionList[qX].children[qI].answerSelect = questionAnswer;
// 答题状态 // 答题状态
questionList[questionNow.index[0]].children[questionNow.index[1]].state = 1 questionList[qX].children[qI].state = 1
questionList[questionNow.index[0]].children[questionNow.index[1]].answerId = item.id questionList[qX].children[qI].answerId = item.id
// 提交答题卡 // 提交答题卡
setQuestionTypeList(questionList) setQuestionTypeList(questionList)
@ -415,10 +413,10 @@ const CardList = () => {
// 修改答题卡状态 写入答案以及修改答题状态 // 修改答题卡状态 写入答案以及修改答题状态
const qX = questionNow?.question_type; const qX = questionNow?.question_type;
const qI = questionNow?.index; const qI = questionNow?.index;
questionList[questionNow.index[0]].children[questionNow.index[1]].answerSelect = questionAnswer; questionList[qX].children[qI].answerSelect = questionAnswer;
// 答题状态 // 答题状态
questionList[questionNow.index[0]].children[questionNow.index[1]].state = 1 questionList[qX].children[qI].state = 1
questionList[questionNow.index[0]].children[questionNow.index[1]].answerId = e questionList[qX].children[qI].answerId = e
// 提交答题卡 // 提交答题卡
setQuestionTypeList(questionList) setQuestionTypeList(questionList)
@ -453,10 +451,10 @@ const CardList = () => {
// 修改答题卡状态 写入答案以及修改答题状态 // 修改答题卡状态 写入答案以及修改答题状态
const qX = questionNow?.question_type; const qX = questionNow?.question_type;
const qI = questionNow?.index; const qI = questionNow?.index;
questionList[questionNow.index[0]].children[questionNow.index[1]].answerSelect = questionAnswer; questionList[qX].children[qI].answerSelect = questionAnswer;
// 答题状态 // 答题状态
questionList[questionNow.index[0]].children[questionNow.index[1]].state = 1 questionList[qX].children[qI].state = 1
questionList[questionNow.index[0]].children[questionNow.index[1]].answerId = item.id questionList[qX].children[qI].answerId = item.id
// 提交答题卡 // 提交答题卡
setQuestionTypeList(questionList) setQuestionTypeList(questionList)
@ -505,9 +503,9 @@ const CardList = () => {
const nextTemp = paperInfo[i - 1] const nextTemp = paperInfo[i - 1]
const questionList = questionTypeList const questionList = questionTypeList
let nextData = {} let nextData = {}
questionList[nextTemp.index[0]].children.map((item, index) => { questionList[nextTemp.question_type].children.map((item, index) => {
if (item.id === nextTemp.id) { if (item.id === nextTemp.id) {
nextData = item nextData = { ...item, index: index }
} }
}) })
setQuestionNow(nextData) setQuestionNow(nextData)
@ -530,9 +528,9 @@ const CardList = () => {
const nextTemp = paperInfo[i + 1] const nextTemp = paperInfo[i + 1]
const questionList = questionTypeList const questionList = questionTypeList
let nextData = {} let nextData = {}
questionList[nextTemp.index[0]].children.map((item, index) => { questionList[nextTemp.question_type].children.map((item, index) => {
if (item.id === nextTemp.id) { if (item.id === nextTemp.id) {
nextData = item nextData = { ...item, index: index }
} }
}) })
setQuestionNow(nextData) setQuestionNow(nextData)
@ -545,9 +543,21 @@ const CardList = () => {
<Button size="large" type="primary" <Button size="large" type="primary"
onClick={() => { onClick={() => {
const questionFinishId = []
questionTypeList.map((e, i) => {
questionTypeList[i].children.map((e, index) => {
const answerId = e.answerId
answerId !== "" ? questionFinishId.push({
answer_id: (answerId instanceof Array) ? answerId.join(',') : answerId,
question_id: e.id,
question_type: e.question_type
}) : ""
})
})
const questionFinish = { const questionFinish = {
answers: JSON.stringify(questionFinishId), answers: JSON.stringify(questionFinishId),
examination_id: params.examination_id, examination_id:params.examination_id,
person_id: cookie.load('person_id'), person_id: cookie.load('person_id'),
paper_id: rulesPaperInfo paper_id: rulesPaperInfo
} }

Loading…
Cancel
Save