|
|
@@ -0,0 +1,234 @@
|
|
|
+<template>
|
|
|
+ <div>
|
|
|
+ <!-- 阅卷设置 -->
|
|
|
+ <el-dialog title="阅卷设置" :visible.sync="remarkSetVisibleTmp" width="80%" @close="closeRemarkDialog">
|
|
|
+ <el-tabs v-model="activeSetName" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="客观题设置" name="1">
|
|
|
+ <el-form :inline="true" v-model="addQueForm">
|
|
|
+ <el-form-item label="题号">
|
|
|
+ <el-input size="mini" v-model="addQueForm.fQno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="至">
|
|
|
+ <el-input size="mini" v-model="addQueForm.tQno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="分数">
|
|
|
+ <el-input size="mini" v-model="addQueForm.score"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button size="mini" type="primary" @click="addQues">设置</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-table :data="objectiveQueList">
|
|
|
+ <el-table-column label="序号" prop="qno" width="60px">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{scope.$index+1}}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="题号" prop="qno" width="60px"></el-table-column>
|
|
|
+ <el-table-column label="点选答案" prop="score" width="360px">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-tag v-for="item in ansOptionList" :key="item.label" type="success"
|
|
|
+ :effect="scope.row.stdAns.indexOf(item.value)==-1?'plain':'dark'" @click="setStdAns(scope.row,item)"
|
|
|
+ size="small">
|
|
|
+ {{ item.label }}
|
|
|
+ </el-tag>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="输入答案" prop="score">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input v-model="scope.row.stdAns" size="mini" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="满分" prop="qtype">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input type="number" v-model="scope.row.score" size="mini" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="部分分" prop="partScore">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input type="number" v-model="scope.row.partScore" size="mini" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="主观题设置" name="2">
|
|
|
+ <el-form :inline="true" v-model="addQueForm">
|
|
|
+ <el-form-item label="题号">
|
|
|
+ <el-input size="mini" v-model="addQueForm.fQno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="至">
|
|
|
+ <el-input size="mini" v-model="addQueForm.tQno"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="分数">
|
|
|
+ <el-input size="mini" v-model="addQueForm.score"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item>
|
|
|
+ <el-button size="mini" type="primary" @click="addQues">设置</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <el-table :data="subjectiveQueList">
|
|
|
+ <el-table-column label="序号" prop="qno" width="60px">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{scope.$index+1}}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="题号" prop="qno"></el-table-column>
|
|
|
+ <el-table-column label="分数" prop="std_score"></el-table-column>
|
|
|
+ <el-table-column label="查看切图" prop="qtype">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button type="text">查看</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="单双评" prop="score">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-select size="mini">
|
|
|
+ <el-option>单评</el-option>
|
|
|
+ <el-option>双评</el-option>
|
|
|
+ <el-option>多评</el-option>
|
|
|
+ </el-select>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="双评阈值" prop="score">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input type="text" size="mini"></el-input>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="小题设置" prop="score">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ 未设置<i class="el-icon-setting"></i>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="给分点" prop="score">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ 未设置<i class="el-icon-setting"></i>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="分配阅卷员" name="3">
|
|
|
+ <el-table :data="subjectiveMarkTeacherList">
|
|
|
+ <el-table-column label="教工号" prop="qno" width="80px"></el-table-column>
|
|
|
+ <el-table-column label="姓名" prop="qno" width="80px"></el-table-column>
|
|
|
+ <el-table-column label="角色" prop="score" width="80px"></el-table-column>
|
|
|
+ <el-table-column label="试题分配" prop="qtype">
|
|
|
+ <el-checkbox-group v-model="checkList">
|
|
|
+ <el-checkbox label="复选框 A"></el-checkbox>
|
|
|
+ <el-checkbox label="复选框 B"></el-checkbox>
|
|
|
+ <el-checkbox label="复选框 C"></el-checkbox>
|
|
|
+ <el-checkbox label="禁用" disabled></el-checkbox>
|
|
|
+ <el-checkbox label="选中且禁用" disabled></el-checkbox>
|
|
|
+ </el-checkbox-group>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ </el-dialog>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+export default {
|
|
|
+ compnets:{},
|
|
|
+ props:["remarkSetVisible","taskId","paperId"],
|
|
|
+ data(){
|
|
|
+ return {
|
|
|
+ activeSetName: "1",
|
|
|
+ addQueForm:{},
|
|
|
+ objectiveQueList:[],
|
|
|
+ subjectiveQueList:[],
|
|
|
+ subjectiveMarkTeacherList:[],
|
|
|
+ checkList:[],
|
|
|
+ remarkSetVisibleTmp:this.remarkSetVisible,
|
|
|
+ curTaskId:this.taskId,
|
|
|
+ curPaperId:this.paperId,
|
|
|
+ ansOptionList: [{
|
|
|
+ label: "A",
|
|
|
+ value: "A",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "B",
|
|
|
+ value: "B",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "C",
|
|
|
+ value: "C",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "D",
|
|
|
+ value: "D",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "E",
|
|
|
+ value: "E",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "F",
|
|
|
+ value: "F",
|
|
|
+ flag: 0
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: "G",
|
|
|
+ value: "G",
|
|
|
+ flag: 0
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch:{
|
|
|
+ remarkSetVisible(){
|
|
|
+ this.remarkSetVisibleTmp = this.remarkSetVisible
|
|
|
+ this.curTaskId = this.taskId
|
|
|
+ this.curPaperId = this.paperId
|
|
|
+ console.log(this.curTaskId,2222222222222)
|
|
|
+ console.log(this.curPaperId,33333333333333)
|
|
|
+ this.getPaperPieces(this.activeSetName,this.curPaperId)
|
|
|
+ },
|
|
|
+ },
|
|
|
+ methods:{
|
|
|
+ closeRemarkDialog() {
|
|
|
+ this.remarkSetVisibleTmp = false;
|
|
|
+ this.$emit("close")
|
|
|
+ this.fileList = []
|
|
|
+ },
|
|
|
+ handleClick(){
|
|
|
+ this.getPaperPieces(this.activeSetName,this.curPaperId)
|
|
|
+ },
|
|
|
+ addQues(){
|
|
|
+
|
|
|
+ },
|
|
|
+ getPaperPieces(quetype,paper_id){
|
|
|
+ this.$api.getStdQueList({"quetype":quetype,"paper_id":paper_id}).then(res=>{
|
|
|
+ if(quetype==1){
|
|
|
+ this.objectiveQueList = res.data.data;
|
|
|
+ }else{
|
|
|
+ this.subjectiveQueList = res.data.data;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ setStdAns(row, item) {
|
|
|
+ let orgAns = row.stdAns.split(",")
|
|
|
+ orgAns = orgAns.filter((item) => {
|
|
|
+ return item.length > 0
|
|
|
+ })
|
|
|
+ if (orgAns.indexOf(item.value) == -1) {
|
|
|
+ orgAns.push(item.value)
|
|
|
+ } else {
|
|
|
+ orgAns.splice(orgAns.indexOf(item.value), 1)
|
|
|
+ }
|
|
|
+ row.stdAns = orgAns.join(",")
|
|
|
+ },
|
|
|
+ },
|
|
|
+ created(){
|
|
|
+ console.log(this.curTaskId,333333333333)
|
|
|
+
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+<style lang="scss">
|
|
|
+
|
|
|
+</style>
|