功能说明:表单流程数据推送接口,根据参数不同可以发起流程/任务或者直接归档。
{
"ccList":
[
"相关人账号"
],
"creator":"提单人通讯录账号",
"fieldMap":
{
"fo下拉框字段id":"其他:其他选项说明",
"fo两级下拉框字段id":"选项1:二级选项1",
"fo单行文字字段id":"单行文字",
"fo单项选择字段id":"选项1",
"fo图片字段id":
[
"图片相对路径"
],
"fo地理位置字段id":
{
"latitude":23.127874,
"longitude":113.359924,
"value":"地理位置名称"
},
"fo多行文字id":"多行文字\n多行文字",
"fo多项选择字段id":
[
"选项1",
"选项2"
],
"fo子表单字段id":
[
{
"fo子字段单行文字字段id":"子字段单行文字",
"fo子字段图片字段id":
[
"图片相对路径"
],
"fo子字段数字2字段id":"2",
"fo子字段数字字段id":"998.00",
"fo子字段计算式字段id":"1996.00"
},
{
"fo子字段单行文字字段id":"子字段单行文字",
"fo子字段数字2字段id":"1",
"fo子字段数字字段id":"8999.00",
"fo子字段计算式字段id":"8999.00"
}
],
"fo手机号码字段id":"13700000000",
"fo数字字段id":"8.00",
"fo数据源字段id":
[
{
"id":"编号",
"name":"名称",
"parentid":"关联编号"
}
],
"fo日期字段id":"2022-06-07",
"fo日期时间字段id":"2022-06-12 12:13",
"fo时间字段id":"18:30",
"fo电话字段id":"020-00000000",
"fo省市区字段id":"广东省:广州市:天河区",
"fo统计字段id":"10995.00",
"fo表单关联字段id":
[
{
"fo表单关联子字段id":"表单关联子字段",
"id":"work底单明细id"
}
],
"fo计算式字段id":"11003.00",
"fo评分字段id":"9",
"fo通讯录成员字段id":
[
"账号1",
"账号2"
],
"fo邮箱字段id":"xxx@your-domain.com"
},
"instanceTitle":"工单明细标题",
"isAnonymous":1,
"toList":
[
"负责人账号"
]
}
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
|
token |
用于验证 |
String |
是 |
|
|
corpId |
公司唯一标识 |
String |
是 |
|
|
id |
表单id |
String |
是 |
|
|
isFlow |
是否发起流程/任务 |
String |
是 |
0:直接归档,1:提单人操作提交,2:自动提交 |
| data | 明细数据json(数组) | FormDataPushVO[] | 是 |
|
| 参数名 | 释义 | 类型 | 是否必须 | 描述 |
|---|---|---|---|---|
|
instanceTitle |
表单数据标题 |
String |
否 |
|
|
createTime |
创建时间 |
String |
否 |
yyyy-MM-dd hh:mm:ss,为空时使用系统当前时间 |
|
toList |
负责人(账号)列表 |
Array |
否 |
[“admin1”,”admin2”] 表单不支持负责人或需要发起流程/任务,此参数无效 |
|
ccList |
相关人(账号)列表 |
Array |
否 |
[“admin1”,”admin2”] 表单不支持相关人,此参数无效 |
|
creator |
提单人或流程/任务发起人(账号) |
String |
是 |
|
|
fieldMap |
数据json |
JSON
|
否 |
{ 字段id1:值, 字段id2:值, …. 子表单:[{ 子表单子段1:值, 子表单子段2:值 … }] } 值格式参考附录4和示例 |
| isAnonymous | 是否匿名提交 | Integer | 否 | 开启匿名提交时生效,0:否,1:是 |
FormDataPushVO vo = new FormDataPushVO();
// 提单时间,不填则用系统当前时间
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// vo.setCreateTime(simpleDateFormat.format(new Date()));
// 提单人账号
vo.setCreator("提单人通讯录账号");
// 工单标题
vo.setInstanceTitle("工单明细标题");
// 相关人账号
vo.setCcList(new String[]{"相关人账号"});
// 负责人账号
vo.setToList(new String[]{"负责人账号"});
// 匿名提交
vo.setIsAnonymous(1);
// 字段数据
Map<String,Object> fieldMap = new HashMap<String,Object>();
fieldMap.put("fo单行文字字段id", "单行文字");
fieldMap.put("fo手机号码字段id", "13700000000");
fieldMap.put("fo电话字段id", "020-00000000");
fieldMap.put("fo邮箱字段id", "xxx@your-domain.com");
fieldMap.put("fo单项选择字段id", "选项1");
fieldMap.put("fo多项选择字段id", new String[]{"选项1","选项2"});
fieldMap.put("fo下拉框字段id", "其他:其他选项说明");
fieldMap.put("fo两级下拉框字段id", "选项1:二级选项1");
GeoFieldVO gf = new GeoFieldVO();
gf.setLatitude(23.127874);
gf.setLongitude(113.359926);
gf.setValue("地理位置名称");
fieldMap.put("fo地理位置字段id", gf);
fieldMap.put("fo省市区字段id", "广东省:广州市:天河区");
fieldMap.put("fo多行文字id", "多行文字\n多行文字");
fieldMap.put("fo日期字段id", "2022-06-07");
fieldMap.put("fo时间字段id", "18:30");
fieldMap.put("fo日期时间字段id", "2022-06-12 12:13");
fieldMap.put("fo评分字段id", "9");
fieldMap.put("fo图片字段id",new String[]{"/"});
Map<String,Object> item = new HashMap<String,Object>();
item.put("fo子字段图片字段id", new String[]{"图片相对路径"});
item.put("fo子字段单行文字字段id", "子字段单行文字");
item.put("fo子字段数字字段id", "998.00");
item.put("fo子字段数字2字段id", "2");
item.put("fo子字段计算式字段id", "1996.00");
Map<String,Object> item2 = new HashMap<String,Object>();
item.put("fo子字段图片字段id", new String[]{"图片相对路径"});
item2.put("fo子字段单行文字字段id", "子字段单行文字");
item2.put("fo子字段数字字段id", "8999.00");
item2.put("fo子字段数字2字段id", "1");
item2.put("fo子字段计算式字段id", "8999.00");
fieldMap.put("fo子表单字段id", new Map[]{item,item2} );
fieldMap.put("fo统计字段id", "10995.00");
fieldMap.put("fo数字字段id", "8.00");
fieldMap.put("fo计算式字段id", "11003.00");
Map<String,Object> formRef = new HashMap<String,Object>();
formRef.put("id", "work底单明细id");
formRef.put("fo表单关联子字段id", "表单关联子字段");
fieldMap.put("fo表单关联字段id", new Map[]{formRef} );
Map<String,Object> dsMap = new HashMap<String,Object>();
dsMap.put("id", "编号");
dsMap.put("name", "名称");
dsMap.put("parentid", "关联编号");
fieldMap.put("fo数据源字段id", new Map[]{dsMap} );
fieldMap.put("fo通讯录成员字段id", new String[]{"账号1","账号2"} );
// 字段数据
vo.setFieldMap(fieldMap);
System.out.println(JSONUtil.objectToString(vo));
FormApi api = QwSdkUtil.getInter(FormApi.class);
// 调用接口
ApiFormPushResult re = api.pushFormData(QwSdkUtil.getCacheToken(),
"form表单id",1, new FormDataPushVO[]{vo});
System.out.println(JSONUtil.objectToString(re));
{
"code":"0",
"data":
{
"errorMsgList":
[
"提单人账号不存在于通讯录中",
""
],
"ids":
[
"",
"6de49977f9514e8c9ddbf527a2de130d"
]
},
"desc":"成功"
}
|
参数 |
说明 |
|---|---|
|
errorMsgList |
该行数据导入失败的原因,空白表示导入成功。 |
|
ids |
该行数据导入成功后分配的id,空白表示导入失败。 |