|
|
@@ -5,11 +5,13 @@
|
|
|
{{ quizDetail.name }}
|
|
|
<c-button class="delete-button" :left="12" text theme="red" @click="handleDelete" icon="close">删除测试</c-button>
|
|
|
</back-title>
|
|
|
- <div class="sub-title mb-16">学生提交结果列表</div>
|
|
|
+ <quiz-statistic :quiz-id="$route.params.quizId"></quiz-statistic>
|
|
|
<search-bar v-model="searchKey"></search-bar>
|
|
|
<pagination @change="handlePageChange" v-show="result && result.length > 0" :page="page" :size="size"
|
|
|
:total-elements="totalElements"></pagination>
|
|
|
- <div class="answer-card-container" v-if="quizDetail.state === QuizState.closed || quizDetail.state === QuizState.ongoing">
|
|
|
+ <div class="no-content-warning" v-if="result === null">加载中...</div>
|
|
|
+ <div class="answer-card-container"
|
|
|
+ v-else-if="quizDetail.state === QuizState.closed || quizDetail.state === QuizState.ongoing">
|
|
|
<answer-card @click="handleSelectAnswer(answer)" v-for="answer of result" :key="answer.studentId"
|
|
|
:answer="answer"></answer-card>
|
|
|
</div>
|
|
|
@@ -33,19 +35,21 @@ import CButton from '@/components/Basic/CButton'
|
|
|
import Pagination from '@/components/Pagination'
|
|
|
import SearchBar from '@/components/Basic/SearchBar'
|
|
|
import debounce from '@/utils/debounce'
|
|
|
+import QuizStatistic from '@/views/quiz/components/QuizStatistic'
|
|
|
|
|
|
export default {
|
|
|
name: 'QuizDetail',
|
|
|
- components: { SearchBar, Pagination, CButton, AnswerCard, QuizDetailFactory, BackTitle },
|
|
|
+ components: { QuizStatistic, SearchBar, Pagination, CButton, AnswerCard, QuizDetailFactory, BackTitle },
|
|
|
data () {
|
|
|
return {
|
|
|
page: 1,
|
|
|
- size: 12,
|
|
|
+ size: 9,
|
|
|
totalElements: 1,
|
|
|
searchKey: '',
|
|
|
|
|
|
quizDetail: createDefaultQuiz(),
|
|
|
- result: [],
|
|
|
+ result: null,
|
|
|
+
|
|
|
showStudentName: '',
|
|
|
showScore: '',
|
|
|
showSubmitAt: '',
|
|
|
@@ -112,7 +116,7 @@ export default {
|
|
|
.quiz-detail {
|
|
|
max-width: 1100px;
|
|
|
margin: 0 auto;
|
|
|
- padding: 64px 24px;
|
|
|
+ padding: 32px 24px;
|
|
|
}
|
|
|
|
|
|
.delete-button {
|
|
|
@@ -120,7 +124,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
.answer-card-container {
|
|
|
- margin: 32px 0;
|
|
|
+ margin: 12px 0 0 0 ;
|
|
|
column-width: 150px;
|
|
|
column-gap: 12px;
|
|
|
|
|
|
@@ -145,11 +149,11 @@ export default {
|
|
|
flex: 1;
|
|
|
}
|
|
|
.quiz {
|
|
|
- margin: -32px 0;
|
|
|
+ margin: -16px 0;
|
|
|
width: 100px;
|
|
|
- padding: 32px 24px 32px 12px;
|
|
|
+ padding: 16px 24px 16px 12px;
|
|
|
flex: 1;
|
|
|
- max-height: calc(100vh - 128px);
|
|
|
+ max-height: calc(100vh - 64px);
|
|
|
overflow: auto;
|
|
|
}
|
|
|
}
|