tutor-student-task模块
数据库设计
1.student_task 学习任务表
CREATE TABLE `student_task` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增 id',
`studentId` INT(11) UNSIGNED NOT NULL COMMENT '学生 id',
`episodeId` INT(11) UNSIGNED NOT NULL COMMENT '课程 id',
`lessonId` INT(11) UNSIGNED NOT NULL COMMENT '班课 id',
`prestudyTaskStatus` int(11) UNSIGNED NOT NULL COMMENT '预习任务状态',
`prestudyTaskNum` int(11) UNSIGNED NOT NULL COMMENT '预习任务数量',
`rolePlayTaskStatus` int(11) UNSIGNED NOT NULL COMMENT '角色扮演任务状态',
`rolePlayTaskNum` int(11) UNSIGNED NOT NULL COMMENT '角色扮演任务数量',
`homeworkTaskStatus` int(11) UNSIGNED NOT NULL COMMENT '作业任务状态',
`homeworkTaskNum` int(11) UNSIGNED NOT NULL COMMENT '作业任务数量',
`animationTaskStatus` int(11) UNSIGNED NOT NULL COMMENT '动画任务状态',
`animationTaskNum` int(11) UNSIGNED NOT NULL COMMENT '动画任务数量',
`replayTaskStatus` int(11) UNSIGNED NOT NULL COMMENT '回放任务状态',
`replayTaskdNum` int(11) UNSIGNED NOT NULL COMMENT '回放任务数量',
`createdTime` bigint(20) NOT NULL COMMENT '创建时间',
`updatedTime` bigint(20) NOT NULL COMMENT '更新时间',
PRIMARY KEY (`id`),
KEY `studentId_episodeId` (`studentId`,`episodeId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
UML
依赖服务
依赖下游服务
监听的事件
- homework开放
- homework过期
- homework提交
- replay开放
- replay提交
- animation开放
- animation过期
- animation提交
- roleplay开放
- roleplay过期
- roleplay提交
- prestudy开放
- prestudy过期
- prestudy提交
- ticket创建
- ticket取消
事件处理设计
事件处理框架图
studentTaskService事件处理流介绍
- 上层逻辑职责是处理各类型任务到达时的原数据,对原数据加工,负责转换成taskService接受的数据格式
- taskService来完成对数据的存储,根据任务状态机负责将数据安全写入到db,保证数据的最终一致
任务开放时处理流程图
开放任务处理逻辑
任务过期时处理流程图
过期任务处理逻辑
任务提交时处理流程图
提交任务处理逻辑
ticket创建时处理流程图
ticket创建处理逻辑
ticket取消时处理流程图
ticket取消处理逻辑
网友评论