发送钉钉审批接口


public class dingtalkGet {
    public static String doGet(String url) throws URISyntaxException {
        String result = null;
        HttpGet request = new HttpGet(url);
        HttpClient httpClient = new DefaultHttpClient();
        try {
            HttpResponse response = httpClient.execute(request);
            if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
                result = EntityUtils.toString(response.getEntity(), "utf-8");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return result;
    }

    /**
     * 获取钉钉的accessToken
     * 
     * @param url
     * @param corpid
     * @param secret
     * @return
     * @throws URISyntaxException
     */
    public static String getAccessToken(String url, String corpid, String secret) throws URISyntaxException {
        String requestUrl = url + "?corpid=" + corpid + "&corpsecret=" + secret;
        String result = doGet(requestUrl);
        String accessToken = null;
        com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject();
        jsonObject = JSON.parseObject(result);
        String msg = (String) jsonObject.get("errmsg");
        if ("ok".equals(msg)) {
            accessToken = (String) jsonObject.get("access_token");
        }
        return accessToken;
    }

    @Test
    public static  void test(JSONArray jsonArray) {
        DingTalkClient client = new DefaultDingTalkClient("https://eco.taobao.com/router/rest");
        SmartworkBpmsProcessinstanceGetRequest  req = new SmartworkBpmsProcessinstanceGetRequest ();
        String process_instance_id ="";
        String dingtalk_smartwork_bpms_processinstance_create_response="";
        String result ="";
        for(int i=0;i             JSONObject job = jsonArray.getJSONObject(i);   // 遍历 jsonarray 数组,把每一个对象转成 json 对象
            dingtalk_smartwork_bpms_processinstance_create_response =job.getString("dingtalk_smartwork_bpms_processinstance_create_response");
        }
        JSONObject jsons = JSONObject.fromObject(dingtalk_smartwork_bpms_processinstance_create_response);  
        JSONArray jsonArrays = JSONArray.fromObject(jsons); 
        for(int j=0;j             JSONObject job = jsonArrays.getJSONObject(j);   // 遍历 jsonarray 数组,把每一个对象转成 json 对象
            result =job.getString("result");
        }
        JSONObject jsonp = JSONObject.fromObject(result);  
        JSONArray jsonArrayp = JSONArray.fromObject(jsonp);     
        for (int p = 0; p < jsonArrayp.size(); p++) {
            JSONObject job = jsonArrayp.getJSONObject(p);   // 遍历 jsonarray 数组,把每一个对象转成 json 对象
            process_instance_id =job.getString("process_instance_id");
        }
        req.setProcessInstanceId(process_instance_id);//审批流的唯一码
        SmartworkBpmsProcessinstanceGetResponse rsp = null;
        try {
            rsp = client.execute(req,getAccessToken("https://oapi.dingtalk.com/gettoken","表单编码","企业ID"));
        } catch (ApiException e) {
            e.printStackTrace();
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }
    }

你可能感兴趣的:(java)