feat: 我的考试UI
This commit is contained in:
parent
bb309c72af
commit
8a683ee257
|
@ -0,0 +1,185 @@
|
|||
<template>
|
||||
<a-card :bordered="false" :loading="loading">
|
||||
<div class="table-page-search-wrapper">
|
||||
<SearchCom
|
||||
:form="queryParam"
|
||||
:list="queryOptions"
|
||||
@search="handleRefresh"
|
||||
@reset="
|
||||
() => {
|
||||
queryParam = {}
|
||||
handleRefresh()
|
||||
}
|
||||
"></SearchCom>
|
||||
</div>
|
||||
</br>
|
||||
<a-tabs :default-active-key="activeTab">
|
||||
<a-tab-pane key="1" tab="预约考试">
|
||||
<s-table
|
||||
ref="examTable"
|
||||
:pageSize="5"
|
||||
:columns="examColumns"
|
||||
:data="loadExamData"
|
||||
:rowKey="record => record.id">
|
||||
<span slot="index" slot-scope="text, record, index">
|
||||
{{ index + 1 }}
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record, index">
|
||||
<a v-if="index % 2 == 0" @click="handlerGoExam">进入考试</a>
|
||||
<a v-if="index % 2 == 1" disabled>已预约</a>
|
||||
</span>
|
||||
</s-table>
|
||||
</a-tab-pane>
|
||||
<a-tab-pane key="2" tab="已参加考试">
|
||||
<s-table
|
||||
ref="examDoneTable"
|
||||
:pageSize="5"
|
||||
:columns="examDoneColumns"
|
||||
:data="loadExamDoneData"
|
||||
:rowKey="record => record.id">
|
||||
<span slot="index" slot-scope="text, record, index">
|
||||
{{ index + 1 }}
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record, index">
|
||||
<a @click="handlerGoReport">查看详情</a>
|
||||
</span>
|
||||
</s-table>
|
||||
</a-tab-pane>
|
||||
</a-tabs>
|
||||
</a-card>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { STable, SearchCom } from '@/components'
|
||||
import { getCourseList } from '@/api/course/course'
|
||||
|
||||
export default {
|
||||
components: { STable, SearchCom },
|
||||
data () {
|
||||
return {
|
||||
loading: false,
|
||||
activeTab: '1',
|
||||
queryParam: {
|
||||
examType: '' // 课程分类
|
||||
},
|
||||
queryOptions: [
|
||||
{ type: 'select-dic-tree', placeholder: '考试分类', key: 'examType', options: [] }
|
||||
],
|
||||
examColumns: [
|
||||
{
|
||||
title: '序号',
|
||||
width: '80px',
|
||||
scopedSlots: { customRender: 'index' },
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '考试科目',
|
||||
dataIndex: 'name'
|
||||
},
|
||||
{
|
||||
title: '准考证号',
|
||||
dataIndex: 'carId'
|
||||
},
|
||||
{
|
||||
title: '考试形式',
|
||||
dataIndex: 'type'
|
||||
},
|
||||
{
|
||||
title: '考试时间',
|
||||
dataIndex: 'date'
|
||||
},
|
||||
{
|
||||
title: '考试时长',
|
||||
dataIndex: 'length'
|
||||
},
|
||||
{
|
||||
title: '考试资格',
|
||||
dataIndex: 'zige'
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
examDoneColumns: [
|
||||
{
|
||||
title: '序号',
|
||||
width: '80px',
|
||||
scopedSlots: { customRender: 'index' },
|
||||
align: 'center'
|
||||
},
|
||||
{
|
||||
title: '考试科目',
|
||||
dataIndex: 'name'
|
||||
},
|
||||
{
|
||||
title: '准考证号',
|
||||
dataIndex: 'carId'
|
||||
},
|
||||
{
|
||||
title: '考试形式',
|
||||
dataIndex: 'type'
|
||||
},
|
||||
{
|
||||
title: '答卷时间',
|
||||
dataIndex: 'date'
|
||||
},
|
||||
{
|
||||
title: '考试时长',
|
||||
dataIndex: 'length'
|
||||
},
|
||||
{
|
||||
title: '考试成绩',
|
||||
dataIndex: 'zige'
|
||||
},
|
||||
{
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
}
|
||||
],
|
||||
loadExamData: parameter => {
|
||||
return getCourseList(Object.assign(parameter, this.queryParam)).then(res => {
|
||||
return res
|
||||
})
|
||||
},
|
||||
loadExamDoneData: parameter => {
|
||||
return getCourseList(Object.assign(parameter, this.queryParam)).then(res => {
|
||||
return res
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
this.getExamTypeList()
|
||||
},
|
||||
methods: {
|
||||
// 搜索
|
||||
handleRefresh () {
|
||||
const { activeTab } = this
|
||||
if (activeTab === '1') {
|
||||
this.$refs.examTable.refresh()
|
||||
} else {
|
||||
this.$refs.examDoneColumns.refresh()
|
||||
}
|
||||
},
|
||||
handlerGoExam () {
|
||||
this.$router.push({ path: '/myexamDetail', query: { type: 'exam' } })
|
||||
},
|
||||
handlerGoReport () {
|
||||
this.$router.push({ path: '/myreport', query: { type: 'exam' } })
|
||||
},
|
||||
// 获取考试分类列表
|
||||
getExamTypeList () {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
|
||||
</style>
|
Loading…
Reference in New Issue