hookehuyr

docs: 统一将"课程章节"改为"课程目录"以保持术语一致性

...@@ -34,7 +34,7 @@ export const getCourseListAPI = (params) => fn(fetch.get(Api.GET_COURSE_LIST, p ...@@ -34,7 +34,7 @@ export const getCourseListAPI = (params) => fn(fetch.get(Api.GET_COURSE_LIST, p
34 * @description: 获取课程详情 34 * @description: 获取课程详情
35 * @param: i 课程 ID 35 * @param: i 课程 ID
36 * @return: data: [{ id, title, price, original_price, feature, highlights, learning_goal, schedule}] 36 * @return: data: [{ id, title, price, original_price, feature, highlights, learning_goal, schedule}]
37 - * @return: schedule: [{ id, schedule_time, seq, title, duration}] 课程章节 37 + * @return: schedule: [{ id, schedule_time, seq, title, duration}] 课程目录
38 */ 38 */
39 export const getCourseDetailAPI = (params) => fn(fetch.get(Api.GET_COURSE_DETAIL, params)) 39 export const getCourseDetailAPI = (params) => fn(fetch.get(Api.GET_COURSE_DETAIL, params))
40 40
...@@ -55,7 +55,7 @@ export const getScheduleCombinationListAPI = (params) => fn(fetch.get(Api.GET_SC ...@@ -55,7 +55,7 @@ export const getScheduleCombinationListAPI = (params) => fn(fetch.get(Api.GET_SC
55 /** 55 /**
56 * @description: 获取课程评论列表 56 * @description: 获取课程评论列表
57 * @param: i 课程 ID 57 * @param: i 课程 ID
58 - * @param: schedule_id 章节ID,非必须,在课程章节内查询时需要 58 + * @param: schedule_id 章节ID,非必须,在课程目录内查询时需要
59 * @param: limit 每页数量 默认10 59 * @param: limit 每页数量 默认10
60 * @param: page 页码 60 * @param: page 页码
61 * @return: data: { comment_score 课程评论分数, comment_count 评论数量, comment_list [{ id 评论id, created_by 评论人ID, name 评论人姓名, note 评论内容, score 分数, create_time 评论时间}] 评论列表} 61 * @return: data: { comment_score 课程评论分数, comment_count 评论数量, comment_list [{ id 评论id, created_by 评论人ID, name 评论人姓名, note 评论内容, score 分数, create_time 评论时间}] 评论列表}
...@@ -65,7 +65,7 @@ export const getGroupCommentListAPI = (params) => fn(fetch.get(Api.GET_GROUP_COM ...@@ -65,7 +65,7 @@ export const getGroupCommentListAPI = (params) => fn(fetch.get(Api.GET_GROUP_COM
65 /** 65 /**
66 * @description: 添加课程评论 66 * @description: 添加课程评论
67 * @param: i 课程 ID 67 * @param: i 课程 ID
68 - * @param: schedule_id 章节ID,非必须,在课程章节添加时需要 68 + * @param: schedule_id 章节ID,非必须,在课程目录添加时需要
69 * @param: note 评论内容 69 * @param: note 评论内容
70 * @param: score 分数 70 * @param: score 分数
71 * @return: data: '' 71 * @return: data: ''
......
...@@ -17,7 +17,7 @@ const Api = { ...@@ -17,7 +17,7 @@ const Api = {
17 * @description: 获取课程收藏列表 17 * @description: 获取课程收藏列表
18 * @param: page 页码 18 * @param: page 页码
19 * @param: limit 每页数量 19 * @param: limit 每页数量
20 - * @return: data: { id: 收藏ID, title: 课程名称, price: 优惠价格, original_price: 原价, feature: 课程特色, highlights: 课程亮点, learning_goal: 学习目标, count: 课程章节数, cover: 封面图 } 20 + * @return: data: { id: 收藏ID, title: 课程名称, price: 优惠价格, original_price: 原价, feature: 课程特色, highlights: 课程亮点, learning_goal: 学习目标, count: 课程目录数, cover: 封面图 }
21 */ 21 */
22 export const getGroupFavoriteListAPI = (params) => fn(fetch.get(Api.GROUP_FAVORITE_LIST, params)) 22 export const getGroupFavoriteListAPI = (params) => fn(fetch.get(Api.GROUP_FAVORITE_LIST, params))
23 23
......
...@@ -23,8 +23,8 @@ export const getStudyRecordListAPI = (params) => fn(fetch.get(Api.STUDY_RECORD_L ...@@ -23,8 +23,8 @@ export const getStudyRecordListAPI = (params) => fn(fetch.get(Api.STUDY_RECORD_L
23 23
24 /** 24 /**
25 * @description: 添加记录 25 * @description: 添加记录
26 - * @param: schedule_id 课程章节ID 26 + * @param: schedule_id 课程目录ID
27 - * @param: meta_id 课程章节的视频、音频的ID 27 + * @param: meta_id 课程目录的视频、音频的ID
28 * @param: media_duration 视频、音频的时长 28 * @param: media_duration 视频、音频的时长
29 * @param: playback_position 视频、音频当前播放位置 29 * @param: playback_position 视频、音频当前播放位置
30 * @param: playback_id 某一轮播放的ID,需要区分不同轮次播放的开始和结束,最终用来统计播放时长 30 * @param: playback_id 某一轮播放的ID,需要区分不同轮次播放的开始和结束,最终用来统计播放时长
......
...@@ -52,7 +52,7 @@ export const getTeacherFindSettingsAPI = (params) => fn(fetch.get(Api.TEACHER_FI ...@@ -52,7 +52,7 @@ export const getTeacherFindSettingsAPI = (params) => fn(fetch.get(Api.TEACHER_FI
52 * @param {*} frequency 每周期提交数量 52 * @param {*} frequency 每周期提交数量
53 * @param {*} attachment_type 提交类型, text=文本 image=图片 video=视频 audio=音频 53 * @param {*} attachment_type 提交类型, text=文本 image=图片 video=视频 audio=音频
54 * @param {*} target_number 目标总数 54 * @param {*} target_number 目标总数
55 - * @param {*} schedule[{id, begin_date, end_date}] 批量设置课程章节的作业 55 + * @param {*} schedule[{id, begin_date, end_date}] 批量设置课程目录的作业
56 * @returns {Object} data { id } 56 * @returns {Object} data { id }
57 */ 57 */
58 export const setTeacherTaskAPI = (params) => fn(fetch.post(Api.TEACHER_ADD_TASK, params)) 58 export const setTeacherTaskAPI = (params) => fn(fetch.post(Api.TEACHER_ADD_TASK, params))
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
2 * @Author: hookehuyr hookehuyr@gmail.com 2 * @Author: hookehuyr hookehuyr@gmail.com
3 * @Date: 2025-01-20 10:00:00 3 * @Date: 2025-01-20 10:00:00
4 * @LastEditors: hookehuyr hookehuyr@gmail.com 4 * @LastEditors: hookehuyr hookehuyr@gmail.com
5 - * @LastEditTime: 2025-10-28 10:15:33 5 + * @LastEditTime: 2025-12-03 13:44:41
6 * @FilePath: /mlaj/src/views/teacher/formPage.vue 6 * @FilePath: /mlaj/src/views/teacher/formPage.vue
7 * @Description: 教师作业新增表单页面 7 * @Description: 教师作业新增表单页面
8 --> 8 -->
...@@ -158,13 +158,13 @@ ...@@ -158,13 +158,13 @@
158 <van-icon name="arrow" class="arrow-icon" @click="showClassPicker = true" /> 158 <van-icon name="arrow" class="arrow-icon" @click="showClassPicker = true" />
159 </div> 159 </div>
160 </div> 160 </div>
161 - <!-- 仅在完成班级选择后,允许进行课程章节选择 --> 161 + <!-- 仅在完成班级选择后,允许进行课程目录选择 -->
162 <div class="select-row" v-if="formData.class_id && courseChapters[formData.course]?.length"> 162 <div class="select-row" v-if="formData.class_id && courseChapters[formData.course]?.length">
163 <div class="select-item"> 163 <div class="select-item">
164 <van-icon name="bookmark-o" class="select-icon" /> 164 <van-icon name="bookmark-o" class="select-icon" />
165 - <span class="select-label">课程章节:</span> 165 + <span class="select-label">课程目录:</span>
166 <span class="select-value" @click="showChapterPicker = true"> 166 <span class="select-value" @click="showChapterPicker = true">
167 - {{ selectedChaptersDisplay || '请选择章节' }} 167 + {{ selectedChaptersDisplay || '请选择目录' }}
168 </span> 168 </span>
169 <van-icon name="arrow" class="arrow-icon" @click="showChapterPicker = true" /> 169 <van-icon name="arrow" class="arrow-icon" @click="showChapterPicker = true" />
170 </div> 170 </div>
...@@ -265,11 +265,11 @@ ...@@ -265,11 +265,11 @@
265 </div> 265 </div>
266 </van-popup> 266 </van-popup>
267 267
268 - <!-- 课程章节选择器 --> 268 + <!-- 课程目录选择器 -->
269 <van-popup v-model:show="showChapterPicker" position="bottom" class="chapter-picker-popup"> 269 <van-popup v-model:show="showChapterPicker" position="bottom" class="chapter-picker-popup">
270 <div class="chapter-picker-container"> 270 <div class="chapter-picker-container">
271 <div class="picker-header"> 271 <div class="picker-header">
272 - <h3>批量设置课程章节</h3> 272 + <h3>批量设置课程目录</h3>
273 <van-search v-model="chapterSearchValue" placeholder="搜索章节" @search="searchChapter" /> 273 <van-search v-model="chapterSearchValue" placeholder="搜索章节" @search="searchChapter" />
274 </div> 274 </div>
275 275
...@@ -922,7 +922,7 @@ const handleSubmit = async (values) => { ...@@ -922,7 +922,7 @@ const handleSubmit = async (values) => {
922 return; 922 return;
923 } 923 }
924 924
925 - // 准备提交的数据,包含课程章节选择和格式化的日期 925 + // 准备提交的数据,包含课程目录选择和格式化的日期
926 const submitData = { 926 const submitData = {
927 ...formData.value, 927 ...formData.value,
928 // 格式化日期为YYYY-MM-DD格式 928 // 格式化日期为YYYY-MM-DD格式
...@@ -931,7 +931,7 @@ const handleSubmit = async (values) => { ...@@ -931,7 +931,7 @@ const handleSubmit = async (values) => {
931 // 处理每周期提交数量和目标总数,当值为0时转换为空值 931 // 处理每周期提交数量和目标总数,当值为0时转换为空值
932 frequency: formData.value.frequency === 0 ? null : formData.value.frequency, 932 frequency: formData.value.frequency === 0 ? null : formData.value.frequency,
933 target_number: formData.value.target_number === 0 ? null : formData.value.target_number, 933 target_number: formData.value.target_number === 0 ? null : formData.value.target_number,
934 - // 添加课程章节选择数据 934 + // 添加课程目录选择数据
935 schedule: selectedChapters.value.map(chapter => ({ 935 schedule: selectedChapters.value.map(chapter => ({
936 id: chapter.id, 936 id: chapter.id,
937 name: chapter.name, 937 name: chapter.name,
......