获取打卡记录

获取员工的打卡记录包括(地理位置打卡,beacon打卡,wifi打卡,考勤机打卡,各种补签的打卡数据)

GET https://qy.bangongyi.com/attend/api/check/log?ticket=<ticket>

参数 类型 必须 说明
staff_id int 员工ID,获取某个员工的打卡记录
check_id varchar 考勤机员工编号
start_time varchar 开始时间(2016-05-05 09:00:00)
end_time varchar 结束时间(2016-05-06 09:00:00)
device_id int 打卡方式ID,值0时打卡属于补签卡、外勤打卡或其他打卡方式
department_id int 部门ID,获取某个部门的打卡记录
page int 页数(默认:1)
next_id int 记录id(取大于id的记录,同时type参数失效)
type int 获取条件类型(默认:0;0:按照打卡时间获取,1:按照记录生成时间获取)
page_size int 每页数量,取值范围1-99(默认:50)
    {
        "errno": 0,
        "errmsg": "",
        "next_id": 3156420,
        "data": [
            {
                "from": 1,
                "time": 1462410000,
                "verify": "原因:忘打卡了",
                "device_id":0,
                "staff_id": 525569
            },
            {
                "from": 1,
                "time": 1462410000,
                "verify": "FP",
                "device_id":123,
                "staff_id": 11027
            }
        ]
    }
参数 说明
from 来源,0:正常打卡,1:管理员添加/补签,2:导入
time 打卡时间(unix时间戳)
verify 打卡方式(FP:指纹,CARD:卡,PASS:密码,FACE:人脸,39.2545111,90.26511:gps打卡百度坐标,14574:beacon打卡距离14574米,补签卡直接显示原因)
staff_id 员工ID

考勤申请登记

第三方平台直接提交已经审批通过的考勤申请(异常申请除外),提交成功后报表异常状态会产生变化

POST https://qy.bangongyi.com/attend/api/approve/apply?ticket=<ticket>

参数 类型 必须 说明
staff_id int 员工ID,登记某个员工的申请信息
we_userid varchar 员工账号 staff_id和we_useid二者至少填写一项
start_time varchar 开始时间(2016-05-05 09:00:00)
end_time varchar 结束时间(2016-05-05 18:00:00)
type varchar 申请类型 (事假/病假/外出/出差/调休/加班/异常)
transformation tinyint 加班转换:默认1(1:转换为调休,4转换为加班费)
reason varchar 申请原因
    {
        "errno": 390600,
        "errmsg": "考勤登记成功"
    }

获取考勤日报

get https://qy.bangongyi.com/attend/api/check/day?ticket=<ticket>

参数 类型 必须 说明
ticket 字符串 接口凭证
start_date 字符串 查询开始日期 示例 2016-06-01
end_date 字符串 查询结束日期 示例 2016-06-16
we_status 整型 员工状态 默认在职员工 1 为全部员工,-1为离职员工
staff_id 整型 指定要查询的员工ID
department_id int 部门ID,获取某个部门的打卡记录 无staff_id参数时才有效
next_id 整型 获取更多时传的值从上次请求返回结果中获取

获取员工ID为524516的员工2016-06-12至2016-06-20的日报: https://qy.bangongyi.com/attend/api/check/day?ticket=8029cd1fe2a24eb47af278f7fb71f69b&start_date=2016-06-12&end_date=2016-06-20&staff_id=524516

参数 类型 说明
errno 整型 全局返回码
errmsg 字符串 返回码描述
data - 返回数据
next_id 整型 获取更多时传的值
list 数组 报表结果数组
staff_id 整型 员工ID
we_userid 字符串 员工账号
we_status 整型 员工状态 1=已关注,2=已离职,4=未关注,-1不在微信
we_name 字符串 员工名
we_department 数组 员工所在部门
export_deps 数组 带层级的部门
we_position 字符串 员工职位
date 整型 该条报表日期
week 字符串 星期
iswork 字符串 工作日或休息日
times_id 整型 班次ID
checkin 字符串 班次上班时间
checkout 字符串 班次下班时间
times_type 字符串 排次类型
checkin_time 整型 实际有效签到打卡时间戳
checkout_time 整型 实际有效签退打卡时间戳
duration_work 整型 工作时长 单位为小时
duration_real 整型 记薪时长 单位为小时
absent 整型 旷工时长单位为秒
late 整型 总迟到时长单位为分钟
early 整型 总早退时长单位为分钟
late_times 整型 总迟到次数
early_times 整型 总早退次数
late_0 整型 对应相应的迟到等级单位为分钟 如果有二级迟到则相应增加字段 early_1 以此类推
early_0 整型 对应相应的早退等级单位为分钟 如果有二级早退则相应增加字段 early_1 以此类推
late_0_times 整型 对应相应的迟到次数 如果有二级早退则相应增加字段 early_1_times 以此类推
early_0_times 整型 对应相应的早退次数 如果有二级早退则相应增加字段 early_1_times 以此类推
approve 数组 请假申请
approve.id 整型 申请类型ID
approve.title 字符串 申请类型
approve.duration 整型 申请时长 单位为秒
approve.times 整型 申请次数
overtime 整型 加班时长 单位为秒
overtime_times 整型 加班次数
    {
        "errno": 0,
        "errmsg": "",
        "data": {
            "list": [
                {
                    "staff_id": "524517",
                    "we_userid": "luoyong",
                    "we_status": "1",
                    "we_name": "罗勇",
                    "we_department": [
                        "运维部",
                        "研发部",
                        "财务部"
                    ],
                    "export_deps": [
                        "百会云计算/运维部",
                        "百会云计算/研发部",
                        "百会云计算/财务部"
                    ],
                    "we_position": "php",
                    "date": "2016-05-19",
                    "week": "四",
                    "iswork": "工作日",
                    "times_id": "89",
                    "title": "默认班次",
                    "checkin": "9:00",
                    "checkout": "17:30",
                    "times_type": "固定",
                    "checkin_time": "2016-05-19 09:00:00",
                    "checkout_time": "2016-05-19 22:05:00",
                    "absent": 0,
                    "late": 0,
                    "early": 0,
                    "duration_real": 8,
                    "duration_work": 12.08
                },
                {
                    "staff_id": "524517",
                    "we_userid": "luoyong",
                    "we_status": "1",
                    "we_name": "罗勇",
                    "we_department": [
                        "运维部",
                        "研发部",
                        "财务部"
                    ],
                    "export_deps": [
                        "百会云计算/运维部",
                        "百会云计算/研发部",
                        "百会云计算/财务部"
                    ],
                    "we_position": "php",
                    "date": "2016-05-22",
                    "week": "日",
                    "iswork": 0,
                    "overtime_times": 0,
                    "overtime": 0
                },
                {
                    "staff_id": "524517",
                    "we_userid": "luoyong",
                    "we_status": "1",
                    "we_name": "罗勇",
                    "we_department": [
                        "运维部",
                        "研发部",
                        "财务部"
                    ],
                    "export_deps": [
                        "百会云计算/运维部",
                        "百会云计算/研发部",
                        "百会云计算/财务部"
                    ],
                    "we_position": "php",
                    "date": "2016-05-23",
                    "week": "一",
                    "iswork": "工作日",
                    "times_id": "72",
                    "title": "四班",
                    "checkin": "9:00",
                    "checkout": "17:00",
                    "times_type": "固定",
                    "checkin_time": "2016-05-23 09:50:00",
                    "checkout_time": "2016-05-23 16:50:00",
                    "absent": 0,
                    "late": 0,
                    "early": 10,
                    "duration_real": 8,
                    "duration_work": 6,
                    "early_0_times": 1,
                    "early_0": 10,
                    "early_times": 1,
                    "approve": [
                        {
                            "id": "1090",
                            "title": "调休",
                            "duration": 5400,
                            "times": 1
                        }
                    ]
                }
            ],
            "page": 524517
        }
    }

获取考勤月报

get https://qy.bangongyi.com/attend/api/check/month?ticket=<ticket>

参数 类型 必须 说明
ticket 字符串 接口凭证
start_date 字符串 查询开始日期 示例 2016-06-01
end_date 字符串 查询结束日期 示例 2016-06-16
we_status 整型 员工状态 默认在职员工 1 为全部员工,-1为离职员工
staff_id 整型 指定要查询的员工ID
department_id int 部门ID,获取某个部门的考勤月报 无staff_id参数时才有效
next_id 整型 获取更多时传的值从上次请求返回结果获取

获取2016-06-12至2016-06-20的月报: https://qy.bangongyi.com/attend/api/check/month?ticket=8029cd1fe2a24eb47af278f7fb71f69b&start_date=2016-06-12&end_date=2016-06-20

参数 类型 说明
errno 整型 全局返回码
errmsg 字符串 返回码描述
data - 返回数据
next_id 整型 获取更多时传的值
list 数组 报表结果数组
staff_id 整型 员工ID
we_userid 字符串 员工账号
we_status 整型 员工状态 1=已关注,2=已离职,4=未关注,-1不在微信
we_name 字符串 员工名
we_department 数组 员工所在部门
export_deps 数组 带层级的部门
we_position 字符串 员工职位
days 浮点数 应到天数
attend_days 浮点数 应到天数
duration_work 整型 工作时长 单位为秒
duration_real 整型 记薪时长 单位为秒
absent 整型 旷工时长单位为秒
absent_times 整型 旷工次数
late 整型 总迟到时长单位为分钟
early 整型 总早退时长单位为分钟
late_times 整型 总迟到次数
early_times 整型 总早退次数
late_0 整型 对应相应的迟到等级单位为分钟 如果有二级迟到则相应增加字段 early_1 以此类推
early_0 整型 对应相应的早退等级单位为分钟 如果有二级早退则相应增加字段 early_1 以此类推
late_0_times 整型 对应相应的迟到次数 如果有二级早退则相应增加字段 early_1_times 以此类推
early_0_times 整型 对应相应的早退次数 如果有二级早退则相应增加字段 early_1_times 以此类推
lieu_remain 整型 剩余调休 单位为秒
annual_remain 整型 剩余年假 单位为秒
approve 数组 请假申请
approve.id 整型 申请类型ID
approve.title 字符串 申请类型
approve.duration 整型 申请时长 单位为秒
approve.times 整型 申请次数
    {
        "errno": 0,
        "errmsg": "",
        "data": {
            "list": [
                {
                    "we_userid": "luoyong",
                    "we_status": "1",
                    "we_name": "罗勇",
                    "we_department": [
                        "运维部",
                        "研发部",
                        "财务部"
                    ],
                    "we_position": "php",
                    "staff_id": 524517,
                    "days": 23.625,
                    "duration_work": 112200,
                    "duration_real": 144000,
                    "absent": 543600,
                    "absent_times": 21,
                    "late": 135,
                    "early": 10,
                    "attend_days": 4,
                    "late_1_times": 1,
                    "late_1": 135,
                    "late_times": 1,
                    "early_0_times": 1,
                    "early_0": 10,
                    "early_times": 1,
                    "lieu_remain": 85.7,
                    "annual_remain": 15,
                    "approve": [
                        {
                            "id": "1088",
                            "title": "外出",
                            "duration": 21600,
                            "times": 2
                        },
                        {
                            "id": "1090",
                            "title": "调休",
                            "duration": 14400,
                            "times": 2
                        },
                        {
                            "id": "1091",
                            "title": "事假",
                            "duration": 28800,
                            "times": 1
                        }
                    ],
                    "export_deps": [
                        "百会云计算/运维部",
                        "百会云计算/研发部",
                        "百会云计算/财务部"
                    ]
                },
                {
                    "we_userid": "A1501031",
                    "we_status": "4",
                    "we_name": "sfdsdf",
                    "we_department": [
                        "开发"
                    ],
                    "we_position": "",
                    "staff_id": 524518,
                    "attend_days": 0,
                    "days": 14.875,
                    "duration_work": 0,
                    "duration_real": 0,
                    "absent": 428400,
                    "absent_times": 17,
                    "late": 206,
                    "early": 0,
                    "late_1_times": 1,
                    "late_1": 206,
                    "late_times": 1,
                    "lieu_remain": 0,
                    "annual_remain": 24,
                    "export_deps": [
                        "百会云计算/研发部/开发"
                    ]
                },
                {
                    "we_userid": "15801123923",
                    "we_status": "4",
                    "we_name": "张雪",
                    "we_department": [
                        "百会云计算",
                        "研发部",
                        "测试",
                        "财务部",
                        "广研",
                        "运营部",
                        "测试部门",
                        "电商",
                        "自己人",
                        "张雪",
                        "l"
                    ],
                    "we_position": "测试工程师",
                    "staff_id": 524525,
                    "days": 26,
                    "duration_work": 34800,
                    "duration_real": 28800,
                    "absent": 720000,
                    "absent_times": 25,
                    "late": 0,
                    "early": 5,
                    "attend_days": 1,
                    "early_0_times": 1,
                    "early_0": 5,
                    "early_times": 1,
                    "lieu_remain": 0,
                    "annual_remain": 24,
                    "export_deps": [
                        "百会云计算",
                        "百会云计算/研发部",
                        "百会云计算/研发部/测试",
                        "百会云计算/财务部",
                        "百会云计算/广研",
                        "百会云计算/运营部",
                        "百会云计算/测试部门",
                        "百会云计算/电商",
                        "百会云计算/自己人",
                        "百会云计算/张雪",
                        "百会云计算/jk/l"
                    ]
                }
            ],
            "page": 524525
        }
    }

获取审批单列表

获取员工的审批单记录包括(请假,外出,出差,加班,调休,异常申请等)

GET https://qy.bangongyi.com/attend/api/approve/list?ticket=<ticket>

参数 类型 必须 说明
staff_id int 员工ID,获取某个员工的申请记录
start_time varchar 开始时间(2016-05-05 09:00:00)
end_time varchar 结束时间(2016-05-06 09:00:00)
department_id int 部门ID,获取某个部门的申请记录
page int 页数(默认:1)
next_id int 申请id(默认:0)
time_type int 申请时间长类型(1:分钟,2:小时,3:天)
page_size int 每页数量,取值范围1-99(默认:50)
    {
        "data": [{
            "staff_id": "11532",
            "approve_type_id": "1086",
            "start_time": "1451361060",
            "end_time": "1451361060",
            "create_time": "1451361060",
            "duration": "0",
            "status": "1",
            "we_name": "李吉鑫",
            "approve_type_name": "异常",
            "we_userid": "lijixin"
        }],
        "errno": 0,
        "errmsg": ""
    }
参数 说明
staff_id 员工id
we_userid 员工账号
we_name 员工姓名
start_time 申请开始时间
end_time 申请结束时间
create_time 申请时间
duration 时间长
status 申请状态 1已同意2已拒绝,3工资核减,4已退回
approve_type_name 申请类型名称
approve_type_id 申请类型id

考勤机写入员工

把平台已有员工写人指定考勤机

https://qy.bangongyi.com/attend/api/device/staff?ticket=<ticket>

POST/GET

参数 类型 必须 说明
sn varchar 考勤机SN码
check_ids varchar 考勤机工号 多个英文逗号隔开 例如(526559,526560,526561)
type varchar 写入信息 1 指纹 11 ID卡 12 人脸 写入信息用英文逗号拼接例如(1,12,11)
    {
        "errno": 0,
        "errmsg": "命令发送成功,请稍后查看结果。"
    }
参数 说明
errno 执行状态 0 成功 全局返回码
errmsg 执行结果说明

获取考勤规则及考勤机信息

获取考勤规则及其考勤机信息

https://qy.bangongyi.com/attend/api/device/rule?ticket=<ticket>

GET

    {
        "data": [
            {
                "id": "163",
                "title": "考勤规则名称",
                "devices": [
                    {
                        "id": "16",
                        "sn": "0000000001",
                        "title": "打卡方式名称"
                    }
                ]
            },
            {
                "id": "168",
                "title": "考勤规则名称",
                "devices": [
                    {
                        "id": "16",
                        "sn": "0000000001",
                        "title": "打卡方式名称"
                    }
                ]
            }
        ],
        "errno": 0,
        "errmsg": ""
    }
参数 说明
errno 执行状态 0 成功 全局返回码
errmsg 执行结果说明
data 结果数组
sn 考勤机SN码
devices.id 考勤机关联id

获取考勤机对应的员工

获取考勤机对应的员工 一次最多获取1000条,获取更多传last_id

https://qy.bangongyi.com/attend/api/device/staff-list?ticket=<ticket>

GET

参数 类型 必须 说明
sn varchar 与device_id二选1 考勤机SN码
device_id int 与sn二选1 考勤机关联id
last_id int 获取更多时使用,从上次结果中获取
    {
        "errno": 0,
        "data": {
            "last_id": "526607",
            "list": [
                {
                    "id": "525836",
                    "we_avatar": "",
                    "we_department": "1",
                    "we_name": "胡佩瑶",
                    "we_position": "",
                    "we_userid": "525727_attend",
                    "attend_rule_id": "162",
                    "check_id": "525727"
                },
                {
                    "id": "525883",
                    "we_avatar": "",
                    "we_department": "1",
                    "we_name": "于谦",
                    "we_position": "",
                    "we_userid": "100002_attend",
                    "attend_rule_id": "162",
                    "check_id": "100002"
                },
                {
                    "id": "526559",
                    "we_avatar": "",
                    "we_department": "6",
                    "we_name": "拉拉拉",
                    "we_position": "对的d",
                    "we_userid": "001",
                    "attend_rule_id": "162",
                    "check_id": "526559"
                },
                {
                    "id": "526607",
                    "we_avatar": "",
                    "we_department": "175",
                    "we_name": "毛杰",
                    "we_position": "",
                    "we_userid": "002036",
                    "attend_rule_id": "162",
                    "check_id": "526607"
                }
            ]
        },
        "errmsg": ""
    }
参数 说明
errno 执行状态 0 成功 全局返回码
errmsg 执行结果说明
last_id 获取更多时使用
we_department 员工部门ID
we_avatar 员工头像
we_name 员工姓名
we_position 员工职位
we_userid 员工帐号
check_id 员工考勤机工号

删除考勤机对应的员工

生成一条删除考勤机员工的命令,考勤机将根据该命令执行删除操作

https://qy.bangongyi.com/attend/api/device/staff-del?ticket=<ticket>

POST

参数 类型 必须 说明
sn varchar 考勤机SN码
check_id int 员工考勤机工号
    {
        "errno": 0,
        "errmsg": "删除考勤机员工命令发送成功"
    }
参数 说明
errno 执行状态 0 成功 全局返回码
errmsg 执行结果说明

考勤打卡补签

补签打卡记录可按部门或员工补签

POST https://qy.bangongyi.com/attend/api/approve/check?ticket=<ticket>

参数 类型 必须 说明
department_ids varchar or array 部门ID数组或','连接的部门ID字符串 例: 121,3222,4445 获取部门列表
we_userids varchar or array 员工帐号数组或','连接的员工帐号字符串 获取成员列表
staff_ids varchar or array 员工ID数组或','连接的员工ID字符串 获取成员列表
datetime varchar 补签打卡时间(2016-05-05 09:00:00)
reason varchar 补签原因
    {
        "errno": 0,
        "errmsg": "考勤补签成功"
    }

追加导入假期时间

追加导入剩余年假/剩余调休

POST https://qy.bangongyi.com/attend/api/approvelog?ticket=<ticket>

参数 类型 必须 说明
type varchar 假期类型 例如:年假或调休
we_userids varchar or array 员工帐号数组或','连接的员工帐号字符串 we_userids或staff_ids 必须传其中一个获取成员列表
staff_ids varchar or array 员工ID数组或','连接的员工ID字符串 获取成员列表
deadline int 10位的时间戳 不传默认永久有效
time int 导入假期时长 单位分钟
reason varchar 导入假期原因
    {
        "errno": 0,
        "errmsg": "导入成功"
    }