今天接到了一个需求:就是要做出一个考勤管理模块,每个员工都可以前来签到和签退,
签到有正常、迟到、缺勤和请假4种状态。要要统计每个月的员工到勤率,还要在部门管理人员哪里显示本部门员工的今日的到勤情况。我的设计思路如下:ex表示备注
然后添加一个值来记录本月正常签到的次数,用来计算考勤率,需要的逻辑太复杂了,她还要统计本月到勤率=本月当前天数-正常签到数count-非正常签到数(迟到数)-请假数。count要取到本月最大的数值,只有员工签到了才会被记录在数据库中(迟到和正常)。迟到数要用本月记录数-count(正常签到数)。请假数要取查另外的一张表来获取,而且查出来的是时间,还要计算2个时间之间的间距。
这样设计就是感觉,只有点击了签到按键才会被记录到表中,无法显示缺勤和请假的记录,另外就是到勤率的逻辑过于复杂。
有大佬提供更好的设计思路吗?