杨立超
发布于 2025-04-16 / 20 阅读
0
0

【班牌】事件考勤与课节考勤冲突说明

  1. 目的

班牌当前时间只能显示一种考勤模式数据,如果设备或班级同一个时间间隔/时间冲突既有课节考勤又有事件考勤,

终端无法区分显示,学生也无法进行对应的考勤;

  1. 冲突限制:平台限制,当前时间有课节考勤规则,则不允许创建事件考勤;

  1. 处理方式

  1. 课节考勤的是几月几号到几月几号的,周一到周日的任选,每天的几点到几点的多个时间段,考勤目标(年级、班级)

  2. 单日事件考勤:指定单日的几点到几点一个时间段,考勤目标(班级、学生)

  3. 循环事件考勤:不限制日期,周一到周日任选,每天几点到几点一个时间段,考勤目标(班级、学生)

  1. 添加单日事件考勤,如果目标是班级,根据班级和日期查询事件考勤列表,如没有数据就继续课节考勤冲突判断,

如果有数据,把这些数据的所有时间段和当前数据的时间段做比对,如果时间段不冲突进行课节考勤判断,如果有冲突就直接返回失败

如果考勤目标是学生,根据学生查询学生班级,根据班级或学生查询事件考勤列表,进行上一步事件列表数据与单日事件冲突判断

如果考勤目标是班级,并且单日事件考勤不冲突,根据班级和日期查询课节考勤列表,如果没有数据就直接返回成功

如果有数据,把课节考勤的所有时间段和当前数据的时间段做比对,如果时间段不冲突就直接返回创建成功,如果时间段冲突直接返回失败

如果考勤目标是学生,根据学生查询学生班级,进行上一步班级和课节考勤冲突判断

  1. 添加循环考勤,如果目标是班级,根据班级查询事件考勤列表,如没有数据就继续课节考勤冲突判断

如果有数据,把这些数据所有数据的循环周期和当前循环事件的循环周期做对比,如果循环周期不冲突就继续做课节判断,

如果有循环周期冲突,获取所有的时间段和循环考勤的时间段做判断,如果时间段不冲突继续做课节判断,如果时间段冲突就直接返回失败

如果考勤目标是学生,根据学生查询学生班级,根据学生或者班级查询事件考勤列表,进行上一步事件列表数据与循环事件冲突判断

如果考勤目标是班级,并且循环考勤不冲突,根据班级查询课表课节列表,如果没有数据就直接返回成功

如果有数据,把课节考勤的周期和循环考勤的周期做判断,如果周期不冲突直接返回成功,

如果周期冲突,获取课节考勤所有时段段和当前数据的时间段做对比,如果时间段段不冲突直接返回成功,如果时间段冲突直接返回失败

如果考勤目标是学生,根据学生查询学生班级,进行上一步班级和课表考勤冲突判断


评论