考勤打卡场景
1. 简介
1.1 场景简介
考勤打卡,是指根据企业内的考勤规则和员工上下班打卡时间,自动计算出员工单日工作的有效工时。考勤打卡场景支持以下 2 种考勤规则
- 定时制考勤打卡:单日内仅有 1 个班次。
- 轮班制考勤打卡:单日内多班次轮值,如早班、午班和晚班。
注:本文以轮班制考勤打卡场景为例进行讲解,定时制考勤仅在考勤规则的公式上有区别,详情可参见【5. 注意事项】。
1.2 应用场景
适用于需要根据精细考勤计算其他信息的场景中。如根据员工的有效工时计算当月薪资、加班时长折算年假等。
1.3 预期效果
员工上班时填写考勤打卡表选择班次并进行上班打卡,此时流程流转至员工本人处,待完成下班打卡后,自动计算出员工当日的有效工时,确认无误并提交后,流程结束。以轮班制考勤打卡为例,效果如下所示:
1.4 使用说明
该插件为免费插件,付费版用户可免费使用。
2. 插件配置及启用
2.1 安装插件
1)直接安装
- 您可点击右方链接直接安装插件:有效工时计算插件安装。
- 安装成功后,可参考本文【2.2 配置插件】和【2.3 启用插件】,前往「开放平台 >> 插件管理」处配置并启用插件。
2)插件市场处安装
在简道云「插件市场」处,安装「有效工时计算」插件。插件市场处安装方法可参见文档:插件市场中【2.3 插件安装】。
2.2 配置插件
安装后,在「插件管理」处,点击插件右侧的「设置」按钮,根据企业内部的考勤制度选择公休日规则。支持选择双休、周日休息、周六休息和全周无休。如下所示:
2.3 启用插件
在插件管理中,打开「有效工时计算」插件右侧开关,启用插件。
3. 表单搭建
插件使用可先安装:有效工时计算插件模板表单。本文将按照示例应用中的「轮班制考勤打卡」表单进行讲解。
3.1 创建表单
新建「考勤打卡」流程表单,所需考勤信息及字段设置如下所示:
字段说明 | 字段名称 | 字段类型 | 字段设置 |
考勤打卡信息 | 姓名 | 成员单选 | 在「字段属性 >> 默认值」设置为「自定义 >> 当前用户」 |
员工所在部门 | 部门单选 | 在「字段属性 >> 默认值」设置为「自定义 >> 当前用户所处部门」 | |
打卡日期 | 日期时间 | 在「字段属性 >> 默认值」设置为「填写当时」 | |
归属考勤月 | |||
上班:请选择您的班次 | 单选按钮 |
| |
下班确认 | |||
班次考勤规则 | 规定上班时间 | 日期时间 | 详见【3.2 字段公式设置】 |
休息开始时间 | |||
休息结束时间 | |||
规定下班时间 | |||
有效工时计算 | 上班打卡时间 | 日期时间 | —— |
下班打卡时间 | |||
工时计算 | 子表单 | ||
工时计算.有效工时开始 | 日期时间 | ||
工时计算.有效工时结束 | |||
工时计算.工时 | 数字 |
3.2 字段公式设置
分别点击「规定上班时间」、「休息开始时间」、「休息结束时间」、「规定下班时间」,在「字段属性 >> 默认值」处选择「公式编辑」,公式设置如下所示:
- 规定上班时间:
IFS(上班:请选择您的班次=="早班",TEXT(TODAY(),"yyyyMMdd0000"),上班:请选择您的班次=="中班",TEXT(TODAY(),"yyyyMMdd0800"),上班:请选择您的班次=="晚班",TEXT(TODAY(),"yyyyMMdd1600"))
- 休息开始时间:
IFS(上班:请选择您的班次=="早班",TEXT(TODAY(),"yyyyMMdd0400"),上班:请选择您的班次=="中班",TEXT(TODAY(),"yyyyMMdd1200"),上班:请选择您的班次=="晚班",TEXT(TODAY(),"yyyyMMdd2000"))
- 休息结束时间:
IFS(上班:请选择您的班次=="早班",TEXT(TODAY(),"yyyyMMdd0430"),上班:请选择您的班次=="中班",TEXT(TODAY(),"yyyyMMdd1230"),上班:请选择您的班次=="晚班",TEXT(TODAY(),"yyyyMMdd2030"))
- 规定下班时间:
IFS(上班:请选择您的班次=="早班",TEXT(TODAY(),"yyyyMMdd0800"),上班:请选择您的班次=="中班",TEXT(TODAY(),"yyyyMMdd1600"),上班:请选择您的班次=="晚班",TEXT(TODAY(),"yyyyMMdd2400"))
以「规定上班时间」公式设置为例,操作步骤如下所示:
3.3 流程设定
流程表单配置完成后,切换至「流程设定」中,进行流程配置。
3.3.1 配置上班打卡节点
点击流程发起节点,进行以下操作:
- 在「节点属性 >> 节点名称」处,修改节点名称为「上班卡」;
- 在「节点属性 >> 字段权限」处,勾选部分字段的「可见」、「可编辑」权限。
3.3.2 配置下班打卡节点
点击审批节点,进行如下操作:
- 在「节点属性 >> 节点名称」处,修改节点名称为「下班卡」;
- 在「节点属性 >> 负责人」处,选择审批负责人;
- 在「字段权限」处,勾选全部字段的「可见」权限,以及下班确认「可编辑」权限。
3.3.3 启用流程
流程设定完成后,点击「保存」后,再点击「启用流程」,即可启用当前轮班制考勤打卡流程。
4. 前端事件配置
4.1 添加前端事件
进入「表单属性」,点击前端事件下的设置,添加前端事件:
4.2 设置事件名称和说明
添加好前端事件后,首先设置前端事件的基础信息,即事件名称和事件说明,用于区分前端事件:
4.3 设置触发动作
设置触发动作时,触发字段选择「下班确认」字段。
4.4 设置执行动作
1)设置执行动作如下:
- 选择插件:选择「有效工时计算」插件;
- 标准工时区间1开始:设置为字段值,即「规定上班时间」字段;
- 标准工时区间1结束:设置为字段值,即「休息开始时间」字段;
- 标准工时区间2开始:设置为字段值,即「休息结束时间」字段;
- 标准工时区间2结束:设置为字段值,即「规定下班时间」字段;
- 时间段开始时间:设置为字段值,即「上班打卡时间」字段;
- 时间段结束时间:设置为字段值,即「下班打卡时间」字段;
2)在设置字段存储关系处,点击「添加」按钮,设置字段存储关系如下所示:
- 「有效工时区间.开始」的值存储到「工时计算.有效工时开始」;
- 「有效工时区间.结束」的值存储到「工时计算.有效工时结束」;
- 「有效工时区间.有效工时」的值存储到「工时计算.工时(h)」;
- 填充方式:选择「先清空子表单再填充」。
设置完成后,点击「保存」按钮。
4.5 效果演示
效果参见本文【1.3 预期效果】。
5. 注意事项
1)该插件计算有效工时必须要有起止时间,因此考勤打卡场景适用流程表单而非普通表单。
2)若上班打卡时间超过了规定的下班时间,则与插件逻辑相悖,默认输出为空值,有需要可自行设置补卡表单。
3)若在轮值夜班遇假日的场景下,以 24 点为界限,该插件只能计算工作日内的有效工时,法定节假日内的有效工时自动计为 0,若有额外算薪要求,可以自建节假日加班申请表。
4)若为定时制考勤打卡场景,则考勤规则设置如下:
- 规定上班时间:TEXT(DATE(规定上班时间),"yyyy-MM-dd")
- 休息开始时间:TEXT(DATE(休息开始时间),"yyyy-MM-dd")
- 休息结束时间:TEXT(DATE(休息结束时间),"yyyy-MM-dd")
- 规定下班时间:TEXT(DATE(规定下班时间),"yyyy-MM-dd")