移动考勤短信功能说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
移动考勤短信文档
移动考勤短信目前有:订阅员工刷卡实时短信、考勤签到/退报告、员工刷卡确认、月报通知、设备状态变更通知、请假相关各类通知和提醒。
短信发送模式分为2类,一类是由quartz定时去轮询相应数据表(比如考勤报告),查询是否有满足条件的短信,如果有则拼装短信放入发送队列;另一类是由其它的行为或动作(比如月报通知)直接产生,即使拼装短信放入发送队列。
由ichinamobile定时轮询发送短信的是:订阅员工刷卡实时短信、考勤签到/退报告和员工刷卡确认。其他的短信都是由指定动作产生的。
分别描述各类短信的逻辑和相关的类或数据表。
1、订阅员工刷卡实时短信
这个短信功能是方便企业的管理层可以方便及时的了解下属员工的考勤信息。用户根据自己的权限可以订阅其下属员工的考勤记录,当员工打考勤时候,系统会自动将员工的打卡记录及时发送到上级的手机。
业务逻辑是,当用户打卡,考勤设备会将考勤数据立刻传送到服务器,服务器接收到考勤数据保存到考勤记录表。Quartz会每隔15秒扫描一次该表,检出扫描状态
(scan_state)为0的考勤记录,然后逐条判断。根据刷卡员工查询该员工是否被其他员工订阅了,如果有订阅,系统会依次准备好短信,并插入到短信发送队列中同时将该记录的扫描状态设置为1。
几点注意:
*如果上传的考勤记录发生时间在当前时间的15分钟前,则将scan_state设置为1,系统不会再扫描处理该记录并发送短信。
*考勤记录的发生时间,如果不再用户设置的考勤接收时间段内,系统不会发送短信给用户。
*当管理员改变了员工的企业权限,系统需要判断该员工是否有订阅其他员工短信,判断规则是:如果新的权限中仍然可以管理的员工订阅保留;如果新的权限中不再管理的员工订阅系统需要自动取消。
*当管理员改变了员工的企业权限,系统需要判断该员工是否被其他员工订阅,如果有订阅判断规则是:如果新的权限该员工仍然被订阅其的员工管理,则订阅保留;如果新的权限该员工不再被订阅其的员工管理,则订阅取消。
短信内容:您的员工xxx在yyyy-mm-dd(星期x)hh:mm:ss打卡一次(移动考勤) Quartz设置文件:calculateround-quartz-context.xml
(hanwangIManager_iservice工程)
发布环境的配置:
bean id:selectSubscriptionReportJobDetail
cronExpression:0/15 * * * * ?
相关类和方法:
com.chinark.imanager.calculateround.service.CalculateRoundService
public void selectSubscriptionAttendanceReportDetail()
2、员工刷卡确认
本短信功能,由移动考勤的企业管理员负责开通,在“短信管理”中的“短信确认管理”中可以设置。此功能主要目的帮助指纹刷卡有异常的员工,确认是否成功刷卡,一般可以不使用。表现是当员工刷卡后设置收考勤确认短信的员工,会自动受到系统发送的短信,告知用户。
业务逻辑与短信1中的类似,只是在扫描时候,多判断该员工是否有短信确认,如果有设置短信确认,系统会下发一条给该员工。
实现上,该方法和短信1中的方法在一起,只是增加了一步操作。所以配置信息和实现类也一样。
员工开启短信确认的标志位是Staff实体的reserve10,1为订阅,其它值为未订阅
短信内容:您好,您在yyyy-mm-dd(星期x)hh:mm:ss打卡一次(移动考勤)
Quartz设置文件:calculateround-quartz-context.xml
(hanwangIManager_iservice工程)
发布环境的配置:
bean id:selectSubscriptionReportJobDetail
cronExpression:0/15 * * * * ?
相关类和方法:
com.chinark.imanager.calculateround.service.CalculateRoundService
public void selectSubscriptionAttendanceReportDetail()
private void sendSMSForSelf(AttRecord ar)
3、考勤签到/退报告
••••本功能是用户从前台根据权限来订阅全部下级员工或者指定权限的员工的考勤报告。考勤短信报告订阅可以让用户订阅该企业权限树的节点下全部节点的员工。然后列出全部员工或所选权限的下员工的全部考勤班次以及时段,用户根据自己需要自行订阅签到或签退报告,并设置报告发送时间。
需要注意报告是在报告发送时间即时计算出来,不是最终的结果。而且只有考勤异常时候才会产生并发送报告给订阅报告的员工。签到报告:截至报告发送时间,有员工未到和已到但迟到的员工。签退报告:截至报告发送时间,有员工缺勤或者早退。
业务逻辑:员工设置考勤报告,并订阅若干时段,Quartz定时轮询,轮询设置在每分钟的59秒,首先查找是否有符合当前时间的考勤报告(报告发送时间=当前时间)。如果有则取出报告记录,根据记录中的班次(时段)信息和报告范围信息(全部员工或指定权限下的员工)准备短信,并存入发送队列。
几点注意:
*如果管理员修改员工的权限,系统•目前会取消该员工的全部短信报告订阅。
*如果用户订阅全部员工和按权限订阅的互斥逻辑如下:相同班次(时段),相同类型报告(签退/签到)互斥。如果有全部员工的就不能有按权限选择的。
*签到报告中,如果时段中没有设置迟到最大时间,或者设置为0,该班次则不计算迟到,系统就不会视晚于签到时间到达的员工为迟到,报告也不会有迟到的异常状态。只有截至到发送时间未到的员工。
*签退报告中,当前缺勤简单按照截至到报告发送时间,没有任何考勤记录的员工。
签到短信:在yyyy-mm-dd hh:mmXX部(xxx企业权限)员工应到x人已到x人。未到x 人,未到员工是:xxx1、xxx2。迟到x人,迟到员工是:xx1、xx2(移动考勤)