查询学习记录
查询学习记录所在的页面比较复杂,除了有课程信息,还有课程的章节列表,而列表里的每一条信息才是我们的学习记录,这里我们先只设计出指定课程的学习记录接口:
完整的查询接口已经帮大家实现了,只需要再提供一个查询学习记录接口即可:com.tianji.course.controller.CourseController#queryCourseAndCatalogById
在下面这个页面中,往往有两种设计思路
方案A:前端查询接口1,获得课程信息,查询接口2,获得课程里的每小节信息(含学习记录)
方案B:后端聚合上述两个接口一次性返回,企业中对于Http接口往往是后端聚合的(减少一次网络开销),这时候同样会有问题:是课程调用学习服务还是服务调用课程呢?很明显应该调用数据量少的,减少报文大小,因此这里实际是课程服务调用学习微服务,获取每一个小节的学习记录。这也是我们为什么设计一个查询指定课程的学习记录的原因。并且课程信息是肯定有的,但进度却不一定存在
===========================================
提交学习记录接口
- 完成:
考试提交= 练习章节完成
学习进度超过50% = 当前章节完成
是否是第一次学完:
第一次学完才更新 视频支持重播 假设以前学完超过50% 后面再去看这个视频 超过50%就无需更新
新注解:
@EnumValid 对枚举值的校验
13查询学习计划-接口定义
查询本周计划(所有课程):
条件:
select sum(week_freq) from learning_lesson where
user_id = #{user_id}
and plan_status = 1 //有创建学习计划得
and status in (0,1) // 课程状态是未开始学习 或者正在学习ing
and id_delete = 0; // 没有被删除的
查询某个课程计划
select