|
@@ -30,32 +30,48 @@
|
|
<template v-if="prevDMData">
|
|
<template v-if="prevDMData">
|
|
<div>
|
|
<div>
|
|
专业成绩符合学生中,按照系统推荐报名
|
|
专业成绩符合学生中,按照系统推荐报名
|
|
- <span class="f-primary bold">{{ getMatchedAgree(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-primary':getMatchedAgree(g)}">{{ getMatchedAgree(g) }}</span>
|
|
人,拒绝填报
|
|
人,拒绝填报
|
|
- <span class="f-red bold">{{ getMatchedReject(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-red':getMatchedReject(g)}">{{ getMatchedReject(g) }}</span>
|
|
人,未填报
|
|
人,未填报
|
|
- <span class="f-red bold">{{ getMatchedNonaction(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-red':getMatchedNonaction(g)}">{{ getMatchedNonaction(g) }}</span>
|
|
人,改出
|
|
人,改出
|
|
- <span class="f-warning bold">{{ getMatchedApplyOut(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-warning':getMatchedApplyOut(g)}">{{ getMatchedApplyOut(g) }}</span>
|
|
人,改进
|
|
人,改进
|
|
- <span class="f-primary bold">{{ getMatchedApplyIn(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-primary':getMatchedApplyIn(g)}">{{ getMatchedApplyIn(g) }}</span>
|
|
人。
|
|
人。
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div>
|
|
成绩符合专业不符合学生中,按照系统推荐报名
|
|
成绩符合专业不符合学生中,按照系统推荐报名
|
|
- <span class="f-primary bold">{{ getNonMatchedAgree(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-primary':getNonMatchedAgree(g)}">{{ getNonMatchedAgree(g) }}</span>
|
|
人,拒绝填报
|
|
人,拒绝填报
|
|
- <span class="f-red bold">{{ getNonMatchedReject(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-red':getNonMatchedReject(g)}">{{ getNonMatchedReject(g) }}</span>
|
|
人,未填报
|
|
人,未填报
|
|
- <span class="f-red bold">{{ getNonMatchedNonaction(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-red':getNonMatchedNonaction(g)}">{{ getNonMatchedNonaction(g) }}</span>
|
|
人,改出
|
|
人,改出
|
|
- <span class="f-warning bold">{{ getNonMatchedApplyOut(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-warning':getNonMatchedApplyOut(g)}">{{ getNonMatchedApplyOut(g) }}</span>
|
|
人,改进
|
|
人,改进
|
|
- <span class="f-primary bold">{{ getNonMatchedApplyIn(g) }}</span>
|
|
|
|
|
|
+ <span class="bold" :class="{'f-primary':getNonMatchedApplyIn(g)}">{{ getNonMatchedApplyIn(g) }}</span>
|
|
人。
|
|
人。
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
</el-collapse-item>
|
|
</el-collapse-item>
|
|
|
|
+ <el-collapse-item :name="0">
|
|
|
|
+ <template #title>
|
|
|
|
+ 其它状态总人数:
|
|
|
|
+ <span class="bold" :class="{'f-red': getAllUnApplied()}">{{ getAllUnApplied() }}</span>
|
|
|
|
+ 人
|
|
|
|
+ </template>
|
|
|
|
+ <div>其中未填报人数:
|
|
|
|
+ <span class="bold"
|
|
|
|
+ :class="{'f-red': getAllUnAppliedOfNonaction()}">{{ getAllUnAppliedOfNonaction() }}</span>
|
|
|
|
+ 人
|
|
|
|
+ </div>
|
|
|
|
+ <div v-if="prevDMData">其中拒绝填报人数:
|
|
|
|
+ <span class="bold" :class="{'f-red': getAllUnAppliedOfReject()}">{{ getAllUnAppliedOfReject() }}</span>
|
|
|
|
+ 人
|
|
|
|
+ </div>
|
|
|
|
+ </el-collapse-item>
|
|
</el-collapse>
|
|
</el-collapse>
|
|
</template>
|
|
</template>
|
|
<template v-else>
|
|
<template v-else>
|
|
@@ -129,7 +145,7 @@ export default {
|
|
},
|
|
},
|
|
watch: {
|
|
watch: {
|
|
'hasIndicateGroups': function() {
|
|
'hasIndicateGroups': function() {
|
|
- this.collapseModel = this.hasIndicateGroups.map(g => g.groupId)
|
|
|
|
|
|
+ this.collapseModel = [...this.hasIndicateGroups.map(g => g.groupId), 0]
|
|
}
|
|
}
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
@@ -149,7 +165,7 @@ export default {
|
|
const isMultiplePreference = this.prevApplyData.categories.some(sub => Array.isArray(sub))
|
|
const isMultiplePreference = this.prevApplyData.categories.some(sub => Array.isArray(sub))
|
|
const tableData = isMultiplePreference ? { categories: this.prevApplyData.categories.first() } : this.prevApplyData
|
|
const tableData = isMultiplePreference ? { categories: this.prevApplyData.categories.first() } : this.prevApplyData
|
|
const val = this.getCategoryValue(tableData, 'actualCount', group)
|
|
const val = this.getCategoryValue(tableData, 'actualCount', group)
|
|
- return val.value
|
|
|
|
|
|
+ return val?.value || 0
|
|
} else {
|
|
} else {
|
|
// 取报名代所有细分合并
|
|
// 取报名代所有细分合并
|
|
const subCategories = ['matchedApproved', 'matchedRankout', 'nonmatchedApproved', 'nonmatchedRankout']
|
|
const subCategories = ['matchedApproved', 'matchedRankout', 'nonmatchedApproved', 'nonmatchedRankout']
|
|
@@ -157,37 +173,65 @@ export default {
|
|
}
|
|
}
|
|
},
|
|
},
|
|
getEnrollCount(group) {
|
|
getEnrollCount(group) {
|
|
- return this.getCategoryValue(this.activeDMData, 'approvedCount', group)?.value || '-'
|
|
|
|
|
|
+ // 录取
|
|
|
|
+ return this.getCategoryValue(this.activeDMData, 'approvedCount', group)?.value || 0
|
|
},
|
|
},
|
|
getMatchedAgree(group) {
|
|
getMatchedAgree(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'matchedApproved', group)?.value || '-'
|
|
|
|
|
|
+ // 专业符合同意
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'matchedApproved', group)?.value || 0
|
|
},
|
|
},
|
|
getNonMatchedAgree(group) {
|
|
getNonMatchedAgree(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'nonmatchedApproved', group)?.value || '-'
|
|
|
|
|
|
+ // 专业不符同意
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'nonmatchedApproved', group)?.value || 0
|
|
},
|
|
},
|
|
getMatchedReject(group) {
|
|
getMatchedReject(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'matchedNotOptional', group)?.value || '-'
|
|
|
|
|
|
+ // 专业符合拒绝
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'matchedNotOptional', group)?.value || 0
|
|
},
|
|
},
|
|
getNonMatchedReject(group) {
|
|
getNonMatchedReject(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'nonmatchedNotOptional', group)?.value || '-'
|
|
|
|
|
|
+ // 专业不符合拒绝
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'nonmatchedNotOptional', group)?.value || 0
|
|
},
|
|
},
|
|
getMatchedNonaction(group) {
|
|
getMatchedNonaction(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'matchedNonaction', group)?.value || '-'
|
|
|
|
|
|
+ // 初录未填,初录段只需要适配1个未填条件即可unfinishedCount
|
|
|
|
+ if (!this.prevDMData) {
|
|
|
|
+ // 报名人数,只取第一志愿
|
|
|
|
+ const isMultiplePreference = this.prevApplyData.categories.some(sub => Array.isArray(sub))
|
|
|
|
+ const tableData = isMultiplePreference ? { categories: this.prevApplyData.categories.first() } : this.prevApplyData
|
|
|
|
+ const val = this.getCategoryValue(tableData, 'unfinishedCount', group)
|
|
|
|
+ return val?.value || 0
|
|
|
|
+ }
|
|
|
|
+ // 专业符合未填
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'matchedNonaction', group)?.value || 0
|
|
},
|
|
},
|
|
getNonMatchedNonaction(group) {
|
|
getNonMatchedNonaction(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'nonmatchedNonaction', group)?.value || '-'
|
|
|
|
|
|
+ // 专业不符合未填
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'nonmatchedNonaction', group)?.value || 0
|
|
},
|
|
},
|
|
getMatchedApplyIn(group) {
|
|
getMatchedApplyIn(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'matchedRankout', group)?.value || '-'
|
|
|
|
|
|
+ // 专业符合改进
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'matchedRankout', group)?.value || 0
|
|
},
|
|
},
|
|
getNonMatchedApplyIn(group) {
|
|
getNonMatchedApplyIn(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'nonmatchedRankout', group)?.value || '-'
|
|
|
|
|
|
+ // 专业不符合改进
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'nonmatchedRankout', group)?.value || 0
|
|
},
|
|
},
|
|
getMatchedApplyOut(group) {
|
|
getMatchedApplyOut(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'matchedRejected', group)?.value || '-'
|
|
|
|
|
|
+ // 专业符合改出
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'matchedRejected', group)?.value || 0
|
|
},
|
|
},
|
|
getNonMatchedApplyOut(group) {
|
|
getNonMatchedApplyOut(group) {
|
|
- return this.getCategoryValue(this.prevApplyData, 'nonmatchedRejected', group)?.value || '-'
|
|
|
|
|
|
+ // 专业不符合改出
|
|
|
|
+ return this.getCategoryValue(this.prevApplyData, 'nonmatchedRejected', group)?.value || 0
|
|
|
|
+ },
|
|
|
|
+ getAllUnAppliedOfReject() {
|
|
|
|
+ return this.hasIndicateGroups.sum(g => this.getMatchedReject(g) + this.getNonMatchedReject(g))
|
|
|
|
+ },
|
|
|
|
+ getAllUnAppliedOfNonaction() {
|
|
|
|
+ return this.hasIndicateGroups.sum(g => this.getMatchedNonaction(g) + this.getNonMatchedNonaction(g))
|
|
|
|
+ },
|
|
|
|
+ getAllUnApplied() {
|
|
|
|
+ return this.getAllUnAppliedOfReject() + this.getAllUnAppliedOfNonaction()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|