|
|
@@ -102,7 +102,7 @@ export default {
|
|
|
// 年级列表(从localStorage的student_gradesList读取)
|
|
|
gradeList: [],
|
|
|
// 中心圆点学科名称(通过 subjectCode 从 student_subjectList 匹配)
|
|
|
- subjectNameState: '数学知识点',
|
|
|
+ subjectNameState: '',
|
|
|
// 默认选中知识点ID:接口返回的 knowList 中"第一棵节点树的最后一个子节点(叶子)"
|
|
|
defaultKnowledgeId: '',
|
|
|
// 接口返回的真实统计数据
|
|
|
@@ -134,7 +134,7 @@ export default {
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
|
- ...mapState('target', ['subjectCode']),
|
|
|
+ ...mapState('target', ['subjectCode', 'subjectName']),
|
|
|
// 中心圆点学科名称:优先从 localStorage 的 student_subjectList 匹配 subjectCode
|
|
|
actualSubjectName() {
|
|
|
return this.subjectNameState || '知识点';
|
|
|
@@ -245,8 +245,12 @@ export default {
|
|
|
value: item.value ?? item.code ?? item.label ?? item.name ?? String(item)
|
|
|
}));
|
|
|
|
|
|
- // 默认全部选中
|
|
|
- this.currentGradeList = this.gradeList.map(g => g.value);
|
|
|
+ // 默认只选中最后一个年级
|
|
|
+ // 例:[{高一,10},{高二,11}] → currentGradeList = ['11'](仅选中高二)
|
|
|
+ // 同“加入练习接口 gradeCode = gradeList 末尾 value”规则保持一致
|
|
|
+ this.currentGradeList = this.gradeList.length > 0
|
|
|
+ ? [this.gradeList[this.gradeList.length - 1].value]
|
|
|
+ : [];
|
|
|
} catch (e) {
|
|
|
console.warn('[KnowledgeGraph] 解析 localStorage.student_gradesList 失败:', e);
|
|
|
}
|
|
|
@@ -593,21 +597,30 @@ export default {
|
|
|
// - 只有一个年级 → 直接取该年级 value
|
|
|
// - 空/无效 → 传空串兜底
|
|
|
let gradeCode = '';
|
|
|
+ let gradeName = '';
|
|
|
if (Array.isArray(this.gradeList) && this.gradeList.length > 0) {
|
|
|
const lastGrade = this.gradeList[this.gradeList.length - 1];
|
|
|
if (lastGrade && lastGrade.value !== undefined && lastGrade.value !== null && lastGrade.value !== '') {
|
|
|
gradeCode = String(lastGrade.value);
|
|
|
}
|
|
|
+ // 年级NAME:与 gradeCode 一一对应,取同一元素的 label
|
|
|
+ if (lastGrade && lastGrade.label !== undefined && lastGrade.label !== null) {
|
|
|
+ gradeName = String(lastGrade.label);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+ const subjectName = this.subjectName || '';
|
|
|
+
|
|
|
const params = {
|
|
|
knowledgeId,
|
|
|
knowledgeName,
|
|
|
personalScoreRate,
|
|
|
knowledgeType,
|
|
|
subjectCode,
|
|
|
+ subjectName,
|
|
|
levelCode,
|
|
|
- gradeCode
|
|
|
+ gradeCode,
|
|
|
+ gradeName
|
|
|
};
|
|
|
|
|
|
this.$api.target.addExercise(params).then(res => {
|