掌桥专利:专业的专利平台
掌桥专利
首页

一种考勤数据的计算方法、装置及设备

文献发布时间:2023-06-19 09:32:16


一种考勤数据的计算方法、装置及设备

技术领域

本发明涉及数据统计技术领域,特别是涉及一种考勤数据的计算方法、装置及设备。

背景技术

考勤,也就是考查出勤。例如,对于学校来说,其可以获取学生的考勤数据,统计学生迟到、早退、病假等情况。对于公司来说,其可以获取公司员工的考勤数据,统计员工上下班、迟到、早退、休假、加班等情况。

一些自动化考勤方案中,用户能够根据实际需求,配置相应的考勤规则,然后基于所配置的考勤规则,对获取到的考勤数据进行统计处理。这种方案中,用户通常是根据人工经验配置考勤规则,但随着考勤规则越来越复杂,例如涉及到排班、加班、补贴等各种情况,用户根据人工经验配置的考勤规则可能并不合理。

发明内容

本发明实施例的目的在于提供一种考勤数据的计算方法、装置及设备,以配置更优化的考勤规则,利用更优化的考勤规则对考勤数据进行计算。

为达到上述目的,本发明实施例提供了一种考勤数据的计算方法,包括:

确定待调整考勤规则,所述待调整考勤规则中包括多个规则节点的执行方式及执行顺序;

获取对所述待调整考勤规则进行验证的验证数据;以及确定对所述待调整考勤规则进行验证的预期指标;

利用所述待调整考勤规则对所述验证数据进行处理,并确定用于表示处理质量的质量参数;

判断所述质量参数是否满足所述预期指标;

如果不满足,调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则;

利用所述调整后的考勤规则对考勤数据进行计算。

可选的,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;所述调整所述多个规则节点的执行方式,包括:

针对所述待调整考勤规则中每个规则节点,确定按照该规则节点对所述验证数据进行处理的计算量;若所述计算量大于第一预设阈值,则将该规则节点的执行方式调整为开启独立的处理单元执行该规则节点。

可选的,所述确定按照该规则节点对所述验证数据进行处理的计算量,包括:

确定由该规则节点处理的验证数据的数据量,作为第一数据量;以及确定该规则节点的计算复杂度;

基于所述第一数据量和所述计算复杂度,确定按照该规则节点对所述验证数据进行处理的计算量。

可选的,所述待调整考勤规则中包括多条子规则,每条子规则中包括多个规则节点的执行方式及执行顺序;所述方法还包括:

针对每条子规则,若该条子规则中每个规则节点对所述验证数据进行处理的计算量均不大于所述第一预设阈值,则计算该条子规则中每个规则节点对所述验证数据进行处理的计算量之和,若所述计算量之和大于第二预设阈值,则针对该条子规则开启独立的处理单元,作为子规则处理单元,将该条子规则中每个规则节点的执行方式调整为:利用所述子规则处理单元执行该条子规则中每个规则节点。

可选的,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;所述调整所述多个规则节点的执行方式,包括:

确定所述验证数据的数据量,作为第二数据量;

若所述第二数据量大于第三预设阈值,则将所述验证数据拆分为多份验证数据子集;

将所述多个规则节点的执行方式调整为:分别对所述多份验证数据子集中的每份验证数据子集进行处理。

可选的,所述将所述多个规则节点的执行方式调整为:分别对所述多份验证数据子集中的每份验证数据子集进行处理,包括:

将所述多个规则节点的执行方式调整为:先分别对所述多份验证数据子集中的每份验证数据子集进行处理,再对每份验证数据子集的处理结果进行合并处理。

可选的,所述质量参数包括处理结果;所述预期指标包括:预期处理结果;所述方法还包括:

若所述处理结果与所述预期处理结果不匹配,则输出提示信息;

所述调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则,包括:

接收用户基于所述提示信息发送的操作指令;

基于所述操作指令,调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

为达到上述目的,本发明实施例还提供了一种考勤数据的计算装置,包括:

第一确定模块,用于确定待调整考勤规则,所述待调整考勤规则中包括多个规则节点的执行方式及执行顺序;

获取模块,用于获取对所述待调整考勤规则进行验证的验证数据;

第二确定模块,用于确定对所述待调整考勤规则进行验证的预期指标;

第三确定模块,用于利用所述待调整考勤规则对所述验证数据进行处理,并确定用于表示处理质量的质量参数;

判断模块,用于判断所述质量参数是否满足所述预期指标;如果不满足,触发第一调整模块;

第一调整模块,用于调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则;

考勤数据计算模块,用于利用所述调整后的考勤规则对考勤数据进行计算。

可选的,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;所述第一调整模块,包括:

第一确定子模块,用于针对所述待调整考勤规则中每个规则节点,确定按照该规则节点对所述验证数据进行处理的计算量;

第一调整子模块,用于在所述计算量大于第一预设阈值的情况下,将该规则节点的执行方式调整为开启独立的处理单元执行该规则节点。

可选的,所述第一确定子模块,具体用于:

针对所述待调整考勤规则中每个规则节点,确定由该规则节点处理的验证数据的数据量,作为第一数据量;以及确定该规则节点的计算复杂度;基于所述第一数据量和所述计算复杂度,确定按照该规则节点对所述验证数据进行处理的计算量。

可选的,所述待调整考勤规则中包括多条子规则,每条子规则中包括多个规则节点的执行方式及执行顺序;所述装置还包括:

第二调整模块,用于针对每条子规则,若该条子规则中每个规则节点对所述验证数据进行处理的计算量均不大于所述第一预设阈值,则计算该条子规则中每个规则节点对所述验证数据进行处理的计算量之和,若所述计算量之和大于第二预设阈值,则针对该条子规则开启独立的处理单元,作为子规则处理单元,将该条子规则中每个规则节点的执行方式调整为:利用所述子规则处理单元执行该条子规则中每个规则节点。

可选的,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;所述第一调整模块,包括:

第二确定子模块,用于确定所述验证数据的数据量,作为第二数据量;

拆分子模块,用于在所述第二数据量大于第三预设阈值的情况下,将所述验证数据拆分为多份验证数据子集;

第二调整子模块,用于将所述多个规则节点的执行方式调整为:分别对所述多份验证数据子集中的每份验证数据子集进行处理。

可选的,所述第二调整子模块,具体用于:

将所述多个规则节点的执行方式调整为:先分别对所述多份验证数据子集中的每份验证数据子集进行处理,再对每份验证数据子集的处理结果进行合并处理。

可选的,所述质量参数包括处理结果;所述预期指标包括:预期处理结果;所述装置还包括:

输出模块,用于在所述处理结果与所述预期处理结果不匹配的情况下,输出提示信息;

所述第一调整模块,具体用于:接收用户基于所述提示信息发送的操作指令;基于所述操作指令,调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

为达到上述目的,本发明实施例还提供了一种电子设备,包括处理器和存储器;

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现上述任意一种考勤数据的计算方法。

应用本发明所示实施例,利用待调整考勤规则对验证数据进行处理,并确定用于表示处理质量的质量参数;若该质量参数不满足预期指标,则调整待调整考勤规则中规则节点的执行方式和/或执行顺序,也就是对该待调整考勤规则进行优化,调整后的考勤规则也就是优化的考勤规则,这样便配置得到了更优化的考勤规则,实现了利用更优化的考勤规则对考勤数据进行计算。

当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种考勤数据的计算方法的流程示意图;

图2为本发明实施例提供的一种规则树示意图;

图3为本发明实施例提供的一种考勤系统的结构示意图;

图4为本发明实施例提供的一种考勤数据的计算装置的结构示意图;

图5为本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了达到上述目的,本发明实施例提供了一种考勤数据的计算方法、装置及设备,该方法及装置可以应用于各种电子设备,具体不做限定。下面首先对该考勤数据的计算方法进行详细说明。

图1为本发明实施例提供的一种考勤数据的计算方法的流程示意图,包括:

S101:确定待调整考勤规则,该待调整考勤规则中包括多个规则节点的执行方式及执行顺序。

待调整考勤规则也就是需要优化的考勤规则。举例来说,可以展示可视化界面,用户可以在该可视化界面中配置考勤规则,用户配置的考勤规则中包括多个规则节点的执行方式及执行顺序,可以将用户配置的考勤规则确定为待调整考勤规则。确定待调整考勤规则的具体方式不做限定。

规则节点可以理解为待调整考勤规则中的最小规则单元,其可以实现至少一个功能,或者说执行至少一个处理步骤。

举例来说,待调整考勤规则可以包括一条或多条子规则,待调整考勤规则可以表达为规则树的形式,每条子规则可以作为该规则树的一棵子树,每个规则节点均可以作为该规则树的树节点。

参考图2所示,待调整考勤规则包括两条子规则,子规则1用于基于员工的本周上下班打卡时间,确定员工的调休时长,子规则2用于基于员工的下班打卡时间,确定员工的餐补情况。子规则1的子树中,输入数据为“员工本周上下班打卡时间”,输出数据为“员工的调休时长=8个小时”或者“员工的调休时长为0”,规则节点为“统计员工本周工作时长”和“是否大于45个小时”。子规则2的子树中,输入数据为“员工下班打卡时间”,输出数据为“给予餐补”或者“不给予餐补”,规则节点为“是否晚于预设餐补时间”。

用户实际配置的考勤规则可以为很复杂的考勤规则,例如涉及休假、饭补、车补、排班等等,每条子规则中的规则节点可以有多个,图2仅为简单的举例说明,并不对实际确定的待调整考勤规则构成限定。

图2所示的子规则1中,两个规则节点之间的箭头可以表示这两个规则节点的执行顺序。子规则1的规则节点与子规则2的规则节点间无执行顺序的限定。规则节点的执行方式可以为单独启动一个处理单元处理数据,或者为与其他规则节点共享一个处理单元处理数据;还可以为对数据进行拆分处理,或者为对数据进行合并处理等等,后面内容中再作详细介绍。这里所说的一个处理单元可以为一个进程或者一个线程,具体不做限定。

向用户展示的可视化界面中也可以将考勤规则展示为规则树的形式,这样,用户可以对规则树中的树节点进行拖拽、增加、删除、编辑等操作,也就是对考勤规则中的规则节点进行手动调整。将用户调整完毕后的规则树确定为待调整考勤规则,利用本发明实施例对该待调整考勤规则进行优化处理。

如上所述,用户实际配置的考勤规则可以为很复杂的考勤规则,这些考勤规则之间也可以存在执行的先后顺序,可以通过设定考勤规则之间的优先级,设定考勤规则之间的执行顺序。

S102:获取对待调整考勤规则进行验证的验证数据;以及确定对待调整考勤规则进行验证的预期指标。

该验证数据可以理解为模拟考勤数据。验证数据的获取方式不做限定,例如,可以将历史考勤数据作为验证数据,也可以通过模拟仿真得到类似于考勤数据的验证数据。

一种实施方式中,预期指标可以包括待调整考勤规则对验证数据进行处理的处理耗时满足预设耗时条件。举例来说,该预设耗时条件可以为:待调整考勤规则对验证数据进行处理的处理耗时小于预设时长阈值。该预设时长阈值可以由用户指定,也可以根据实际情况设定,具体数值不做限定。或者,另一种实施方式中,预期指标可以包括待调整考勤规则对验证数据进行处理的预期处理结果。或者,再一种实施方式中,预期指标可以包括待调整考勤规则本身满足合规性要求,例如,不存在用工过度的情况,等等,不再一一列举。

S103:利用待调整考勤规则对验证数据进行处理,并确定用于表示处理质量的质量参数。

假设获取的验证数据为50个员工的一周打卡数据,利用图2所示的规则树对该验证数据进行处理:针对每个员工,统计该员工的本周工作时长,并判断该一周工作时长是否大于45个小时,如果大于,则确定该员工的调休时长为8个小时,如果不大于,则确定该员工的调休时长为0;此外,再统计该员工每天的下班打卡时间是否晚于预设餐补时间,预设餐补时间可以为18:00,或者为18:30等等,具体的餐补时间可以根据实际情况设定,不再一一列举;如果晚于预设餐补时间,则确定给予该员工餐补,如果不晚于,则确定不给予该员工餐补。

上述一种实施方式中,预期指标可以为待调整考勤规则对验证数据进行处理的处理耗时满足预设耗时条件,这种实施方式中,S103中确定的质量参数可以为:待调整考勤规则对验证数据进行处理的处理耗时。

上述另一种实施方式中,预期指标可以包括待调整考勤规则对验证数据进行处理的预期处理结果,这种实施方式中,S103中确定的质量参数可以为:待调整考勤规则对验证数据进行处理的处理结果。延续图2所示例子,预期处理结果可以为:预期会有60%以上的员工晚于预设餐补时间下班打卡,预期会有70%以下的员工一周工作时长大于45个小时。具体的预期指标可以根据实际情况设定,不再一一列举。

S104:判断该质量参数是否满足该预期指标,如果不满足,执行S105。

S105:调整待调整考勤规则中多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

上述一种实施方式中,预期指标可以为待调整考勤规则对验证数据进行处理的处理耗时满足预设耗时条件,S103中确定的质量参数可以为:待调整考勤规则对验证数据进行处理的处理耗时。这种实施方式中,调整所述多个规则节点的执行方式,包括:针对所述待调整考勤规则中每个规则节点,确定按照该规则节点对所述验证数据进行处理的计算量;若所述计算量大于第一预设阈值的规则节点,则将该规则节点的执行方式调整为开启独立的处理单元执行该规则节点。

一种示例中,确定按照该规则节点对所述验证数据进行处理的计算量,可以包括:确定由该规则节点处理的验证数据的数据量,作为第一数据量;以及确定该规则节点的计算复杂度;基于所述第一数据量和所述计算复杂度,确定按照该规则节点对所述验证数据进行处理的计算量。

举例来说,每个规则节点可以理解为一个运算式或者运算函数,该运算式或者运算函数中可以包括一个或多个运算符,如加、减、乘、除、平方、与阈值进行比较、求交集、求并集,等等,不再一一列举。可以预先设定每个运算符的计算复杂度,例如,“加”这个运算符的计算复杂度可以为1,“乘”这个运算符的计算复杂度可以为2,“平方”这个运算符的计算复杂度可以为3,等等,具体的计算复杂度设定情况不做限定。如果某规则节点中包括多个运算符,则可以计算该多个运算符的计算复杂度之和,作为该规则节点的计算复杂度,或者,也可以计算该多个运算符的计算复杂度之积,作为该规则节点的计算复杂度。规则节点中包括的运算符越多、运算符的计算复杂度越高,则该规则节点的计算复杂度越高,规则节点的计算复杂度的具体确定方式不做限定。

一种情况下,可以计算第一数据量与规则节点的计算复杂度的乘积,作为按照该规则节点对所述验证数据进行处理的计算量。或者,其他情况下,也可以采用预设函数,对第一数据量与规则节点的计算复杂度进行运算,得到按照该规则节点对所述验证数据进行处理的计算量。

如果按照某规则节点对验证数据进行处理的计算量大于第一预设阈值,则将该规则节点的执行方式调整为开启独立的处理单元执行该规则节点。如上所述,一个处理单元可以为一个线程或一个进程,本实施方式中,如果某规则节点的计算量较大,则单独开启一个线程或进程或其他形式的处理单元,供该规则节点使用,这样,可以缩短该规则节点对验证数据进行处理的耗时,也就缩短了利用待调整考勤规则对验证数据进行处理的整体耗时。

一种实施方式中,针对每条子规则,若该条子规则中每个规则节点对所述验证数据进行处理的计算量均不大于所述第一预设阈值,则计算该条子规则中每个规则节点对所述验证数据进行处理的计算量之和,若所述计算量之和大于第二预设阈值,则针对该条子规则开启独立的处理单元,作为子规则处理单元,将该条子规则中每个规则节点的执行方式调整为:利用所述子规则处理单元执行该条子规则中每个规则节点。

待调整考勤规则可以包括一条或多条子规则,每条子规则中的规则节点可以有一个或多个,假设一条子规则中包括n个规则节点,这n个规则节点的处理的验证数据的数据量分别为d

上述一种实施方式中,如果某规则节点的计算量较大,则单独开启一个线程或进程或其他形式的处理单元,供该规则节点使用;本实施方式中,如果一条子规则中的各规则节点的计算量均不大于第一预设阈值,但该条子规则中的各规则节点的计算量之和大于第二预设阈值,则单独开启一个线程或进程或其他形式的处理单元,供该条子规则中的各规则节点使用,这样,可以缩短该条子规则对验证数据进行处理的耗时,也就缩短了利用待调整考勤规则对验证数据进行处理的整体耗时。

另一种实施方式中,调整所述多个规则节点的执行方式,可以包括:确定所述验证数据的数据量,作为第二数据量;若所述第二数据量大于第三预设阈值,则将所述验证数据拆分为多份验证数据子集;将所述多个规则节点的执行方式调整为:分别对所述多份验证数据子集中的每份验证数据子集进行处理。

举例来说,可以将验证数据均分为多份验证数据子集,或者也可以将验证数据拆分为数据量大致相等的多份验证数据子集,或者也可以根据公司部门、数据类型等,对验证数据进行拆分,这样可能得到数据量不同的多份验证数据子集,具体拆分情况不做限定。

本实施方式中,如果验证数据的数据量较大,则将该验证数据先进行拆分,再对拆分后的数据分别进行处理,这样,也可以缩短利用待调整考勤规则对验证数据进行处理的耗时。

一些情况下,利用待调整考勤规则中的规则节点,分别对每份验证数据子集进行处理后,得到的处理结果可以直接作为考勤结果。例如,验证数据包括200个员工的打卡数据,将这些数据拆分为四份验证数据子集,每份验证数据子集中包括50个员工的打卡数据,假设采用图2所示的待调整考勤规则,分别确定每个员工的调休时长、是否给予餐补,这种情况下,分别对这四份验证数据子集进行处理,得到的处理结果即为200个员工的考勤结果。

另一些情况下,利用待调整考勤规则中的规则节点,分别对每份验证数据子集进行处理后,得到的处理结果可以不能直接作为考勤结果,这种情况下,可以将待调整考勤规则中各个规则节点的执行方式调整为:先分别对所述多份验证数据子集中的每份验证数据子集进行处理,再对每份验证数据子集的处理结果进行合并处理。

举例来说,假设验证数据包括200个员工的打卡数据,将这些数据拆分为四份验证数据子集,每份验证数据子集中包括50个员工的打卡数据,假设待调整考勤规则为确定打卡最早的前10名员工,则利用待调整考勤规则分别在这四份验证数据子集中确定打卡最早的前10名员工,假设得到40名员工的打卡数据,然后再利用待调整考勤规则在这40名员工的打卡数据中,进一步确定出打卡最早的前10名员工,也就是对每份验证数据子集的处理结果进行合并处理。

上述内容中介绍了对规则节点的执行方式进行调整,下面介绍对规则节点的执行顺序进行调整:

一些规则节点之间存在严格的先后顺序,例如图2中的“统计员工本周工作时长”与“是否大于45个小时”这两个规则节点之间,先执行“统计员工本周工作时长”这个规则节点,再执行“是否大于45个小时”,这种情况下,规则节点的执行顺序不做调整。

但是,另一些规则节点之间不存在严格的先后顺序,例如图2中的“统计员工本周工作时长”与“是否晚于预设餐补时间”这两个规则节点,可以并行执行这两个规则节点,或者先执行“统计员工本周工作时长”这个规则节点,或者先执行“是否晚于预设餐补时间”这个规则节点,这种情况下,可以对规则节点的执行顺序进行调整。并且在其他规则节点的执行顺序及执行方式相同的情况下,可以对比每次调整后对验证数据进行处理的耗时,将耗时最短的执行顺序确定为最终选择的执行顺序。

上述另一种实施方式中,预期指标为待调整考勤规则对验证数据进行处理的处理结果是否为预期处理结果,S103中确定的质量参数可以为:待调整考勤规则对验证数据进行处理的处理结果。这种实施方式中,若所述处理结果与所述预期处理结果不匹配,则输出提示信息;S105包括:接收用户基于所述提示信息发送的操作指令;基于所述操作指令,调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

延续图2所示例子,假设预期处理结果为:预期会有60%以上的员工晚于预设餐补时间下班打卡,预期会有70%以下的员工一周工作时长大于45个小时。但利用待调整考勤规则对验证数据进行处理得到的处理结果与该预期处理结果不匹配,则表示用户配置的考勤规则(也就是S101中确定的待调整考勤规则)可能出现了错误,这种情况下,输出提示信息,提示用户对该考勤规则进行检查及更改,以避免造成其他损失。

一种情况下,可以将考勤规则展示为规则树的形式,这样,用户可以对规则树中的树节点进行拖拽、增加、删除、编辑等操作,也就是对考勤规则中的规则节点进行手动调整。考勤规则的具体展示形式不做限定。接收到用的操作指令后,基于该操作指令调整规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

可见,应用本实施方式,能够及时提醒用户检查配置的考勤规则是否有错误,而不是在用户配置完考勤规则后,直接应用该考勤规则,减少了由错误的考勤规则造成的损失。

上述另一种实施方式中,预期指标可以包括待调整考勤规则本身满足合规性要求,例如,不存在用工过度的情况,等等,不再一一列举。这种实施方式中,可以判断待调整考勤规则本身是否满足合规性要求,如果不满足,输出提示信息,提示用户对该考勤规则进行检查及更改,以避免造成其他损失。

可见,应用本实施方式,能够及时提醒用户检查配置的考勤规则是否存在不合规的情况,而不是在用户配置完考勤规则后,直接应用该考勤规则,减少了由不合规的考勤规则造成的损失。

S106:利用调整后的考勤规则对考勤数据进行计算。

S105之后,便可以对调整后的考勤规则进行实际应用,也就是利用该调整后的考勤规则,对实际获取的考勤数据进行处理。

S106中的处理过程可以参考上述内容中介绍的利用待调整考勤规则对验证数据进行处理的过程(S103中的处理过程),这里不再对S106中的处理过程进行赘述。

应用本发明所示实施例,利用待调整考勤规则对验证数据进行处理,并确定用于表示处理质量的质量参数;若该质量参数不满足预期指标,则调整待调整考勤规则中规则节点的执行方式和/或执行顺序,也就是对该待调整考勤规则进行优化,调整后的考勤规则也就是优化的考勤规则,这样便配置得到了更优化的考勤规则,实现了利用更优化的考勤规则对考勤数据进行计算。

下面参考图3介绍一种具体的实施方式,图3为一种考勤系统的结构示意图,包括:

数据管理模块310:

数据管理模块310可以用于定义数据模型。例如,可以在该数据模型中配置日历、节假日等信息,还可以在该数据模型中配置上班时间、下班时间、弹性工作时间、班次模板、考勤计算周期等信息,具体配置情况不再一一列举。

数据管理模块310还可以存储并管理相关考勤数据,如考勤计算中间数据、考勤结果数据等等。

班次管理模块320:

班次管理模块320可以用于配置标准班、半弹性班、弹性班的班次模板。

规则配置模块330:

规则配置模块330可以借助可视化配置的方式,使得用户在可视化界面中进行规则的动态配置。例如,可以进行假期的配置,假期可以包括固定假期,如国家法定假期,还可以包括自定义假期,如根据员工的工龄、调休情况确定的假期。再例如,还可以进行考勤规则的配置,如上述实施例中的待调整考勤规则,即可以为用户通过规则配置模块配置得到的。再例如,还可以进行流程规则的配置,如配置申请加班的流程、申请车补、申请补卡的流程等等。

规则计算模块340:

规则计算模块340可以参考上述内容中“利用待调整考勤规则对验证数据进行处理”的部分,处理过程中,根据待调整考勤规则中包括的各规则节点的执行方式及执行顺序,对获取到的验证数据进行处理,这里不再赘述。

考勤验证模块350:

考勤验证模块350可以参考上述内容中“判断质量参数是否满足预期指标;如果不满足,调整多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则”的部分,验证过程中,可以验证处理耗时是否过长、处理结果是否满足预期、考勤规则本身是否满足合规性要求等等,如果不满足,则对考勤规则进行相应调整,调整方式这里不再赘述。

考勤报表模块360:

考勤报表模块360可以用于将考勤处理结果以报表的形式进行存储及展示。报表中可以采用列式数据存储的形式,这种存储形式能够支持大数据量高并发查询。

应用图3所示的考勤系统,能够实现考勤规则的实时配置,便于用户实时上线各种新的考勤规则,并且用户在实时规则配置之后,该考勤系统还能够进行规则验证,通过验证的考勤规则才能上线,通过验证的考勤规则处理耗时短、错误率低、满足合规性要求。

与上述方法实施例相对应,本发明实施例还提供了一种考勤数据的计算装置,如图4所示,包括:

第一确定模块401,用于确定待调整考勤规则,所述待调整考勤规则中包括多个规则节点的执行方式及执行顺序;

获取模块402,用于获取对所述待调整考勤规则进行验证的验证数据;

第二确定模块403,用于确定对所述待调整考勤规则进行验证的预期指标;

第三确定模块404,用于利用所述待调整考勤规则对所述验证数据进行处理,并确定用于表示处理质量的质量参数;

判断模块405,用于判断所述质量参数是否满足所述预期指标;如果不满足,触发第一调整模块406;

第一调整模块406,用于调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则;

考勤数据计算模块407,用于利用所述调整后的考勤规则对考勤数据进行计算。

一种实施方式中,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;第一调整模块406包括:第一确定子模块和第一调整子模块(图中未示出),其中,

第一确定子模块,用于针对所述待调整考勤规则中每个规则节点,确定按照该规则节点对所述验证数据进行处理的计算量;

第一调整子模块,用于在所述计算量大于第一预设阈值的情况下,将该规则节点的执行方式调整为开启独立的处理单元执行该规则节点。

一种实施方式中,所述第一确定子模块,具体用于:

针对所述待调整考勤规则中每个规则节点,确定由该规则节点处理的验证数据的数据量,作为第一数据量;以及确定该规则节点的计算复杂度;基于所述第一数据量和所述计算复杂度,确定按照该规则节点对所述验证数据进行处理的计算量。

一种实施方式中,所述待调整考勤规则中包括多条子规则,每条子规则中包括多个规则节点的执行方式及执行顺序;所述装置还包括:

第二调整模块(图中未示出),用于针对每条子规则,若该条子规则中每个规则节点对所述验证数据进行处理的计算量均不大于所述第一预设阈值,则计算该条子规则中每个规则节点对所述验证数据进行处理的计算量之和,若所述计算量之和大于第二预设阈值,则针对该条子规则开启独立的处理单元,作为子规则处理单元,将该条子规则中每个规则节点的执行方式调整为:利用所述子规则处理单元执行该条子规则中每个规则节点。

一种实施方式中,所述质量参数包括处理耗时;所述预期指标包括:处理耗时满足预设耗时条件;第一调整模块406包括:第二确定子模块、拆分子模块和第二调整子模块(图中未示出),其中,

第二确定子模块,用于确定所述验证数据的数据量,作为第二数据量;

拆分子模块,用于在所述第二数据量大于第三预设阈值的情况下,将所述验证数据拆分为多份验证数据子集;

第二调整子模块,用于将所述多个规则节点的执行方式调整为:分别对所述多份验证数据子集中的每份验证数据子集进行处理。

一种实施方式中,所述第二调整子模块,具体用于:

将所述多个规则节点的执行方式调整为:先分别对所述多份验证数据子集中的每份验证数据子集进行处理,再对每份验证数据子集的处理结果进行合并处理。

一种实施方式中,所述质量参数包括处理结果;所述预期指标包括:预期处理结果;所述装置还包括:

输出模块(图中未示出),用于在所述处理结果与所述预期处理结果不匹配的情况下,输出提示信息;

第一调整模块406具体用于:接收用户基于所述提示信息发送的操作指令;基于所述操作指令,调整所述多个规则节点的执行方式和/或执行顺序,得到调整后的考勤规则。

应用本发明所示实施例,利用待调整考勤规则对验证数据进行处理,并确定用于表示处理质量的质量参数;若该质量参数不满足预期指标,则调整待调整考勤规则中规则节点的执行方式和/或执行顺序,也就是对该待调整考勤规则进行优化,调整后的考勤规则也就是优化的考勤规则,这样便配置得到了更优化的考勤规则,实现了利用更优化的考勤规则对考勤数据进行计算。

本发明实施例还提供了一种电子设备,如图5所示,包括处理器501和存储器502,

存储器502,用于存放计算机程序;

处理器501,用于执行存储器502上所存放的程序时,实现上述任意一种考勤数据的计算方法。

上述电子设备提到的存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一种考勤数据的计算方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任意一种考勤数据的计算方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、设备实施例、计算机可读存储介质实施例、以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

相关技术
  • 一种考勤数据的计算方法、装置及设备
  • 考勤数据分析方法、装置、计算机设备和存储介质
技术分类

06120112207168