|
@@ -2,12 +2,15 @@
|
|
|
<div>
|
|
|
<div class="mb10 fx-row fx-end-base">
|
|
|
<div>
|
|
|
- <el-button v-if="aiShow" type="primary" @click="toAiAnalysis" >AI分析</el-button>
|
|
|
+ <el-button v-if="aiShow" type="primary" @click="toAiAnalysis">AI分析</el-button>
|
|
|
<el-button>选科历史记录</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<mx-table :propDefines="formatCols" :rows="formatRows">
|
|
|
+ <template #underOver="{value}">
|
|
|
+ <over-under-badge :value="value"></over-under-badge>
|
|
|
+ </template>
|
|
|
<template #temp="{row}">
|
|
|
<span class="btn-blue mr5" @click="toSelectSub(row)">选择</span>
|
|
|
<span class="btn-green" @click="toReport">查看记录</span>
|
|
@@ -91,7 +94,7 @@
|
|
|
</div>
|
|
|
<esign-dialog ref="esignDialog"></esign-dialog>
|
|
|
<choose-subject-dialog ref="chooseDialog"></choose-subject-dialog>
|
|
|
- <select-subject-report-dialog ref="reportDialog"></select-subject-report-dialog>
|
|
|
+ <select-subject-report-dialog ref="reportDialog"></select-subject-report-dialog>
|
|
|
<Ai-dialog ref="aiDialog" :prevPreferences="prevPreferences"></Ai-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -118,6 +121,7 @@ import FinalAdjustDMResolverMixins
|
|
|
from '@/views/system/user/profile/components/round-select-resolvers/finalAdjustDM-resolver-mixins'
|
|
|
import ForceAdjustResolverMixins
|
|
|
from '@/views/system/user/profile/components/round-select-resolvers/forceAdjust-resolver-mixins'
|
|
|
+import OverUnderBadge from '@/views/elective/publish/components/steps/fauclty/over-under-badge'
|
|
|
|
|
|
export default {
|
|
|
|
|
@@ -125,6 +129,7 @@ export default {
|
|
|
generation: Object
|
|
|
},
|
|
|
components: {
|
|
|
+ OverUnderBadge,
|
|
|
SelectSubjectReportDialog,
|
|
|
ReportStep,
|
|
|
EsignDialog,
|
|
@@ -161,8 +166,8 @@ export default {
|
|
|
},
|
|
|
computed: {
|
|
|
aiShow() {
|
|
|
- const active = this.generation.active
|
|
|
- if(active == 3 || active == 5 || active == 7) return true
|
|
|
+ const active = this.generation.active
|
|
|
+ if (active == 3 || active == 5 || active == 7) return true
|
|
|
return false
|
|
|
},
|
|
|
resolveTablePrefix() {
|
|
@@ -174,8 +179,8 @@ export default {
|
|
|
groupName: {
|
|
|
label: '选科组合'
|
|
|
},
|
|
|
- scoreSumGroup:{
|
|
|
- label:'组合成绩'
|
|
|
+ scoreSumGroup: {
|
|
|
+ label: '组合成绩'
|
|
|
},
|
|
|
classCount: {
|
|
|
label: '开设班级数'
|
|
@@ -211,7 +216,7 @@ export default {
|
|
|
slot: 'signUp',
|
|
|
width: '100',
|
|
|
fixed: 'right',
|
|
|
- hidden:hidden
|
|
|
+ hidden: hidden
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -221,38 +226,38 @@ export default {
|
|
|
if (!options || !this.generation.active) return {}
|
|
|
const optValues = Object.values(options)
|
|
|
const dynamicColumns = {}
|
|
|
- for (let gen = options.primary.value; gen <= this.generation.active ; gen++) {
|
|
|
+ for (let gen = options.primary.value; gen <= this.generation.active; gen++) {
|
|
|
const opt = optValues.find(opt => opt.value == gen)
|
|
|
const resolverKey = opt.key + 'Resolver'
|
|
|
const resolver = this[resolverKey]
|
|
|
if (typeof resolver === 'function') {
|
|
|
- const genColumns = resolver(gen,this.generation.active)
|
|
|
+ const genColumns = resolver(gen, this.generation.active)
|
|
|
Object.assign(dynamicColumns, genColumns)
|
|
|
}
|
|
|
}
|
|
|
- console.log('resolveDynamicTable',dynamicColumns)
|
|
|
+ console.log('resolveDynamicTable', dynamicColumns)
|
|
|
return dynamicColumns
|
|
|
},
|
|
|
// 初始化 rows 填充固定数据
|
|
|
|
|
|
formatRows() {
|
|
|
if (!this.optionalMajors) return []
|
|
|
- if(!this.generation.status?.groupIds) return []
|
|
|
+ if (!this.generation.status?.groupIds) return []
|
|
|
const generationModels = this.generation.activeModels.find(item => item.generation == this.generation.active).models
|
|
|
return this.generation.status.groupIds.split(',').map(groupId => {
|
|
|
- const row = generationModels.find(item => item.groupId== groupId)
|
|
|
+ const row = generationModels.find(item => item.groupId == groupId)
|
|
|
row.allowSelectTips = row.allowSelect ? '报名中' : row.disabledReason || '无法报名'
|
|
|
row.subjects = this.optionalMajors.filter(college => {
|
|
|
- if (college.matchedGroupIds.indexOf(row.groupId) != -1) return college.majorCategoryName
|
|
|
+ if (college.matchedGroupIds.indexOf(row.groupId) != -1) return college.majorCategoryName
|
|
|
}).map(item => item.majorCategoryName)
|
|
|
console.log(row.subjects)
|
|
|
row.colleges = this.optionalMajors.filter(college => {
|
|
|
if (college.matchedGroupIds.indexOf(row.groupId) != -1) return college.majorCategoryName
|
|
|
}).map(item => {
|
|
|
return {
|
|
|
- college: item.collegeName,
|
|
|
- major: item.majorCategoryName
|
|
|
- }
|
|
|
+ college: item.collegeName,
|
|
|
+ major: item.majorCategoryName
|
|
|
+ }
|
|
|
})
|
|
|
return {
|
|
|
groupId: row.groupId,
|
|
@@ -260,9 +265,9 @@ export default {
|
|
|
scoreSumGroup: row.scoreSumGroup,
|
|
|
classCount: row.classCount,
|
|
|
personCount: row.personCount,
|
|
|
- allowSelectTips :row.allowSelectTips,
|
|
|
- colleges :row.colleges,
|
|
|
- subjects :row.subjects,
|
|
|
+ allowSelectTips: row.allowSelectTips,
|
|
|
+ colleges: row.colleges,
|
|
|
+ subjects: row.subjects,
|
|
|
allowSelect: row.allowSelect
|
|
|
}
|
|
|
})
|
|
@@ -274,7 +279,7 @@ export default {
|
|
|
...this.resolveTableSuffix
|
|
|
}
|
|
|
}
|
|
|
- },
|
|
|
+ },
|
|
|
methods: {
|
|
|
getModelsByStep() {
|
|
|
return this.models.findIndex()
|