|
@@ -1,17 +1,31 @@
|
|
|
<template>
|
|
|
<el-card>
|
|
|
<template #header>
|
|
|
- <div>
|
|
|
+ <div class="fx-row fx-bet-cen">
|
|
|
选科报名表
|
|
|
+ <el-button>选科历史记录</el-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
<mx-table :propDefines="propDefines" :rows="formatList">
|
|
|
<template #temp="{row}">
|
|
|
- <span>选择</span>
|
|
|
- <span>查看记录</span>
|
|
|
+<!-- <el-button>选择</el-button>-->
|
|
|
+<!-- <el-button>查看</el-button>-->
|
|
|
+ </template>
|
|
|
+ <template #proportion="{row}">
|
|
|
+ <span :style="{color: row.personInTime > row.personCount ? 'red' : '#42b983'}">{{row.personInTime}}</span>
|
|
|
+ <span >/{{row.personCount}}</span>
|
|
|
</template>
|
|
|
<template #signUp="{row}">
|
|
|
- <span>{{row.selected ? '已报名' : '报名'}}</span>
|
|
|
+ <span>{{ row.selected ? '已报名' : '报名' }}</span>
|
|
|
+ </template>
|
|
|
+ <template #subjects="{row}">
|
|
|
+ <el-tag type="success" class="mr10 mb10" v-for="subject in row.subjects">{{ subject[0] }}</el-tag>
|
|
|
+ </template>
|
|
|
+ <template #colleges="{row}">
|
|
|
+ <div v-for="college in row.colleges">
|
|
|
+ <el-tag type="success" class="mb10">{{ college.major[0] }}</el-tag>:
|
|
|
+ <span>{{ college.college }}</span>
|
|
|
+ </div>
|
|
|
</template>
|
|
|
</mx-table>
|
|
|
</el-card>
|
|
@@ -21,7 +35,7 @@
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
- list:[],
|
|
|
+ list: [],
|
|
|
optionalMajors: [],
|
|
|
propDefines: {
|
|
|
index: {
|
|
@@ -38,7 +52,8 @@ export default {
|
|
|
label: '人数设置'
|
|
|
},
|
|
|
proportion: {
|
|
|
- label: '选科人数比' // personInTime/personCount 实时人数/人数设置 = 选科人数比
|
|
|
+ label: '选科人数比', // personInTime/personCount 实时人数/人数设置 = 选科人数比
|
|
|
+ slot: 'proportion'
|
|
|
},
|
|
|
rankInGroup: {
|
|
|
label: '当前组合实时排名'
|
|
@@ -53,11 +68,15 @@ export default {
|
|
|
label: '选择专业',
|
|
|
slot: 'temp'
|
|
|
},
|
|
|
- subject: {
|
|
|
- label: '已选专业'
|
|
|
+ subjects: {
|
|
|
+ label: '已选专业',
|
|
|
+ slot: 'subjects',
|
|
|
+ width: '150'
|
|
|
},
|
|
|
- college: {
|
|
|
- label: '院校'
|
|
|
+ colleges: {
|
|
|
+ label: '院校',
|
|
|
+ slot: 'colleges',
|
|
|
+ width: 200
|
|
|
},
|
|
|
signUp: {
|
|
|
label: '操作',
|
|
@@ -69,9 +88,20 @@ export default {
|
|
|
computed: {
|
|
|
formatList() {
|
|
|
if (!this.list.length) return []
|
|
|
+ if (!this.optionalMajors.length) return []
|
|
|
// 格式化
|
|
|
return this.list.map(item => {
|
|
|
- item.proportion = item.personInTime+ '/'+ item.personCount
|
|
|
+ item.subjects = this.optionalMajors.filter(college => {
|
|
|
+ if (college.matchedGroupIds.indexOf(item.groupId) != -1) return college.majorCategoryName
|
|
|
+ }).map(item => item.majorCategoryName)
|
|
|
+ item.colleges = this.optionalMajors.filter(college => {
|
|
|
+ if (college.matchedGroupIds.indexOf(item.groupId) != -1) return college.majorCategoryName
|
|
|
+ }).map(item => {
|
|
|
+ return {
|
|
|
+ college: item.collegeName,
|
|
|
+ major: item.majorCategoryName
|
|
|
+ }
|
|
|
+ })
|
|
|
return item
|
|
|
})
|
|
|
}
|
|
@@ -83,8 +113,9 @@ export default {
|
|
|
this.list = list
|
|
|
},
|
|
|
initOption(optionalMajors) {
|
|
|
+ console.log(optionalMajors)
|
|
|
this.optionalMajors = optionalMajors
|
|
|
- },
|
|
|
+ }
|
|
|
// async getOptionalMajors() {
|
|
|
// const res = await getOptionalMajors()
|
|
|
// this.optionalMajors = res.data
|
|
@@ -94,5 +125,7 @@ export default {
|
|
|
}
|
|
|
</script>
|
|
|
<style scoped>
|
|
|
-
|
|
|
+.cell .el-tag{
|
|
|
+ margin-right: 5px;
|
|
|
+}
|
|
|
</style>
|