功能说明:根据获取表单数据列表得到对应表单的对应数据,配合表单字段参数的过滤筛选获取所需表单数据。
请求方式:POST(HTTPS)
请求地址:https://qwif.do1.com.cn/qwcgi/api/apiForm/getFormDetails.do?token=token&corpId=corpId&id=id
{
"approvers":"当前负责人账号",
"closePersonName":"最后处理人账号",
"currentNode":"节点1|节点2",
"customList":
[
{
"id":"fo单行文字字段id",
"value":"单行文字"
},
{
"id":"fo数字字段id",
"max":"100",
"min":"-100"
},
{
"id":"fo日期字段id",
"max":"2022-07-09",
"min":"2022-06-01"
},
{
"id":"fo二级下拉字段id",
"value":"选项1:二级选项1|选项1:二级选项1"
},
{
"id":"fo单项选择字段id",
"value":"选项1|选项2"
},
{
"id":"fo通讯录成员字段id",
"value":"账号1|账号2"
},
{
"id":"fo部门字段id",
"value":"部门全称1|部门全称2"
}
],
"dataSource":1,
"formStartTime":"2022-06-09 17:20:37_2022-06-09 17:20:37",
"formStopTime":"2021-08-05 00:00:00_2022-06-09 17:08:19",
"instanceTitle":"标题搜索",
"personName":"提单人账号",
"relative":"负责人账号",
"versions":"defn版本id"
}
|
参数名 |
释义 |
类型 |
是否必须 |
备注 |
|---|---|---|---|---|
|
token |
用于验证 |
String |
是 |
|
|
corpId |
公司唯一标识 |
String |
是 |
|
|
id |
form表单id |
String |
是 |
|
| page | 页码 |
Integer |
否 |
|
|
pageSize |
分页大小 |
Integer |
否 | 默认10,最大1000 |
|
sortVO |
排序配置 |
SortVO |
否 |
|
|
detailSearchVO |
数据筛选配置 |
DetailSearchVO |
否 |
格式参考请求包体 |
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| draft | 是否查询导入并发起的草稿 | String | 否 | 非空表示是;(返回数据包括:导入/API推送并手动发起(提单人未再次提交)、导入/API推送并自动发起(但发起失败停留在草稿箱,如:流程不满足自动提交)) |
| instanceTitle | 明细标题 | String | 否 | 模糊查询 |
| personName | 提单人账号 | String | 否 | 精确查询,多个用英文竖线隔开 |
| openId | openId | String | 否 | 精确查询,微信授权id |
| relative | 负责人userId | String | 否 | 精确查询 |
| approvers | 当前负责人userId | String | 否 | 精确查询 |
| currentNode | 当前节点 | String | 否 | 精确查询 |
| departmentName | 部门名称 | String | 否 | 精确查询 |
| departmentNames | 部门名称 | String | 否 | 精确查询,多个用英文竖线隔开 |
| formStartTime | 提单时间 | String | 否 | 开始时间_结束时间 |
| closePersonName | 最后处理人userId | String | 否 | 精确查询 |
| formStopTime | 最后处理时间 | String | 否 | 开始时间_结束时间 |
| versions | 版本id | String | 否 | defn开头,多个definitionId用分号";"分隔 |
| dataSource | 数据来源 | Integer | 否 | 1:填报;2:导入;3:导入并发起流程;4:接口推送;5:接口推送并发起流程; |
| isOver | 审批状态 | String | 否 | -1:关闭;0:退审;1:全部审核通过;2:流转中,多个用英文竖线"|"隔开 |
| isAnonymous | 是否排除匿名 | String | 否 | 0:否,1:是;注意:传0(只返回匿名数据),传1(仅返回非匿名数据) |
| transferType |
是否已转入内部流程 |
Integer | 否 | 0:代表未转入;1:代表已转入 |
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| fieldName | 字段名称 | String | 否 | personName:提单人姓名;departmentName:提单人部门名称;instanceTitle:标题;createaTime:提单时间;closeTime:最后更新时间; |
| sort | 升降序 | String | 否 | asc:升序;desc:降序; |
FormApi api = QwSdkUtil.getInter(FormApi.class);
// 调用接口
// 排序 personName:提单人姓名;departmentName:提单人部门名称;instanceTitle:标题;createaTime:提单时间;closeTime:最后更新时间;
SortVO sortVO = new SortVO("createaTime","desc");
DetailSearchVO detailSearchVO = new DetailSearchVO();
// 限定提单时间区间
detailSearchVO.setFormStartTime("2022-06-09 17:20:37_2022-06-09 17:20:37");
// 标题分词查询
detailSearchVO.setInstanceTitle("标题搜索");
// 过滤提单人账号
detailSearchVO.setPersonName("提单人账号");
// 过滤负责人账号
detailSearchVO.setRelative("负责人账号");
// 过滤当前负责人账号
detailSearchVO.setApprovers("当前负责人账号");
// 当前节点 多个用竖线隔开
detailSearchVO.setCurrentNode("节点1|节点2");
// 最后处理人
detailSearchVO.setClosePersonName("最后处理人账号");
// 限定最后处理时间
detailSearchVO.setFormStopTime("2021-08-05 00:00:00_2022-06-09 17:08:19");
// 版本id
detailSearchVO.setVersions("defn版本id");
// 数据来源
detailSearchVO.setDataSource(1);
// 更多条件
List<DetailSearchVO.CustomField> customList = new ArrayList<DetailSearchVO.CustomField>();
// 文本
customList.add(new DetailSearchVO.CustomField("fo单行文字字段id",null,"单行文字",null,null));
// 数字字段
customList.add(new DetailSearchVO.CustomField("fo数字字段id",null,null,"-100","100"));
// 日期字段
customList.add(new DetailSearchVO.CustomField("fo日期字段id",null,null,"2022-06-01","2022-07-09"));
// 二级下拉
customList.add(new DetailSearchVO.CustomField("fo二级下拉字段id",null,"选项1:二级选项1|选项1:二级选项1",null,null));
// 单项选择
customList.add(new DetailSearchVO.CustomField("fo单项选择字段id",null,"选项1|选项2",null,null));
// 通讯录成员
customList.add(new DetailSearchVO.CustomField("fo通讯录成员字段id",null,"账号1|账号2",null,null));
// 部门
customList.add(new DetailSearchVO.CustomField("fo部门字段id",null,"部门全称1|部门全称2",null,null));
detailSearchVO.setCustomList(customList);
System.out.println(JSONUtil.stringify(detailSearchVO));
GetFormDetailsResultVOV2 vo = api.getFormDetailsV2(QwSdkUtil.getCacheToken(),
"form表单id",
1,
10,
sortVO,
detailSearchVO);
System.out.println(JSONUtil.stringify(vo));
{
"code":"0",
"data":
{
"currPage":1,
"formName":"表单名称",
"maxPage":1,
"pageSize":10,
"pager":
[
{
"approvers":"当前负责人列表",
"closePerson":"最后处理人userId",
"closeTime":"2022-06-08 10:25:56",
"commentNum":0,
"createaTime":"2022-06-08 10:25:52",
"creator":"提单人userId",
"currentNode":"节点1",
"currentNodeId":"当前节点",
"data":
{
"fo两级下拉框字段id":"选项1:二级选项1",
"fo单行文字字段id":"单行文字",
"fo单项选择字段id":"其他:其他选项",
"fo图片字段id":
[
"图片相对路径"
],
"fo地理位置字段id":
{
"latitude":39.916527,
"longitude":116.397125,
"value":"北京市"
},
"fo多行文字id":"多行文本",
"fo多项选择字段id":
[
"其他:其他选项"
],
"fo子表单字段id":
[
{
"fo子字段单行文字字段id":"子字段单行文字",
"fo子字段图片字段id":
[
"图片相对路径"
],
"fo子字段数字2字段id":"2",
"fo子字段数字字段id":"1.00",
"fo子字段计算式字段id":"2.00"
}
],
"fo手机号码字段id":"13000000000",
"fo数字字段id":"6.00",
"fo数据源字段id":
[
{
"id":110000,
"name":"北京市",
"parentid":100000
},
{
"id":110100,
"name":"北京市",
"parentid":110000
},
{
"id":110101,
"name":"东城区",
"parentid":110100
}
],
"fo日期字段id":"2022-06-08",
"fo日期时间字段id":"2022-06-08 10:21",
"fo时间字段id":"10:21",
"fo流水号字段id":"0007",
"fo生成二维码字段id":"二维码详情地址",
"fo电话字段id":"02000000000",
"fo省市区字段id":"北京市:北京市:东城区",
"fo统计字段id":"2.00",
"fo计算式字段id":"8.00",
"fo评分字段id":"9",
"fo通讯录成员字段id":
[
"userId_姓名"
],
"fo邮箱字段id":"chenhandong@do1.com.cn",
"fo部门字段id":
[
"部门id_部门名称"
]
},
"definitionId":"defn版本id",
"deptFullName":"提单人部门全称",
"id":"workd工单明细id",
"instanceTitle":"明细标题",
"isAlreadyAdd":0,
"isAnonymous":1,
"isClose":0,
"isover":"2",
"orderVersion":0,
"personName":"匿名",
"status":1,
"versions":0,
"wxUserId":"不可见"
}
],
"totalRows":2
},
"desc":"成功"
}
|
参数名 |
释义 |
类型 |
是否必须 |
备注 |
|---|---|---|---|---|
|
formName |
表单名称 |
String |
是 |
|
|
maxPage |
最大页码 |
Integer |
是 |
|
|
currPage |
当前页码 |
Integer |
是 |
与请求参数中的page对应 |
|
totalRows |
总记录数 |
Integer |
是 |
|
|
pageSize |
分页大小 |
Integer |
是 |
|
|
pager |
分页数据 |
TBFormWorkOrderVO[] |
否 |
|
TBFormWorkOrderVO类型说明:
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
| id |
work工单明细id |
String | 否 |
|
| definitionId |
defn表单版本id |
String | 否 |
|
| status | 提交状态 | Integer | 否 | 0:草稿,1:已提交 |
| creator | 提单人userId | String | 否 | |
| createaTime | 提单时间 | String | 否 | yyyy-MM-dd HH:mm:ss |
| closeTime | 最后处理时间 | String | 否 | yyyy-MM-dd HH:mm:ss |
| versions | 版本号 | Integer | 否 | |
| isover | 状态 | String | 否 | -1:关闭;0:退审;1:全部审核通过;2:流转中 |
| instanceTitle | 明细标题 | String | 否 | |
| deptFullName | 提单人部门名称 | String | 否 | |
| approvers | 当前处理人 | String | 否 | |
| currentNode | 当前节点名称 | String | 否 | 并行流程处理中处于多个节点中时,多个用英文逗号隔开 |
| currentNodeId | 当前节点id | String | 否 | 并行流程处理中处于多个节点中时,多个用英文逗号隔开 |
| isAnonymous | 提单人是否匿名提交 | Integer | 否 | |
| wxNickname | 微信昵称,外部单授权获取 | String | 否 | |
| openId | 公众号openid,外部单授权获取 | String | 否 | |
| orderVersion | 工单版本号 | Integer | 否 | 每修改一次数据,该版本号自增1 |
| isFree | 流程类型 | String | 否 | 1:表示自由流程 2:表示固定流程 3:表示分支流程 |
| data | 自定义字段数据 | String | 否 | {"字段id":"字段值"} |