毕业逻辑优化方案
毕业,是把六年级学生的数据迁移到历史数据表的过程。这个过程会复制原年级的业务数据到历史表、删除原年级数据。
注意:先毕业,后升年级
一、当前逻辑
1、当前情况:
1、有自动毕业的功能,但是是对整个平台内的所有学校一次性的进行毕业操作逻辑处理,存在内存消耗高,程序容易奔溃的情况。
2、不能按校单独时间、单独逻辑进行处理
2、逻辑流程
1、迁移毕业年级数据
- 1、原数据表 sj_zxxx_njsjzlb、sj_zxxx_bjsjzlb、sj_zxxs_xsjbsjzlb、sj_zxxs_xsjgsjzlb 移动到历史表 sj_zxxx_bjsjzlb_history、sj_zxxs_xsjbsjzlb_history、sj_zxxx_nj_bj_history[主]、sj_zxxx_nj_history
- 2、组织机构 t_org_tree、t_org_tree_user 迁移到 t_org_tree_history、t_org_tree_user_history
2、毕业年级数据清除
- 1、删除原表中的数据 sj_zxxx_njsjzlb、sj_zxxx_bjsjzlb、sj_zxxs_xsjbsjzlb、sj_zxxs_xsjgsjzlb 、学生身份表 、组织机构 t_org_tree、t_org_tree_user
一、优化方案
1、方案描述:
1.1、交互功能
- 以 学校-年级-班级 为最小单位,在第2个学期时间结束时,系统自动创建 毕业计划
- 毕业计划功能,包含 运维视角 和 学校视角 两个功能
- 在 运维视角 下的 毕业计划 功能,有 待毕业年级 的 学校 列表
- 学校列表 中,需要包含,学校、年级、班级、毕业计划、执行状态、执行进度、操作[重试],异常时候,点击执行状态可查看异常信息
- 学校列表 展开,可展示 年级-班级 的子列表
- 运维人员(运维专员、客户经理),可重新执行 年级-班级 失败的 毕业计划
- 在 学校视角 下的 毕业计划 功能,有 学校为单位的 待毕业年级 整体进度图表 和 年级-班级 的 毕业计划 列表
- 年级-班级 列表中,需要包含,年级、班级、毕业计划、执行状态、执行进度、操作[重试],异常时候,点击执行状态可查看异常信息
- 运维人员(运维专员、客户经理),可重新执行 年级-班级 失败的 毕业计划
- 列表中,需要包含,学校、年级、班级、毕业计划、执行状态、异常详情、操作[重试]
1.2、逻辑流程

1.3、业务流程

2、数据库设计:
- 毕业计划表
CREATE TABLE `t_plan_byjh` (
`id` varchar(50) NOT NULL COMMENT '主键ID',
`xxdm` varchar(12) NOT NULL COMMENT '学校代码(指由教育部按照国家标准及编码规则编制,赋予每个学校(机构)在全国范围内唯一的、始终不变的识别标识码)',
`xqbm` varchar(14) NOT NULL COMMENT '校区编码(学校代码 + 校区号)',
`njdm` varchar(2) NOT NULL COMMENT '年级代码(JY/T 1002 JCTB010401)',
`bjdm` varchar(50) NOT NULL COMMENT '班级名称,例:一年级(01)班',
`xndm` varchar(9) NOT NULL COMMENT '学年代码,例:2024-2025',
`xqdm` varchar(2) NOT NULL COMMENT '学期代码(01:上学期;02:下学期)',
`byjh` varchar(255) NOT NULL COMMENT '毕业计划',
`zxzt` int(2) NOT NULL COMMENT '执行状态(0-未执行,1-执行中,2-已完成,3-已取消,4-异常)',
`zxjd` decimal(3,1) NOT NULL COMMENT '执行进度, 0-100',
`create_time` datetime NOT NULL COMMENT '创建时间(数据首次创建时间)',
`update_time` datetime NOT NULL COMMENT '更新时间(数据最后在数据库更中更新的时间)',
`create_by` bigint(20) null comment '创建人',
`update_by` bigint(20) null comment '修改人',
`deleted` tinyint(1) default 0 null comment '删除标识 1-已删除 0-未删除',
PRIMARY KEY (`id`),
KEY `idx_full` (`xxdm`, `njdm`, `bjdm`, `xndm`, `xqdm`, `sxqjh`, `zxzt`, `zxjd`) USING BTREE
) DEFAULT CHARSET = utf8mb4 COMMENT = '毕业计划表';3、任务拆分:
- 交互功能设计【0.5d】
- 交互功能UI布局【0.5d】
- 毕业计划任务管理功能【0.5d】
- 毕业级计划列表
- 毕业级计划重试
- 毕业级计划异常详情
- 毕业计划定时任务及逻辑【2d】
- 功能测试【0.5d】
作者:杭州天音 创建时间:2024-11-28 11:14
最后编辑:杭州天音 更新时间:2025-06-09 11:42
最后编辑:杭州天音 更新时间:2025-06-09 11:42