提交 8ed7e51a authored 作者: lihuihui's avatar lihuihui

Merge branch 'vite' of https://gitlab.ezijing.com/ezijing/x-learn into vite

# Conflicts: # src/modules/teacher/data/exam/components/QuestionType.vue
......@@ -2,7 +2,7 @@
<app-container>
<app-list v-bind="tableOptions" ref="list">
<template #header-aside>
<el-button type="text" style="margin-top: 5px; font-size: 24px">导出</el-button>
<el-button type="text">导出</el-button>
</template>
</app-list>
</app-container>
......
......@@ -13,12 +13,17 @@ export default {
data() {
return {}
},
props: {
tabActive: {
type: String,
default: ''
}
},
computed: {
// 列表配置
tableOptions() {
return {
remote: {},
columns: [
{
label: '排名',
......@@ -42,6 +47,7 @@ export default {
}
}
},
mounted() {},
methods: {
toPersonal(row) {
this.$router.push({
......
<template>
<el-card class="box-card">
<div slot="header" class="clearfix">
<<<<<<< HEAD
<h1 style="font-size: 28px">题型数据</h1>
=======
<h1 style="color: #333; font-size: 16px; border-left: 3px solid #aa1941; padding-left: 7px">题型数据</h1>
</div>
<div style="height: 350px; width: 90%; margin: 0 auto">
<div id="type" style="width: 100%; height: 90%"></div>
<div style="margin-bottom: 10px">
<div class="dec dec1">
客观题正确率:<span style="color: #aa1941; font-size: 16px; font-weight: 400">待评价</span>
</div>
<div class="dec dec1">主观题正确率:<span class="dec" style="color: #919191">待评价</span></div>
</div>
>>>>>>> edc1ef78b2519ac72935137e8ed7617de68f4525
</div>
<div id="type" style="width: 310px; height: 360px"></div>
<div>客观题正确率76%</div>
......@@ -48,7 +61,6 @@ export default {
],
series: [
{
name: 'Direct',
type: 'bar',
barWidth: '30%',
data: [20, 40, 60, 80, 100]
......
......@@ -2,7 +2,9 @@
<app-container>
<app-list v-bind="tableOptions" ref="list">
<template v-slot:table-operate="{ row }">
<el-button type="text">查看</el-button>
<el-button type="text" @click="toDetail(row)" v-if="tabActive === 'finished'">查看</el-button>
<el-button type="text" @click="toDetail(row)" v-else-if="tabActive === 'toEvaluate'">批阅</el-button>
<div v-else>-</div>
</template>
</app-list>
</app-container>
......@@ -13,21 +15,44 @@ export default {
data() {
return {}
},
props: {
tabActive: {
type: String,
default: ''
}
},
computed: {
// 列表配置
tableOptions() {
return {
remote: {},
columns: [
{ label: '排名', prop: 'paper_title', align: 'center' },
{ label: '姓名', slots: 'table-name', align: 'center' },
{ label: '客观题', prop: 'cankao_num', align: 'center', width: '150', sortable: true },
{ label: '主观题', prop: 'efw', align: 'center', width: '150', sortable: true },
{ label: '姓名', prop: 'class_name', align: 'center' },
{ label: '客观题', prop: 'cankao_num', align: 'center', sortable: true },
{ label: '主观题', prop: 'efw', align: 'center', sortable: true },
{ label: '总分', prop: 'average_num', align: 'center', sortable: true },
{ label: '操作', slots: 'table-operate', align: 'center' }
],
data: [
{
class_name: '1w1e'
},
{
class_name: '1w1e'
},
{
class_name: '1w1e'
},
{
class_name: '1w1e'
},
{
class_name: '1w1e'
},
{
class_name: '1w1e'
},
{
class_name: '1w1e'
}
......@@ -35,6 +60,8 @@ export default {
}
}
},
methods: {}
methods: {
toDetail() {}
}
}
</script>
......@@ -56,7 +56,7 @@ export default {
},
emphasis: {
label: {
show: true,
// show: true,
fontSize: '40',
fontWeight: 'bold'
}
......@@ -90,9 +90,9 @@ export default {
</script>
<style lang="scss" scoped>
.score-range-box{
.score-range-box {
position: relative;
.pop{
.pop {
position: absolute;
top: -20%;
left: 50%;
......
<template>
<el-card style="height: 400px">
<div slot="header" class="clearfix">
<h1 style="color: #333; font-size: 16px; border-left: 3px solid #aa1941; padding-left: 7px">分数排名</h1>
<el-button type="text" style="font-size: 16px; color: #aa1941; float: right; margin-top: -40px">导出</el-button>
<el-tabs v-model="tabActive" style="margin-top: 30px">
<el-tab-pane label="已完成" name="baseInfo">
<RankingAll />
<el-button type="text" style="font-size: 16px; color: #aa1941; float: right; margin-top: -30px">导出</el-button>
</div>
<el-tabs v-model="tabActive" @canplaythrough="handleClick">
<el-tab-pane label="已完成" name="finished">
<RankingAll :tabActive="tabActive" />
</el-tab-pane>
<el-tab-pane label="待评价" name="contacts" lazy>
<RankingAll />
<el-tab-pane label="待评价" name="toEvaluate" lazy>
<RankingAll :tabActive="tabActive" />
</el-tab-pane>
<el-tab-pane label="未作答" name="project" lazy>
<el-tab-pane label="未作答" name="noAnswer" lazy>
<RankingAll />
</el-tab-pane>
<el-tab-pane label="待提交" name="toSubmit" lazy>
......@@ -25,7 +27,25 @@ export default {
components: { RankingAll },
data() {
return {
tabActive: 'baseInfo'
tabActive: 'finished'
}
},
created() {
// 已结束
},
methods: {
handleClick(tab, event) {
// console.log(tab, event)
if (tab.index === 1) {
// 待评价
alert('111')
} else if (tab.index === 2) {
// 未作答
alert('222')
} else {
// 未提交
alert('333')
}
}
}
}
......
<template>
<el-card style="margin-right: -20px; height: 400px">
<app-container>
<div slot="header" class="clearfix">
<h1 style="color: #333; font-size: 16px; border-left: 3px solid #aa1941; padding-left: 7px">题目数据</h1>
<el-button type="text" style="font-size: 16px; color: #aa1941; float: right; margin-top: -40px">导出</el-button>
<app-list v-bind="tableOptions" ref="list" style="margin-top: 60px"> </app-list>
</app-container>
<el-button type="text" style="font-size: 16px; color: #aa1941; float: right; margin-top: -30px">导出</el-button>
</div>
<app-list v-bind="tableOptions" ref="list"></app-list>
</el-card>
</template>
......
......@@ -3,15 +3,15 @@
<div style="font-size: 32px; margin-bottom: 15px">测试班级一</div>
<app-card>
<h1 class="title" style="font-size: 28px">班级排名</h1>
<el-button type="text" style="font-size: 28px; float: right; margin-top: -40px">导出</el-button>
<el-tabs v-model="tabActive" style="margin-top: 30px">
<el-tab-pane label="已结束" name="baseInfo">
<el-button type="text" style="float: right; margin-top: -40px">导出</el-button>
<el-tabs v-model="tabActive" style="margin-top: 30px" @tab-click="handleClick">
<el-tab-pane label="已结束" name="finished">
<Finished />
</el-tab-pane>
<el-tab-pane label="待评价" name="contacts" lazy>
<el-tab-pane label="待评价" name="toEvaluate" lazy>
<Finished />
</el-tab-pane>
<el-tab-pane label="未作答" name="project" lazy>
<el-tab-pane label="未作答" name="noAnswer" lazy>
<Finished />
</el-tab-pane>
</el-tabs>
......@@ -25,7 +25,22 @@ export default {
components: { Finished },
data() {
return {
tabActive: 'baseInfo'
tabActive: 'finished'
}
},
created() {
// 已结束网络请求
},
methods: {
handleClick(tab, event) {
// console.log(tab, event)
if (tab.index === 1) {
// 待评价
alert('111')
} else {
// 未作答
alert('222')
}
}
}
}
......
......@@ -5,7 +5,8 @@ const routes = [
children: [
{ path: '/teacher/data/test', component: () => import('./views/List.vue') },
{ path: '/teacher/data/classList', component: () => import('./views/ClassList.vue') },
{ path: '/teacher/data/person', component: () => import('./views/PersonalList.vue') }
{ path: '/teacher/data/person', component: () => import('./views/PersonalList.vue') },
{ path: '/teacher/data/teastData', component: () => import('./views/testData.vue') }
]
}
]
......
......@@ -3,7 +3,7 @@
<div style="font-size: 32px; margin-bottom: 15px">测试班级一</div>
<app-card>
<h1 class="title" style="font-size: 28px">班级排名</h1>
<el-button type="text" style="font-size: 28px; float: right; margin-top: -40px">导出</el-button>
<el-button type="text" style="float: right; margin-top: -40px">导出</el-button>
<el-tabs v-model="tabActive" style="margin-top: 30px">
<el-tab-pane label="已结束" name="baseInfo">
<Finished />
......
......@@ -3,7 +3,7 @@
<app-list v-bind="tableOptions" ref="list">
<!-- 操作 -->
<template v-slot:table-operate="{ row }">
<el-button type="text" size="mini">练习数据</el-button>
<el-button type="text" size="mini" @click="toTestData(row)">练习数据</el-button>
<el-button type="text" size="mini" @click="toClassData(row)">班级数据</el-button>
</template>
</app-list>
......@@ -51,6 +51,12 @@ export default {
row: row
}
})
},
toTestData(row) {
this.$router.push({
path: '/teacher/data/teastData',
row: row
})
}
}
}
......
<template>
<div class="container">
<el-row type="flex" class="row-bg" justify="space-between" style="margin-bottom: 30px">
<el-col><h1 style="padding-left: 0px; font-size: 30px">模拟测试一</h1></el-col>
<el-col :span="10">
<el-select v-model="label" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-select>
<el-button type="text" style="margin-left: 30px">导出pdf</el-button>
</el-col>
</el-row>
<el-row :gutter="10" class="row-bg">
<el-col :span="8" class="col"><ExamInfo /></el-col>
<el-col :span="8" class="col"><Submission /></el-col>
<el-col :span="7"><Score /></el-col>
</el-row>
<el-row :gutter="10" class="row-bg">
<el-col :span="12" class="col"><ScoreRanking /></el-col>
<el-col :span="11"><TitleData /></el-col>
</el-row>
<el-row :gutter="10" class="row-bg">
<el-col :span="8" class="col"><Result /></el-col>
<el-col :span="8" class="col"><ScoreRange /></el-col>
<el-col :span="7"><QuestionType /></el-col>
</el-row>
</div>
</template>
<script>
import ExamInfo from '../../exam/components/ExamInfo.vue'
import Submission from '../../exam/components/Submission.vue'
import Score from '../../exam/components/Score.vue'
import ScoreRanking from '../../exam/components/ScoreRanking.vue'
import TitleData from '../../exam/components/TitleData.vue'
import Result from '../../exam/components/Result.vue'
import ScoreRange from '../../exam/components/ScoreRange.vue'
import QuestionType from '../../exam/components/QuestionType.vue'
export default {
components: { ExamInfo, Submission, Score, ScoreRanking, TitleData, Result, ScoreRange, QuestionType },
data() {
return {
options: {}
}
}
}
</script>
<style>
.row-bg {
margin-top: 30px;
padding: 10px 0;
}
.col {
margin-right: 21px;
}
</style>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论