升学期逻辑优化方案
升学期是在每个学年的第二学期,系统可自动沿用学校的第一学期数据。
一、当前逻辑
1、当前情况:
1、业务中台中默认不对基础数据进行学年学期的划分
2、系统缺少升学期的完善功能
2、逻辑流程
当前生学期的逻辑实际上是对数据关系迁移,主要进行以下数据的迁移
- 当前学年学期的 班级年级数据,学生数据 复制到 班级年级历史表,学生信息历史列表
- 新增新的学年学期
select * from sj_zxxx_nj_bj_history where task_id ='2024202501'
insert into sj_zxxx_nj_bj_history (union_id,xn,xqm,nj_id,nj,njmc,njbc,xxdm,xxbxlxm,xxmc,xqdm,xqmc,task_id,bj_id,bh,bj,xzbh,bjbc,bynf,rxnf,xxxh,`type`)
select bj.union_id, '2024-2025','01',nj.id,nj.nj,dict.mc,nj.njbc,xx.xxdm,xx.xxbxlxm,xx.xxmc,xq.xxdm ,xq.xqmc,'2024202501', bj.id,bj.bh,bj.bj ,bj.xzbh ,bj.bjbc ,nj.bynf ,nj.njmc,xx.xxxh ,2
from sj_zxxx_bjsjzlb bj
left join sj_zxxx_njsjzlb nj on bj.njsjzlb_id = nj.id
left join t_dict_code_standard dict on dict.dm = nj.nj
left join sj_zxxx_xxjbsjlb xx on xx.xxdm = bj.jgh
left join sj_zxxx_xqjbsjzlb xq on xq.xxdm = bj.dept_id
where 1=1
and nj.is_delete =0 and bj.is_delete =0 and xq.is_delete =0 and xx.is_delete =0 and dict.dict_type ='njsjzlb' ;
select * from sj_zxxs_xsjbsjzlb_history where task_id ='2024202501'
INSERT INTO sj_zxxs_xsjbsjzlb_history (union_id,
xm, ywxm, xmpy, cym, xbm, csrq, csdm, jg, mzm, gjdqm, grbsm, sfzjlxm, sfzjh, hyzkm, gatqwm, zzmmm, jkzkm, xyzjm, xxm,
zp, sfzjyxq, dszybz, rxny,xslbm, xzz, hkszd, hkxzm, sfldrk, tc, lxdh, txdz, yzbm, dzxx, zydz, xjh,
sfwjry, sfge, sflshyfzn, sflset, sfwlwgryzn, csdd, fqxm, fqgzdw, fqlxdh, fqsfzjh, fqsfjhr, mqxm, mqgzdw, mqlxdh, mqsfzjh,
mqsfjhr, byxx, dqdm, jdfs, rxfs, sfbdsy, sfjsxqjy, syd, xjszxx, xsly,task_id,xsid, jgh,njsjzlb_id,nj,bjsjzlb_id,bh
)
SELECT distinct jg.union_id, xm, ywxm, xmpy, cym, xbm, csrq, csdm, jg, mzm, gjdqm, grbsm, sfzjlxm, sfzjh, hyzkm, gatqwm, zzmmm, jkzkm, xyzjm, xxm,
zp, sfzjyxq, dszybz, rxny,xslbm, xzz, hkszd, hkxzm, sfldrk, tc, lxdh, txdz, yzbm, dzxx, zydz, xjh,
sfwjry, sfge, sflshyfzn, sflset, sfwlwgryzn, csdd, fqxm, fqgzdw, fqlxdh, fqsfzjh, fqsfjhr, mqxm, mqgzdw, mqlxdh, mqsfzjh,
mqsfjhr, byxx, dqdm, jdfs, rxfs, sfbdsy, sfjsxqjy, syd, xjszxx, xsly, '2024202501', xs.id,xs.jgh,nj.id,nj.nj,bj.id,bj.bh
from sj_zxxs_xsjbsjzlb xs
INNER JOIN sj_zxxs_xsjgsjzlb jg on xs.id = jg.xs_id
inner join t_org_tree ot on ot.org_id = jg.bj_org_id
inner join sj_zxxx_bjsjzlb bj on ot.source_value = cast(bj.id as char) and ot.org_type = 'node_class'
left join sj_zxxx_njsjzlb nj on nj.nj = bj.nj and bj.dept_id = nj.jgh;一、优化方案
1、方案描述:
1.1、交互功能
- 以 学校-年级-班级 为最小单位,在每个学期时间结束时,系统自动创建 升学期计划
- 升学期计划功能,包含 运维视角 和 学校视角 两个功能
- 在 运维视角 下的 升学期计划 功能,有 待升学期 的 学校 列表
- 学校列表 中,需要包含,学校、年级、班级、升学期计划、执行状态、执行进度、操作[重试],异常时候,点击执行状态可查看异常信息
- 学校列表 展开,可展示 年级-班级 的子列表
- 运维人员(运维专员、客户经理),可重新执行 年级-班级 失败的 升学期计划
- 在 学校视角 下的 升学期计划 功能,有 学校为单位的 待升学期 整体进度图表 和 年级-班级 的 升学期计划 列表
- 年级-班级 列表中,需要包含,年级、班级、升学期计划、执行状态、执行进度、操作[重试],异常时候,点击执行状态可查看异常信息
- 运维人员(运维专员、客户经理),可重新执行 年级-班级 失败的 升学期计划
- 列表中,需要包含,学校、年级、班级、升学期计划、执行状态、异常详情、操作[重试]
1.2、逻辑流程

1.3、业务流程

2、数据库设计:
- 升学期计划表
CREATE TABLE `t_plan_sxqjh` (
`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:下学期)',
`sxqjh` varchar(255) NOT NULL COMMENT '升学期计划, 2024-2025-02',
`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】
- 升学期计划列表
- 升学期计划重试
- 升学期计划异常详情
- 升学期计划定时任务及逻辑【1d】
- 功能测试【0.5d】
作者:杭州天音 创建时间:2025-02-14 09:50
最后编辑:杭州天音 更新时间:2025-06-09 11:42
最后编辑:杭州天音 更新时间:2025-06-09 11:42