提交 31001612 authored 作者: lihuihui's avatar lihuihui

fix: 提交提示修改

上级 fe34fc16
......@@ -43,7 +43,23 @@ export default {
},
// 提交答案
handleSubmit(data) {
const params = this.genSubmitData(data)
const params = this.genSubmitData(data).params
const answerNum = this.genSubmitData(data).answerNum
if (answerNum !== 0) {
this.$confirm(`您还有${answerNum}道题没有作答`, '请确认', {
confirmButtonText: '继续作答',
cancelButtonText: '确认提交',
type: 'warning'
})
.then(() => {})
.catch(() => {
this.submitApi(params)
})
} else {
this.submitApi(params)
}
},
submitApi(params) {
api.setCourseCache(Object.assign(params, { status: 1 })).then(res => {
this.$router.replace({
path: '/course/chapter/result',
......@@ -54,18 +70,24 @@ export default {
// 组装提交数据
genSubmitData(questionGroups) {
const answers = {}
let answerNum = 0
questionGroups.forEach(group => {
if (!answers[group.question_item_id]) {
answers[group.question_item_id] = {}
}
if (!answers[group.question_item_id]) answers[group.question_item_id] = {}
group.question_list.forEach(item => {
answers[item.question_item_id][item.id] = {
if (!item.user_answer.length) {
answerNum++
}
answers[group.question_item_id][item.id] = {
sign: item.sign ? item.sign : false,
answers: item.user_answer
}
})
})
return { type: 1, sheet_id: this.data.id, status: 0, answers: JSON.stringify(answers), duration: 0 }
const data = {
params: { type: 1, sheet_id: this.data.id, status: 0, answers: JSON.stringify(answers), duration: 0 },
answerNum: answerNum
}
return data
}
}
}
......
......@@ -53,6 +53,7 @@ export default {
const isSubmited = ['1', '2'].includes(this.data.status)
// 缓存答题
if (!isSubmited) {
clearInterval(this.cacheAnswerTime)
this.cacheAnswerTime = setInterval(() => {
this.submitExam(0)
}, 3000)
......@@ -68,20 +69,43 @@ export default {
const refData = this.$refs.exam
const id = this.data.id
const answer = {}
let answerNum = 0
refData.questionGroups.forEach(item => {
if (!answer[item.question_item_id]) answer[item.question_item_id] = {}
item.question_list.forEach(cItem => {
if (!cItem.user_answer.length) {
answerNum++
}
answer[item.question_item_id][cItem.id] = {
sign: cItem.sign ? cItem.sign : false,
answer: cItem.user_answer
}
})
})
if (isCache) {
if (answerNum !== 0) {
this.$confirm(`您还有${answerNum}道题没有作答`, '请确认', {
confirmButtonText: '继续作答',
cancelButtonText: '确认提交',
type: 'warning'
}).then(() => {
}).catch(() => {
this.submitApi(id, isCache, answer, refData.duration)
})
} else {
this.submitApi(id, isCache, answer, refData.duration)
}
} else {
this.submitApi(id, isCache, answer, refData.duration)
}
console.log(answerNum, 'num')
},
submitApi(id, isCache, answer, duration) {
const param = {
sheet_id: id,
status: isCache !== 0 ? 1 : 0, // 0缓存,1提交
answers: JSON.stringify(answer),
duration: refData.duration
duration: duration
}
api.setCache(param).then(response => {
if (isCache) {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论