/// <summary> /// 批量获取审批实例id /// </summary> /// <param name="accessToken">accessToken</param> /// <param name="processCode">审批流的唯一码</param> /// <param name="useridlist">发起人用户id列表</param> /// <param name="starttime">查询开始时间</param> /// <returns></returns> public static List <string> GetListIds(string accessToken, string processCode, string useridlist, DateTime starttime) { try { DefaultDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/processinstance/listids"); OapiProcessinstanceListidsRequest request = new OapiProcessinstanceListidsRequest(); request.ProcessCode = processCode; request.StartTime = DingTalkUtils.DateTimeToTimeStamp(starttime); //开始时间。Unix时间戳 request.EndTime = DingTalkUtils.DateTimeToTimeStamp(DateTime.Now); //结束时间,默认取当前时间。Unix时间戳 request.Size = 10L; //分页参数,每页大小,最多传10,默认值:10 request.Cursor = 0L; //分页查询的游标,最开始传0,后续传返回参数中的next_cursor值,默认值:0 request.UseridList = useridlist; //发起人用户id列表,用逗号分隔,最大列表长度:10 OapiProcessinstanceListidsResponse response = client.Execute(request, accessToken); if (response.Errcode == 0) { return(response.Result.List); } else { throw new Exception(response.Errcode.ToString()); } } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// 批量获取审批实例id 企业使用此接口可获取某个审批的实例id列表。企业可以再根据审批实例id,调用获取审批实例详情接口,获取实例详情信息。 /// </summary> /// <param name="accessToken"></param> /// <param name="processCode">流程模板唯一标识,可在OA管理后台编辑审批表单部分查询</param> /// <param name="startTime">开始时间。Unix时间戳</param> /// <param name="endTime">结束时间,默认取当前时间。Unix时间戳</param> /// <param name="size">分页参数,每页大小,最多传20,默认值:20</param> /// <param name="cursor">分页查询的游标,最开始传0,后续传返回参数中的next_cursor值,默认值:0</param> /// <param name="userIds">发起人用户id列表,用逗号分隔,最大列表长度:20</param> /// <returns></returns> public OapiProcessinstanceListidsResponse ListIds(string accessToken, string processCode, long startTime, long endTime, long size = 20, long cursor = 0, string userIds = "") { IDingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/processinstance/listids"); OapiProcessinstanceListidsRequest req = new OapiProcessinstanceListidsRequest(); req.ProcessCode = processCode; req.StartTime = startTime; req.EndTime = endTime; req.Size = size; req.Cursor = cursor; req.UseridList = userIds; OapiProcessinstanceListidsResponse response = client.Execute(req, accessToken); return(response); }