dingtalk.oapi.attendance.approve.duration.calculate (根据考勤排班计算时长)

根据考勤系统的排班情况预计算员工加班,出差,请假的时长信息

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
userid String 必须 dd_dd 员工的user_id
biz_type Number 必须 3 审批单类型1:加班,2:出差,3:请假
from_time String 必须 2019-08-15 开始时间,支持的时间格式 2019-08-15/2019-08-15 AM/2019-08-15 12:43。开始时间不能早于当前时间前31天
to_time String 必须 2019-08-17 结束时间,支持的时间格式 2019-08-15/2019-08-15 AM/2019-08-15 12:43。结束时间减去开始时间的天数不能超过31天。biz_type为1时结束时间减去开始时间不能超过1天
duration_unit String 必须 day 时长单位,支持的day,halfDay,hour,biz_type为1时仅支持hour。时间格式必须与时长单位对应,2019-08-15对应day,2019-08-15 AM对应halfDay,2019-08-15 12:43对应hour
calculate_model Number 必须 1 计算方法,0:按自然日计算,1:按工作日计算

响应参数

名称 类型 示例值 描述
errcode Number 0 0代表成功,其他代表失败
errmsg String 872995737 错误信息
result TopDurationVo demo demo
  • └ duration
  • String
  • 2.0
  • 总时长
  • duration_details
  • TopDayDurationVo []
  • demo
  • demo
  • └ date
  • String
  • 2019-08-15
  • 日期
  • └ duration
  • String
  • 1.0
  • 每日时长

请求示例

  • JAVA
  • .NET
  • PHP
  • CURL
  • Python
  • C/C++
  • NodeJS
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/attendance/approve/duration/calculate");
OapiAttendanceApproveDurationCalculateRequest req = new OapiAttendanceApproveDurationCalculateRequest();
req.setUserid("dd_dd");
req.setBizType(3L);
req.setFromTime("2019-08-15");
req.setToTime("2019-08-17");
req.setDurationUnit("day");
req.setCalculateModel(1L);
OapiAttendanceApproveDurationCalculateResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());

响应示例

  • JSON示例
{
    "errcode":0,
    "errmsg":"872995737",
    "result":{
        "duration":"2.0",
        "duration_details":[
            {
                    "date":"2019-08-15",
                    "duration":"1.0"
            }
        ]
    }
}

异常示例

  • JSON示例
{
	"errcode":88,
	"errmsg":"ding talk error"
}

错误码解释

错误码 错误描述 解决方案

API工具

如何获得此API

FAQ

返回
顶部