Ejemplo n.º 1
0
 /// <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);
     }
 }
Ejemplo n.º 2
0
        /// <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);
        }