2-1 说一下生成课表的业务流程
生成课表简单来说就是监听MQ的消息队列,接收到消息后,对数据库进行一个新增操作,在这个业务里,涉及到RabbitMQ,课表微服务以及课程微服务
首先,我们在课表微服务内实现监听RabbitMQ队列的功能,指定交换机名称和监听的队列。
其次,在我们接收到消息后,调用课表的业务层进行新增课表
在我们新增课表时,需要调用课程微服务,根据课程ID,获取课程的详细信息,并将我们需要的信息封装到实体类中,最后写入到数据库中
2-2 说一下查询课表的业务流程
查询课表涉及到了两个微服务,课表微服务和课程微服务。
首先从课表中分页查询课表信息,设置分页条件和业务条件,执行查询;
然后获取当前页集合,判空,如果集合为空,返回空集合; 集合不为空,
再根据课程id集合收集课程信息转为map,用课程id作为键,课程对象作为值;
最后再遍历获取每个课表的vo,进行赋值。
2-3 说一下查询最近学习章节的业务流程
查询课表业务使用到了课表微服务和课程微服务,根据课程ID查询出课程信息,封装后进行返回
首先,学习微服务接收到前端的请求,会先根据用户id和最近一次学习时间到学生课表中查询基本信息,并根据最新时间倒序排序
然后根据查询到的课程id调用课程微服务,到课程表中进行查询,将信息返回给学习微服务
其次根据查询到的课程id调用课程微服务,到章节表中进行查询,将信息返回给学习微服务
最后学习微服务将信息拼装结果并返回给前端