diff --git a/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue b/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue index d856138..1597d66 100644 --- a/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue +++ b/reading-platform-frontend/src/components/course-edit/Step4IntroLesson.vue @@ -174,6 +174,12 @@ const validate = () => { const steps = lessonData.value.steps || []; if (steps.length < 1) { errors.push('请至少添加一个教学环节'); + } else { + steps.forEach((step, i) => { + if (!step.name?.trim()) errors.push(`第${i + 1}个环节:请填写环节名称`); + if (!step.content?.trim()) errors.push(`第${i + 1}个环节:请填写环节内容`); + if (!step.objective?.trim()) errors.push(`第${i + 1}个环节:请填写教学目标`); + }); } return { valid: errors.length === 0, errors }; diff --git a/reading-platform-frontend/src/components/course-edit/Step5CollectiveLesson.vue b/reading-platform-frontend/src/components/course-edit/Step5CollectiveLesson.vue index 886a44f..cf70cb4 100644 --- a/reading-platform-frontend/src/components/course-edit/Step5CollectiveLesson.vue +++ b/reading-platform-frontend/src/components/course-edit/Step5CollectiveLesson.vue @@ -175,6 +175,16 @@ const validate = () => { if (duration != null && (duration < 15 || duration > 45)) { errors.push('集体课时长需在 15-45 分钟之间'); } + const steps = lessonData.value.steps || []; + if (steps.length < 1) { + errors.push('请至少添加一个教学环节'); + } else { + steps.forEach((step, i) => { + if (!step.name?.trim()) errors.push(`第${i + 1}个环节:请填写环节名称`); + if (!step.content?.trim()) errors.push(`第${i + 1}个环节:请填写环节内容`); + if (!step.objective?.trim()) errors.push(`第${i + 1}个环节:请填写教学目标`); + }); + } return { valid: errors.length === 0, errors }; }; diff --git a/reading-platform-frontend/src/components/course-edit/Step6DomainLessons.vue b/reading-platform-frontend/src/components/course-edit/Step6DomainLessons.vue index e599a5b..9819f1a 100644 --- a/reading-platform-frontend/src/components/course-edit/Step6DomainLessons.vue +++ b/reading-platform-frontend/src/components/course-edit/Step6DomainLessons.vue @@ -267,6 +267,16 @@ const validate = () => { if (duration != null && (duration < 15 || duration > 45)) { errors.push(`${domain.name}:时长需在 15-45 分钟之间`); } + const steps = domain.lessonData.steps || []; + if (steps.length < 1) { + errors.push(`${domain.name}:请至少添加一个教学环节`); + } else { + steps.forEach((step, i) => { + if (!step.name?.trim()) errors.push(`${domain.name}:第${i + 1}个环节请填写环节名称`); + if (!step.content?.trim()) errors.push(`${domain.name}:第${i + 1}个环节请填写环节内容`); + if (!step.objective?.trim()) errors.push(`${domain.name}:第${i + 1}个环节请填写教学目标`); + }); + } } }); diff --git a/reading-platform-frontend/src/components/course/LessonConfigPanel.vue b/reading-platform-frontend/src/components/course/LessonConfigPanel.vue index ed6e980..3d0f0fb 100644 --- a/reading-platform-frontend/src/components/course/LessonConfigPanel.vue +++ b/reading-platform-frontend/src/components/course/LessonConfigPanel.vue @@ -33,8 +33,11 @@ - - + + + diff --git a/reading-platform-frontend/src/components/course/LessonStepsEditor.vue b/reading-platform-frontend/src/components/course/LessonStepsEditor.vue index 61adfa0..391e15c 100644 --- a/reading-platform-frontend/src/components/course/LessonStepsEditor.vue +++ b/reading-platform-frontend/src/components/course/LessonStepsEditor.vue @@ -19,12 +19,15 @@ >
{{ index + 1 }} - +
+ 环节名称 + +
+ 环节内容
+ 教学目标