diff --git a/src/api/modules/test.js b/src/api/modules/test.js index fea0bce1..068039fc 100644 --- a/src/api/modules/test.js +++ b/src/api/modules/test.js @@ -41,15 +41,25 @@ const pulish = function(id, publish) { if (!publish) { flag = publish; } - + return ajax.post('/xboe/m/exam/test/publish?id=' + id + '&publish=' + flag); } +/** + *@parma{ + * testId 考试id + *} + */ +const exports=function (query){ + return ajax.post('/xboe/m/exam/alone/answer/export',query,{responseType: 'blob'}); +} + export default { detail, update, del, save, querylist, - pulish + pulish, + exports } diff --git a/src/views/Index.vue b/src/views/Index.vue index 1ee8146d..6e4569e3 100644 --- a/src/views/Index.vue +++ b/src/views/Index.vue @@ -37,11 +37,11 @@
- 2324人学习 + 2581人学习
- 5 + 5.0
@@ -695,12 +695,12 @@ export default { margin-bottom:8px; } .case-text{ - height: 57px; + height: 56px; font-size: 14px; overflow: hidden; - color: #888888; - // line-height: 18px; - margin-bottom:8px; + color: #888888; + // line-height: 18px; + margin-bottom:8px; } ::v-deep .case-inter{ width: 100%; diff --git a/src/views/StudyIndex.vue b/src/views/StudyIndex.vue index 3c44cc33..1adfa426 100644 --- a/src/views/StudyIndex.vue +++ b/src/views/StudyIndex.vue @@ -130,11 +130,15 @@ // cmtask_status:this.cmtask_status, // cmtask_name:this.cmtask_name, } + apiBoeCourse.cmtaskList(params).then(res=>{ if(res.status==200){ this.total = res.result.count this.couresList = res.result.list; this.loading = false; + if(this.$route.fullPath != '/uc/study/task' && this.$route.fullPath != '/uc/study/courses' && this.$route.fullPath != '/study/index') { + return; + } if(res.result.count > 0) { this.$router.push('/uc/study/task') } else { @@ -147,8 +151,10 @@ }else{ this.$router.push('/uc/study/courses') } - // this.pageData.list = res.result.list; }).catch(err=>{ + if(this.$route.fullPath != '/uc/study/task' || this.$route.fullPath != '/uc/study/courses' || this.$route.fullPath != '/study/index') { + return; + } this.$router.push('/uc/study/courses'); }) }, diff --git a/src/views/exam/ExamList.vue b/src/views/exam/ExamList.vue index 977d30ae..351b79c5 100644 --- a/src/views/exam/ExamList.vue +++ b/src/views/exam/ExamList.vue @@ -470,6 +470,7 @@
搜索 + 导出成绩
@@ -500,7 +501,7 @@ @@ -665,6 +666,7 @@ import { mapGetters,mapActions} from 'vuex'; import {examType,numberToLetter} from '@/utils/tools.js'; import usergroupApi from "@/api/modules/usergroup"; import pushRecordApi from "@/api/modules/pushRecord"; +import {toScoreTow} from '@/utils/tools.js' export default { name: 'articleItems', computed: { @@ -672,6 +674,7 @@ export default { }, data() { return { + toScoreTow, qnum:0,//这里默认是30吧 examDateTime:[], answerData:{ @@ -753,6 +756,25 @@ export default { this.loadData() }, methods: { + exportsList(){ + if(this.answerData.data.length == 0){ + return this.$message.warning('暂无导出数据!') + } + apiTest.exports({testId: this.answerData.row.id}).then(res=>{ + if(res.status){ + this.$message.error(res.message) + } else { + const link = document.createElement('a');// 创建a标签 + let blob = new Blob([res],{type: 'application/vnd.ms-excel;charset=UTF-8'}); // 设置文件类型 + link.style.display = "none"; + link.href = URL.createObjectURL(blob); // 创建URL + link.setAttribute("download", "成绩.xls"); + document.body.appendChild(link); + link.click(); + document.body.removeChild(link); + } + }) + }, changePaper(e) { this.questDirOptions.forEach(item=>{ if(item.id == e) { @@ -1181,6 +1203,10 @@ export default { this.answerData.count = res.result.count; } }) + }, + //导入考试成绩 + exportAnswers(){ + }, handleSizeAnswerChange(val){ this.answerData.pageSize = val diff --git a/src/views/exam/Test.vue b/src/views/exam/Test.vue index 028be4f4..6473fad1 100644 --- a/src/views/exam/Test.vue +++ b/src/views/exam/Test.vue @@ -75,10 +75,10 @@
{{ i + 1 }}、{{ question.title }} ({{question.defaultScore}}分)
- 正确 + 正确
- 错误 + 错误
@@ -349,24 +349,25 @@ export default { answer.push(key); paperJson.forEach((item,index) => { item.result=true; - if(item.id == key) { - if(item.type==1){ - item.userAnswer=''; - }else if(item.type==2){ - item.userAnswer=[]; - }else{ - item.userAnswer='' - } - item.correctOptIdxs=[]; - item.userOptIdxs=[]; - if(item.type==1){ - item.userAnswer=answerJson[key]; - }else if(item.type==2){ - item.userAnswer.push(...answerJson[key].split(',')); - }else{ - item.userAnswer=answerJson[key] - } - data.push(item); + if(item.id == key) { + if(item.type==1){ + item.userAnswer=''; + }else if(item.type==2){ + item.userAnswer=[]; + }else{ + item.userAnswer='' + } + + item.correctOptIdxs=[]; + item.userOptIdxs=[]; + if(item.type==1){ + item.userAnswer=answerJson[key]; + }else if(item.type==2){ + item.userAnswer.push(...answerJson[key].split(',')); + }else{ + item.userAnswer=answerJson[key] + } + data.push(item); // item.userAnswer.push(answerJson[key]); } }); @@ -579,7 +580,7 @@ export default { } let str1=item.userAnswer.join(); let str2=tempAnswer.join(); - + if(str1==str2){ console.log('str1='+str1); console.log('str2='+str2); @@ -605,10 +606,12 @@ export default { }else if(qitem.type==2){ //多选 qitem.userAnswer=avalue.split(','); }else if(qitem.type==3){ //判断 - qitem.userAnswer=avalue=='true'? true:false; + qitem.userAnswer=avalue; + //console.log(avalue,'avalue'); } } }); + //console.log(this.paperQuestion,'this.paperQuestion') this.arrangeQuestion(); this.splitQuestionType(); //进入考试阶段 @@ -726,10 +729,9 @@ export default { if(this.judge.length > 0){ this.judge.forEach(item => { let judgeUserAnswer = ""; - if(String(item.userAnswer) && item.userAnswer != null){ - + //if(String(item.userAnswer) && item.userAnswer != null){ judgeUserAnswer = item.userAnswer + ""; - } + //} answer[item.id] = judgeUserAnswer; }); } diff --git a/src/views/exam/TestPaper.vue b/src/views/exam/TestPaper.vue index 861f65ac..227ebfb0 100644 --- a/src/views/exam/TestPaper.vue +++ b/src/views/exam/TestPaper.vue @@ -546,6 +546,24 @@ export default { if(!this.paper.testName) { return this.$message.warning('请您完善基本信息必填项!') } + //检查是否有重复的试卷 + let qidMap=new Map(); + let hasItem=null; + this.paper.data.some(qitem=>{ + if(qidMap.has(qitem.id)){ + hasItem=qitem; + return true; + }else{ + qidMap.set(qitem.id,qitem.id); + return false; + } + }) + if(hasItem!=null){ + console.log(hasItem); + this.$message.error('选择的试题重复:'+hasItem.title) + return + } + this.paper.resOwner1 = this.resOwner[0]; this.paper.resOwner2 = this.resOwner[1]; this.paper.resOwner3 = this.resOwner[2]; diff --git a/src/views/portal/course/Index.vue b/src/views/portal/course/Index.vue index 1d8b7be1..2266e6d4 100644 --- a/src/views/portal/course/Index.vue +++ b/src/views/portal/course/Index.vue @@ -100,7 +100,7 @@ -
+