| | |
| | | }, |
| | | // 处理数据结构 |
| | | chageData(arr, zrr) { |
| | | let newData = [] |
| | | // 题库题目类型 |
| | | const questionTypeList = [{ |
| | | name: '单选题', |
| | |
| | | ] |
| | | for (let i = 0; i < arr.length; i++) { |
| | | const item = arr[i] |
| | | item.questionTypeList = questionTypeList |
| | | for (let j = 0; j < zrr.length; j++) { |
| | | const ele = zrr[j] |
| | | const qusObj = item.question.find((citem) => citem.cmsItemId == ele.id) |
| | | if (qusObj?.cmsItemId) { |
| | | ele.userAnswer = qusObj.answer |
| | | const index = findIndexByValue(questionTypeList, ele.questionType) |
| | | item.questionTypeList = JSON.parse(JSON.stringify(questionTypeList)); |
| | | item.other = [] |
| | | for (let j = 0; j < item.question.length; j++) { |
| | | const ele = item.question[j] |
| | | const data = zrr.find((sitem) => sitem.id == ele.cmsItemId) |
| | | const index = findIndexById(zrr, ele.cmsItemId) |
| | | if (index > -1) { |
| | | item.questionTypeList[index].data.push(ele) |
| | | item.other[index] = { |
| | | ...data, |
| | | userAnswer: ele.answer |
| | | } |
| | | } |
| | | } |
| | | item.questionTypeList = item.questionTypeList.filter((item) => item.data.length > 0) |
| | | newData.push(item) |
| | | if (item.other.length > 0) { |
| | | item.other.forEach((aitem) => { |
| | | const index = findIndexByValue(item.questionTypeList, aitem.questionType) |
| | | if (index > -1) { |
| | | item.questionTypeList[index].data.push(aitem) |
| | | } |
| | | return newData.filter((item) => item.questionTypeList.length > 0) |
| | | }) |
| | | } |
| | | item.questionTypeList = item.questionTypeList.filter((xitem) => xitem.data.length > 0) |
| | | } |
| | | return arr |
| | | }, |
| | | findIndexByValue(res, type) { |
| | | for (let i = 0; i < res.length; i++) { |
| | |
| | | } |
| | | return -1 // 如果未找到,则返回 -1 |
| | | }, |
| | | |
| | | findIndexById(res, id) { |
| | | for (let i = 0; i < res.length; i++) { |
| | | if (res[i].id == id) { |
| | | return i |
| | | } |
| | | } |
| | | return -1 // 如果未找到,则返回 -1 |
| | | }, |
| | | |
| | | toDetail(e) { |
| | | const { |
| | | item |