235 lines
6.7 KiB
Vue
235 lines
6.7 KiB
Vue
|
<template>
|
|||
|
<view>
|
|||
|
<cu-custom bgColor="bg-gradual-blueness" :isBack="true">
|
|||
|
<block slot="backText">返回</block>
|
|||
|
<block slot="content">考试详情</block>
|
|||
|
</cu-custom>
|
|||
|
<view class="course">
|
|||
|
<view class="course-aa">
|
|||
|
<view class="course-items" v-for="(item,index) in form.QUESTIONLIST" :key="item.QUESTION_ID">
|
|||
|
<view class="course-ask">
|
|||
|
{{ index + 1 }}.
|
|||
|
<text v-if="item.QUESTIONTYPE == '1'" class="mark">(单选题)</text>
|
|||
|
<text v-if="item.QUESTIONTYPE == '2'" class="mark">(多选题)</text>
|
|||
|
<text v-if="item.QUESTIONTYPE == '3'" class="mark">(判断题)</text>
|
|||
|
{{ item.QUESTIONDRY }}
|
|||
|
</view>
|
|||
|
<view class="course-answer">
|
|||
|
<radio-group v-if="item.QUESTIONTYPE == '1'" v-model="item.ANSWER">
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='A'?'checked':''" :checked="item.ANSWER=='A'?true:false" :disabled="isDisabled" value="A"></radio>
|
|||
|
<text class="title">A.{{ item.OPTIONA }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='B'?'checked':''" :checked="item.ANSWER=='B'?true:false" :disabled="isDisabled" value="B"></radio>
|
|||
|
<text class="title">B.{{ item.OPTIONB }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='C'?'checked':''" :checked="item.ANSWER=='C'?true:false" :disabled="isDisabled" value="C"></radio>
|
|||
|
<text class="title">C.{{ item.OPTIONC }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='D'?'checked':''" :checked="item.ANSWER=='D'?true:false" :disabled="isDisabled" value="D"></radio>
|
|||
|
<text class="title">D.{{ item.OPTIOND }}</text>
|
|||
|
</label>
|
|||
|
</radio-group>
|
|||
|
<checkbox-group v-if="item.QUESTIONTYPE == '2'" class="checkbox" v-model="item.ANSWER">
|
|||
|
<label class="answer-lable">
|
|||
|
<checkbox :id="'checkA'+index" value="A" :checked="item.ANSWER.includes('A')?true:false" :disabled="isDisabled"></checkbox>
|
|||
|
<text class="title">A.{{ item.OPTIONA }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<checkbox :id="'checkB'+index" value="B" :checked="item.ANSWER.includes('B')?true:false" :disabled="isDisabled"></checkbox>
|
|||
|
<text class="title">B.{{ item.OPTIONB }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<checkbox :id="'checkC'+index" value="C" :checked="item.ANSWER.includes('C')?true:false" :disabled="isDisabled"></checkbox>
|
|||
|
<text class="title">C.{{ item.OPTIONC }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<checkbox :id="'checkD'+index" value="D" :checked="item.ANSWER.includes('D')?true:false" :disabled="isDisabled"></checkbox>
|
|||
|
<text class="title">D.{{ item.OPTIOND }}</text>
|
|||
|
</label>
|
|||
|
</checkbox-group>
|
|||
|
<radio-group v-if="item.QUESTIONTYPE == '3'" v-model="item.ANSWER">
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='A'?'checked':''" :checked="item.ANSWER=='A'?true:false" :disabled="isDisabled" value="A"></radio>
|
|||
|
<text class="title">A.{{ item.OPTIONA }}</text>
|
|||
|
</label>
|
|||
|
<label class="answer-lable">
|
|||
|
<radio class="blue" :class="item.ANSWER=='B'?'checked':''" :checked="item.ANSWER=='B'?true:false" :disabled="isDisabled" value="B"></radio>
|
|||
|
<text class="title">B.{{ item.OPTIONB }}</text>
|
|||
|
</label>
|
|||
|
</radio-group>
|
|||
|
</view>
|
|||
|
<view class="course-ask">
|
|||
|
正确答案:
|
|||
|
<text :class="item.RESULT == 'RIGHT' ? 'color-green' : 'color-red'" class="mark">{{ item.ANSWERRIGHT }}</text>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
</view>
|
|||
|
<view class="cu-tabbar-height"></view>
|
|||
|
</view>
|
|||
|
</template>
|
|||
|
|
|||
|
<script>
|
|||
|
import {
|
|||
|
basePath,
|
|||
|
corpinfoId,
|
|||
|
deptId,
|
|||
|
loginSession,
|
|||
|
formatDate,
|
|||
|
loginUser
|
|||
|
} from '@/common/tool.js'
|
|||
|
|
|||
|
export default {
|
|||
|
components: {},
|
|||
|
data() {
|
|||
|
return {
|
|||
|
isDisabled: true,
|
|||
|
STUDYTASK_ID: '',
|
|||
|
STAGEEXAMPAPER_ID: '',
|
|||
|
dataFlag: 'noData',
|
|||
|
sTop: 0,
|
|||
|
totalHeight: 0,
|
|||
|
form: {
|
|||
|
STAGEEXAMPAPER_ID: '', // 阶考ID
|
|||
|
EXAMNAME: '', // 试卷名称
|
|||
|
EXAMTIME: '', // 考试时间(开始时间)
|
|||
|
ANSWERSHEETTIME: '', // 答卷时间(持续时间)
|
|||
|
EXAMSCORE: 100, // 试卷分数
|
|||
|
QUESTIONNUM: '', // 试题数量(10、20、50、100)
|
|||
|
QUESTIONLIST: [],
|
|||
|
QUESTION_ID: [], // 试题ID数组
|
|||
|
QUESTIONTYPE: [], // 试题类型数组
|
|||
|
ANSWER: [], // 学员答案
|
|||
|
ANSWERRIGHT: [] // 正确答案
|
|||
|
}, //页面数据
|
|||
|
subForm: {}, //交卷数据
|
|||
|
list: [], //返回数据
|
|||
|
page: 1, //分页参数--页数
|
|||
|
rows: 10, //分页参数--每页数据条数
|
|||
|
totalCount: 0, //分页参数--初始化页数
|
|||
|
isEnd: false, //防止多次刷新
|
|||
|
totalPage: 0, //分页参数--分页数量
|
|||
|
noClick: true
|
|||
|
}
|
|||
|
},
|
|||
|
onLoad(event) {
|
|||
|
this.STUDYTASK_ID = event.STUDYTASK_ID
|
|||
|
this.STAGEEXAMPAPER_ID = event.STAGEEXAMPAPER_ID
|
|||
|
this.getData();
|
|||
|
},
|
|||
|
methods: {
|
|||
|
getData() {
|
|||
|
var _this = this;
|
|||
|
uni.showLoading({
|
|||
|
title: '请稍候'
|
|||
|
})
|
|||
|
uni.request({
|
|||
|
url: basePath + '/app/stageexam/findResult',
|
|||
|
method: 'POST',
|
|||
|
dataType: 'json',
|
|||
|
header: {
|
|||
|
'Content-type': 'application/x-www-form-urlencoded'
|
|||
|
},
|
|||
|
data: {
|
|||
|
STUDYTASK_ID: this.STUDYTASK_ID,
|
|||
|
STAGEEXAMPAPER_ID: this.STAGEEXAMPAPER_ID,
|
|||
|
USER_ID: loginUser.USER_ID
|
|||
|
},
|
|||
|
success: (res) => {
|
|||
|
if ("success" == res.data.result) {
|
|||
|
uni.hideLoading();
|
|||
|
_this.form = Object.assign(_this.form, res.data.pd)
|
|||
|
_this.form.QUESTIONLIST.forEach((ele) => {
|
|||
|
if (ele.ANSWER == ele.ANSWERRIGHT) {
|
|||
|
ele.RESULT = 'RIGHT'
|
|||
|
} else {
|
|||
|
ele.RESULT = 'ERROR'
|
|||
|
}
|
|||
|
if (ele.QUESTIONTYPE === '2') {
|
|||
|
ele.ANSWER = ele.ANSWER.split('')
|
|||
|
}
|
|||
|
})
|
|||
|
console.info(_this.form)
|
|||
|
} else {
|
|||
|
uni.showToast({
|
|||
|
title: res.data.message,
|
|||
|
duration: 2000
|
|||
|
});
|
|||
|
}
|
|||
|
}
|
|||
|
});
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
</script>
|
|||
|
|
|||
|
<style>
|
|||
|
.course {
|
|||
|
background-color: #fff;
|
|||
|
}
|
|||
|
|
|||
|
.course-header {
|
|||
|
padding: 20upx;
|
|||
|
border-bottom: 1upx solid #F1F1F1;
|
|||
|
line-height: 1.6;
|
|||
|
}
|
|||
|
|
|||
|
.course-name {
|
|||
|
font-weight: bold;
|
|||
|
font-size: 30upx;
|
|||
|
}
|
|||
|
|
|||
|
.course-int {
|
|||
|
color: #888;
|
|||
|
}
|
|||
|
|
|||
|
.course-obj {
|
|||
|
color: #888;
|
|||
|
}
|
|||
|
|
|||
|
.course-aa {
|
|||
|
padding: 0 20upx;
|
|||
|
}
|
|||
|
|
|||
|
.course-items {
|
|||
|
border-bottom: 1px dashed #F1F1F1;
|
|||
|
padding: 20upx 0;
|
|||
|
}
|
|||
|
|
|||
|
.course-items .course-ask {
|
|||
|
line-height: 1.6;
|
|||
|
font-size: 28upx;
|
|||
|
/* margin-bottom: 10upx; */
|
|||
|
}
|
|||
|
|
|||
|
.course-answer {
|
|||
|
padding-left: 40upx;
|
|||
|
margin-top: 20upx;
|
|||
|
}
|
|||
|
|
|||
|
.answer-lable {
|
|||
|
display: block;
|
|||
|
margin-bottom: 20upx;
|
|||
|
}
|
|||
|
|
|||
|
.answer-lable:last-child {
|
|||
|
margin-bottom: 0;
|
|||
|
}
|
|||
|
|
|||
|
.answer-lable radio {
|
|||
|
margin-right: 20upx;
|
|||
|
}
|
|||
|
|
|||
|
.color-red {
|
|||
|
color: red;
|
|||
|
}
|
|||
|
|
|||
|
.color-green {
|
|||
|
color: #21a03c;
|
|||
|
}
|
|||
|
</style>
|