明道企业授权开放接口文档

明道企业授权开放接口文档


创建申请

<p><strong>简要描述:</strong> </p> <ul> <li>创建申请</li> </ul> <p><strong>请求URL:</strong> </p> <ul> <li><code>https://approval.mingdao.com/api/addReq</code></li> </ul> <p><strong>请求方式:</strong></p> <ul> <li>POST </li> </ul> <p><strong>参数:</strong> </p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必选</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">无</td> <td style="text-align: left;">是</td> <td style="text-align: left;">body</td> <td>审批申请信息(需用payload方式提交数据,需先获取审批表单详情)([获取审批表单详情点击这里](<a href="https://www.showdoc.cc/mingdao?page_id=337099714086518">https://www.showdoc.cc/mingdao?page_id=337099714086518</a> &quot;获取审批表单详情请点击这里&quot;))</td> </tr> <tr> <td style="text-align: left;">accountId</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>创建人编号</td> </tr> <tr> <td style="text-align: left;">appKey</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>AppKey</td> </tr> <tr> <td style="text-align: left;">sign</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>签名信息([签名算法请点击这里](<a href="https://www.showdoc.cc/mingdao?page_id=15539798">https://www.showdoc.cc/mingdao?page_id=15539798</a> &quot;签名算法请点击这里&quot;))</td> </tr> <tr> <td style="text-align: left;">timestamp</td> <td style="text-align: left;">是</td> <td style="text-align: left;">long</td> <td>Unix时间戳(与签名所用时间戳一致,精度为毫秒)</td> </tr> </tbody> </table> <p><strong>提交数据示例(JSON格式)</strong></p> <pre><code> { &amp;quot;createBy&amp;quot;: &amp;quot;string&amp;quot;, &amp;quot;data&amp;quot;: { RFormData }, &amp;quot;formId&amp;quot;: &amp;quot;string&amp;quot;, &amp;quot;reqTitle&amp;quot;: &amp;quot;string&amp;quot;, &amp;quot;setTop&amp;quot;: true, &amp;quot;start&amp;quot;: true }</code></pre> <p><strong>提交数据示例(RFormData格式)</strong></p> <pre><code> { &amp;quot;reqTitle&amp;quot;: &amp;quot;母校(我是用户姓名)发起的供应商支付方式修改&amp;quot;, &amp;quot;formId&amp;quot;: &amp;quot;59142dcf68e5115922e96aa6&amp;quot;, &amp;quot;data&amp;quot;: { &amp;quot;controls&amp;quot;: [ { &amp;quot;5a3a386429a1e11f74900cc9&amp;quot;: &amp;quot;母校(我是用户姓名)&amp;quot;//控件Id:值 }, { &amp;quot;5a3a386429a1e11f74900cca&amp;quot;: &amp;quot;2018-04-25 15:47:23&amp;quot; }, { &amp;quot;5a3a386429a1e11f74900cd2&amp;quot;: 1 } ], &amp;quot;formControls&amp;quot;: [ { &amp;quot;5a41eac429a1e10798fdcb20&amp;quot;: [//明细表Id [//明细表第1条数据 { &amp;quot;5a41eac429a1e10798fdcb21&amp;quot;: &amp;quot;100&amp;quot;//控件Id:值 }, { &amp;quot;5a41eac429a1e10798fdcb22&amp;quot;: &amp;quot;test&amp;quot; }, { &amp;quot;5a41eac429a1e10798fdcb23&amp;quot;: &amp;quot;备注&amp;quot; } ], [//明细表第2条数据 { &amp;quot;5a41eac429a1e10798fdcb21&amp;quot;: &amp;quot;100&amp;quot; }, { &amp;quot;5a41eac429a1e10798fdcb22&amp;quot;: &amp;quot;test&amp;quot; }, { &amp;quot;5a41eac429a1e10798fdcb23&amp;quot;: &amp;quot;备注&amp;quot; } ] ] } ] } }</code></pre> <p><strong>提交参数说明</strong> </p> <p><strong>apiReqInfo</strong> </p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">createBy</td> <td style="text-align: left;">string</td> <td>创建人ID(填accountId)</td> </tr> <tr> <td style="text-align: left;">data</td> <td style="text-align: left;">RFormData</td> <td>表单数据</td> </tr> <tr> <td style="text-align: left;">formId</td> <td style="text-align: left;">string</td> <td>表单ID</td> </tr> <tr> <td style="text-align: left;">reqTitle</td> <td style="text-align: left;">string</td> <td>申请标题</td> </tr> <tr> <td style="text-align: left;">setTop</td> <td style="text-align: left;">boolean</td> <td>是否置顶在审批人的待审批列表中</td> </tr> </tbody> </table> <p><strong>RFormData</strong> </p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">controls</td> <td style="text-align: left;">Array[Map&lt;string,object&gt;]</td> <td>控件数据,格式:[{控件Id:值},{控件Id:值}...]</td> </tr> <tr> <td style="text-align: left;">formControls</td> <td style="text-align: left;">Array[Map&lt;string,List&lt;List&lt;Map&lt;string,object&gt;&gt;&gt;&gt;]</td> <td>明细控件值,格式:[{明细表Id:[[{控件Id:值},{控件Id:值}...],[{控件Id:值},{控件Id:值}...]...]}]</td> </tr> </tbody> </table> <p><strong>返回数据示例(JSON格式)</strong></p> <pre><code>{ &amp;quot;reqId&amp;quot;:&amp;quot;string&amp;quot; }</code></pre> <p><strong>返回参数说明</strong> </p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">reqId</td> <td style="text-align: left;">string</td> <td>审批申请ID</td> </tr> </tbody> </table> <p><strong>DEMO</strong></p> <pre><code> //获取审批表单详情 String url = host + &amp;quot;/api/getFormDetailData/&amp;quot; + formId + &amp;quot;?accountId=&amp;quot; + accountId + &amp;quot;&amp;amp;appKey=&amp;quot; + appKey + &amp;quot;&amp;amp;timestamp=&amp;quot; + m + &amp;quot;&amp;amp;sign=&amp;quot; + sign; OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url(url).get().build(); Response response = client.newCall(request).execute(); if (response.isSuccessful()) { Map&amp;lt;String, Object&amp;gt; postMap = new HashMap&amp;lt;&amp;gt;(); List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt; postControls = new ArrayList&amp;lt;&amp;gt;();//主表数据 List&amp;lt;Map&amp;lt;Object, List&amp;lt;List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; postFormControls = new ArrayList&amp;lt;&amp;gt;();//明细表数据 String string = response.body().string(); Map apiFormListDtoList = new Gson().fromJson(string, Map.class); apiFormListDtoList.isEmpty(); List&amp;lt;Map&amp;gt; controls = (List&amp;lt;Map&amp;gt;) apiFormListDtoList.get(&amp;quot;controls&amp;quot;); for (Map control : controls) { Map postControl = new HashMap&amp;lt;&amp;gt;(); postControl.put(control.get(&amp;quot;controlId&amp;quot;), control.get(&amp;quot;value&amp;quot;));// TODO 主表数据 value可改为需要的值 postControls.add(postControl); } List&amp;lt;Map&amp;gt; formControls = (List&amp;lt;Map&amp;gt;) apiFormListDtoList.get(&amp;quot;formControls&amp;quot;); for (Map formControlMap : formControls) { Map&amp;lt;Object, List&amp;lt;List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt;&amp;gt;&amp;gt; postFormControlMap = new HashMap&amp;lt;&amp;gt;();//明细表 List&amp;lt;List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt;&amp;gt; postFormControlRowList = new ArrayList&amp;lt;&amp;gt;();//明细表行数据 List&amp;lt;Map&amp;gt; formControlList = (List&amp;lt;Map&amp;gt;) formControlMap.get(&amp;quot;tempControls&amp;quot;); List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt; postFormControlList = new ArrayList&amp;lt;&amp;gt;();// 第1行数据 for (Map formControl : formControlList) { Map postFormControl = new HashMap&amp;lt;&amp;gt;(); postFormControl.put(formControl.get(&amp;quot;controlId&amp;quot;), formControl.get(&amp;quot;value&amp;quot;));//TODO 第1行数据 value可改为需要的值 postFormControlList.add(postFormControl); } List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt; postFormControlList2 = new ArrayList&amp;lt;&amp;gt;();// 第2行数据 for (Map formControl : formControlList) { Map postFormControl = new HashMap&amp;lt;&amp;gt;(); postFormControl.put(formControl.get(&amp;quot;controlId&amp;quot;), formControl.get(&amp;quot;value&amp;quot;));//TODO 第2行数据 value可改为需要的值 postFormControlList2.add(postFormControl); } postFormControlRowList.add(postFormControlList); postFormControlMap.put(formControlMap.get(&amp;quot;formId&amp;quot;), postFormControlRowList); postFormControls.add(postFormControlMap); } Map rFormData = new HashMap(); rFormData.put(&amp;quot;controls&amp;quot;, postControls); rFormData.put(&amp;quot;formControls&amp;quot;, postFormControls); postMap.put(&amp;quot;createBy&amp;quot;, accountId);//TODO 创建人ID(填accountId) postMap.put(&amp;quot;data&amp;quot;, rFormData);//表单数据 postMap.put(&amp;quot;formId&amp;quot;, formId);//表单ID postMap.put(&amp;quot;reqTitle&amp;quot;, &amp;quot;string&amp;quot;);//TODO 申请标题 postMap.put(&amp;quot;setTop&amp;quot;, false);//是否置顶在审批人的待审批列表中 //创建申请 String url1 = host + &amp;quot;/api/addReq?accountId=&amp;quot; + accountId + &amp;quot;&amp;amp;appKey=&amp;quot; + appKey + &amp;quot;&amp;amp;timestamp=&amp;quot; + m + &amp;quot;&amp;amp;sign=&amp;quot; + sign; RequestBody body = RequestBody.create(MediaType.parse(&amp;quot;application/json; charset=utf-8&amp;quot;), new Gson().toJson(postMap)); Request request1 = new Request.Builder().url(url1).post(body).build(); Response response1 = client.newCall(request1).execute(); if (response1.isSuccessful()) { String string1 = response1.body().string(); System.out.println(string1); } else { System.out.println(response1.body().string()); } }else { System.out.println(response.body().string()); }</code></pre>

页面列表

ITEM_HTML