reghao пре 7 месеци
родитељ
комит
e818d270ce

+ 1 - 1
src/views/exam/Exam.vue

@@ -5,7 +5,7 @@
         <ul class="el-menu--horizontal el-menu">
           <li class="el-menu-item">
             <a href="/exam" style="text-decoration-line: none">
-              <img src="@/assets/img/icon/like.png" class="el-avatar--circle el-avatar--medium" alt="img">
+              <img src="@/assets/img/icon/logo.png" class="el-avatar--circle el-avatar--medium" alt="img">
               exam
             </a>
           </li>

+ 48 - 40
src/views/exam/ExamEvalList.vue

@@ -32,30 +32,42 @@
         />
         <el-table-column
           prop="examName"
-          label="考试名称"
+          label="测评名称"
           width="150"
         />
         <el-table-column
-          prop="type"
-          label="考试类型"
+          label="测评码"
           width="90"
-        />
+        >
+          <template slot-scope="scope">
+            <el-tag
+              v-if="scope.row.needPasscode"
+              size="mini"
+              type="danger"
+            >需要</el-tag>
+            <el-tag
+              v-else
+              size="mini"
+              type="success"
+            >不需要</el-tag>
+          </template>
+        </el-table-column>
         <el-table-column
           prop="startTime"
-          label="考试时间"
+          label="测评时间"
           width="150"
         />
         <el-table-column
           prop="duration"
-          label="考试时长(分钟)"
+          label="测评时长(分钟)"
           width="150"
         />
         <el-table-column
           prop="totalScore"
-          label="考试总分"
+          label="试总分"
         />
         <el-table-column
-          prop="passScore"
+          prop="myScore"
           label="我的分数"
         />
         <el-table-column
@@ -65,19 +77,19 @@
         >
           <template slot-scope="scope">
             <el-button
-              v-if="scope.row.status === 1"
+              v-if="scope.row.evalStatus === 1"
               size="mini"
               type="primary"
               @click="prepareExam(scope.$index, scope.row)"
-            >去考试</el-button>
+            >去测评</el-button>
             <el-button
-              v-else-if="scope.row.status === 2"
+              v-else-if="scope.row.evalStatus === 2"
               size="mini"
               type="danger"
               @click="markPaper(scope.$index, scope.row)"
             >去批改</el-button>
             <el-button
-              v-else-if="scope.row.status === 3"
+              v-else-if="scope.row.evalStatus === 3"
               size="mini"
               type="warning"
               @click="waitMark(scope.$index, scope.row)"
@@ -105,32 +117,28 @@
     </el-main>
 
     <el-dialog
-      title="考试提示"
+      title="测评提示"
       :visible.sync="startExamDialog"
       center
       width="50%"
     >
       <el-alert
-        title="点击`开始考试`后将自动进入考试,请诚信考试,考试过程中可能会对用户行为、用户视频进行截图采样,请知悉!"
+        title="点击`开始测评`后将自动进入测评,请诚信测评,测评过程中可能会对用户行为、用户视频进行截图采样,请知悉!"
         type="error"
       />
       <el-card style="margin-top: 25px">
-        <span>考试名称:</span>{{ currentSelectedExam.examName }}
+        <span>测评名称:</span>{{ currentSelectedExam.examName }}
         <br>
-        <span>考试描述:</span>{{ currentSelectedExam.examDesc }}
-        <br>
-        <span>考试时长:</span>{{ currentSelectedExam.duration + '分钟' }}
+        <span>测评时长:</span>{{ currentSelectedExam.duration + '分钟' }}
         <br>
         <span>试卷总分:</span>{{ currentSelectedExam.totalScore }}分
         <br>
-        <span>及格分数:</span>{{ currentSelectedExam.passScore }}分
-        <br>
-        <span>开放类型:</span> {{ currentSelectedExam.type === 2 ? '需要密码' : '完全公开' }}
+        <span>开放类型:</span> {{ currentSelectedExam.needPasscode ? '需要密码' : '完全公开' }}
         <br>
       </el-card>
       <span slot="footer" class="dialog-footer">
         <el-button @click="startExamDialog = false">返 回</el-button>
-        <el-button type="primary" @click="startExam(currentSelectedExam.examId)">开始考试</el-button>
+        <el-button type="primary" @click="startExam(currentSelectedExam.examId)">开始测评</el-button>
       </span>
     </el-dialog>
   </el-container>
@@ -156,9 +164,9 @@ export default {
         pageSize: 10
       },
       allSubject: [],
-      // 开始考试的提示框
+      // 开始测评的提示框
       startExamDialog: false,
-      // 当前选中的考试的信息
+      // 当前选中的测评的信息
       currentSelectedExam: {
         examId: 114511
       }
@@ -216,25 +224,25 @@ export default {
       this.getData(this.queryInfo)
     },
     prepareExam(index, row) {
-      row.password = 12345678
-      row.type = 1
-      if (row.type === 2) {
-        this.$prompt('请提供考试密码', 'Tips', {
-          confirmButtonText: '确定',
-          cancelButtonText: '取消'
-        }).then(({ value }) => {
-          if (value === row.password) {
-            this.startExamDialog = true
-            this.currentSelectedExam = row
-          } else {
-            this.$message.error('密码错误o(╥﹏╥)o')
-          }
-        }).catch(() => {
-        })
-      } else {
+      if (!row.needPasscode) {
         this.startExamDialog = true
         this.currentSelectedExam = row
+        return
       }
+
+      this.$prompt('请提供测评码', 'Tips', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消'
+      }).then(({ value }) => {
+        if (value === 123) {
+          this.$message.error('密码错误o(╥﹏╥)o')
+          return
+        }
+
+        this.startExamDialog = true
+        this.currentSelectedExam = row
+      }).catch(() => {
+      })
     },
     startExam(paperId) {
       const routeUrl = this.$router.resolve({

+ 1 - 1
src/views/exam/ExamPaperDetail.vue

@@ -609,7 +609,7 @@ export default {
       })
     },
     onSubmitMarkPaper() {
-      this.$confirm('当前试题暂未做完, 是否继续提交o(╥﹏╥)o ?', 'Tips', {
+      this.$confirm('当前试题已批改, 是否确认提交o(╥﹏╥)o ?', 'Tips', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         type: 'warning'

+ 67 - 12
src/views/exam/ExamPaperList.vue

@@ -32,12 +32,12 @@
           type="index"
         />
         <el-table-column
-          prop="examName"
+          prop="paperName"
           label="试卷名称"
           width="150"
         />
         <el-table-column
-          prop="type"
+          prop="subject"
           label="所属科目"
           width="90"
         />
@@ -53,16 +53,71 @@
         />
         <el-table-column
           prop="totalScore"
-          label="试总分"
+          label="试总分"
         />
         <el-table-column
-          prop="passScore"
-          label="及格分数"
-        />
+          prop="scope"
+          label="试卷用户"
+        >
+          <template slot-scope="scope">
+            <el-tag
+              v-if="scope.row.scope === 1"
+              size="mini"
+            >所有用户</el-tag>
+            <el-tag
+              v-else
+              size="mini"
+              type="success"
+            >VIP用户</el-tag>
+          </template>
+        </el-table-column>
         <el-table-column
-          prop="passScore"
-          label="试卷状态"
-        />
+          prop="markType"
+          label="阅卷类型"
+        >
+          <template slot-scope="scope">
+            <el-tag
+              v-if="scope.row.markType === 1"
+              size="mini"
+            >管理员阅卷</el-tag>
+            <el-tag
+              v-else
+              size="mini"
+              type="success"
+            >自主阅卷</el-tag>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="测评码"
+        >
+          <template slot-scope="scope">
+            <el-tag
+              v-if="scope.row.passcode === undefined"
+              size="mini"
+            >不需要</el-tag>
+            <el-tag
+              v-else
+              size="mini"
+              type="success"
+            >{{ scope.row.passcode }}</el-tag>
+          </template>
+        </el-table-column>
+        <el-table-column
+          label="状态"
+        >
+          <template slot-scope="scope">
+            <el-tag
+              v-if="scope.row.expired"
+              size="mini"
+              type="danger"
+            >已过期</el-tag>
+            <el-tag
+              v-else
+              size="mini"
+              type="success"
+            >未过期</el-tag>
+          </template>
+        </el-table-column>
         <el-table-column
           fixed="right"
           label="操作"
@@ -170,12 +225,12 @@ export default {
       this.getData(this.queryInfo)
     },
     handleDelete(index, row) {
-      this.$confirm('确定要删除 ' + row.examName + '?', '提示', {
+      this.$confirm('确定要删除 ' + row.paperName + '?', '提示', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        deletePaper(row.examId).then(resp => {
+        deletePaper(row.paperId).then(resp => {
           if (resp.code === 0) {
             this.$notify({
               title: '提示',
@@ -197,7 +252,7 @@ export default {
       this.$router.push('/exam/paper/add')
     },
     previewPaper(index, row) {
-      const paperId = row.examId
+      const paperId = row.paperId
       const routeUrl = this.$router.resolve({
         path: '/exam/paper/detail',
         query: {