表单操作
新增
新增普通表单
批量新增普通表单
接口信息
- 接口地址:
POST /FrontEnd/AddListData - 功能说明:按请求数组顺序新增多条普通表单数据,每个元素的处理规则与
POST /FrontEnd/AddData一致。 - Content-Type:
application/json
接口路径以服务端定义的
AddListData为准。请求体顶层必须为 JSON 数组,不能使用{ "data": [...] }包装。
请求头
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
Authorization | Header | 是 | 调用者身份凭据,传入已获取的 token。 |
UserId | Header | 是 | 调用者用户 ID,新增数据的操作人。 |
TnCode | Header | 是 | 租户编码。 |
请求体
请求体为表单数据对象数组。数组至少包含一个元素。
表单数据对象
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
objectId | string (UUID) | 否 | 业务数据 ID。未传时系统自动生成 UUID;传入时该 ID 在对应表单中不得已存在。 |
formCode | string | 是 | 主表功能编码。仅支持普通列表、流程列表、树列表和文件列表类型。 |
data | object | 否 | 主表字段数据。键为字段编码,值为字段值字符串。 |
subData | array | 否 | 子表数据集合。 |
子表数据对象 subData[]
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
subCode | string | 是 | 子表功能编码。 |
datas | array | 是 | 子表行数据集合。 |
datas 的每个元素为字段对象:键为子表字段编码,值为字段值字符串。
请求示例
不含子表
[
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
}
},
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2",
"danx": "足球"
}
}
]
含子表
[
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
},
"subData": [
{
"subCode": "865197918d",
"datas": [
{
"wenb": "子表1-标题1",
"reny": "子表1-内容1"
},
{
"wenb": "子表1-标题2",
"reny": "子表1-内容2"
}
]
}
]
},
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2",
"danx": "足球"
}
}
]
响应结果
| 参数名 | 类型 | 说明 |
|---|---|---|
Code | int | 业务状态码。成功时为 200。 |
Message | string | 错误信息;成功时为空字符串。 |
Result | boolean | 成功时为 true。 |
Status | int | 业务状态:1 表示成功,3 表示服务端错误。 |
ExceptionSeqNo | string | 异常流水号;当前实现通常为 null。 |
MessageShowType | int | 消息展示类型;当前实现通常为 null。 |
成功示例
{
"Code": 200,
"Message": "",
"ExceptionSeqNo": null,
"Result": true,
"Status": 1,
"MessageShowType": null
}
失败示例
{
"Code": 500,
"Message": "objectId[205e4ed8-db1f-40c7-9e2d-bf656d53c2cd]该数据已存在",
"ExceptionSeqNo": null,
"Result": null,
"Status": 3,
"MessageShowType": null
}
调用说明
- 请求体为空数组或
null时,接口返回错误信息:表单数据为空。 - 每条数据会依次新增;若中间某条失败,后续数据不会继续处理。
- 当前接口逐条调用新增逻辑,未提供整批事务回滚。因此,在某条失败前已经写入的数据不会自动撤销。
- 指定
objectId时,系统会校验该数据是否已存在;重复 ID 会导致本次调用失败。
cURL 示例
curl -X POST "http://{host}/FrontEnd/AddListData" -H "Content-Type: application/json" -H "Authorization: Bearer {token}" -H "UserId: {userId}" -H "TnCode: {tenantCode}" -d '[
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
}
}
]'
批量新增普通表单-绕过平台规则,直接入库
普通表单的数据批量新增接口(含子表数据)
支持版本:V3+;
接口
HttpPost:api/FrontEnd/BatchDirectAddData
请求示例(不含子表):
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
}
},
{
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2",
"danx": "羽毛球"
}
}
请求示例(含子表):
[{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
},
"subData": [{
"subCode": "865197918d",
"datas": [{
"wenb": "子表1-标题1",
"reny": "子表1-内容1"
}, {
"wenb": "子表1-标题2",
"reny": "子表1-内容2"
}]
}]
}, {
"objectId": "305e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2",
"danx": "羽毛球"
},
"subData": [{
"subCode": "865197918d",
"datas": [{
"wenb": "子表2-标题1",
"reny": "子表2-内容1"
}, {
"wenb": "子表2-标题2",
"reny": "子表2-内容2"
}]
}]
}]
更新
更新普通表单数据接口
接口信息
- 接口地址:
POST /FrontEnd/UpdateData - 功能说明:更新指定普通表单的主表数据,可同时保存子表数据。
- Content-Type:
application/json
接口路径以服务端定义的
UpdateData为准。请求体为单个 JSON 对象,不是数组。
请求头
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
Authorization | Header | 是 | 调用者身份凭据,传入已获取的 token。 |
UserId | Header | 是 | 调用者用户 ID,作为本次保存的操作人。 |
TnCode | Header | 是 | 租户编码。 |
请求体
主表数据对象
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
objectId | string (UUID) | 是 | 要更新的业务数据 ID。该记录必须已存在且未被删除。 |
formCode | string | 是 | 主表功能编码。仅支持普通列表、流程列表、树列表和文件列表类型。 |
data | object | 否 | 主表字段数据。键为字段编码,值为字段值字符串。 |
subData | array | 否 | 需要保存的子表数据集合。 |
子表数据对象 subData[]
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
subCode | string | 是 | 子表功能编码。数据源类型子表不支持通过该接口保存。 |
datas | array | 是 | 子表行数据集合。 |
datas 中的每个元素为字段对象:键为子表字段编码,值为字段值字符串。子表行可传入 objectId 指定行 ID;未传时系统自动生成 UUID。
请求示例
仅更新主表
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "更新后的标题",
"danx": "足球"
}
}
更新主表并保存子表
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "更新后的标题",
"danx": "篮球"
},
"subData": [
{
"subCode": "865197918d",
"datas": [
{
"objectId": "c83c10ea-d0dc-4d8c-a87d-bc59c27f760a",
"wenb": "子表更新行",
"reny": "子表更新内容"
},
{
"wenb": "新增子表行",
"reny": "新增子表内容"
}
]
}
]
}
响应结果
| 参数名 | 类型 | 说明 |
|---|---|---|
Code | int | 业务状态码。成功时为 200。 |
Message | string | 错误信息;成功时为空字符串。 |
Result | boolean | 成功时为 true。 |
Status | int | 业务状态:1 表示成功,3 表示服务端错误。 |
ExceptionSeqNo | string | 异常流水号;当前实现通常为 null。 |
MessageShowType | int | 消息展示类型;当前实现通常为 null。 |
成功示例
{
"Code": 200,
"Message": "",
"ExceptionSeqNo": null,
"Result": true,
"Status": 1,
"MessageShowType": null
}
失败示例
{
"Code": 500,
"Message": "objectId[205e4ed8-db1f-40c7-9e2d-bf656d53c2cd]数据不存在或已经被删除",
"ExceptionSeqNo": null,
"Result": null,
"Status": 3,
"MessageShowType": null
}
调用说明
- 未传
objectId时,接口返回错误信息:业务数据id为空。 - 主表数据不存在、已删除或
formCode不存在时,接口返回错误。 - 保存顺序为先处理传入的子表数据,再保存主表;子表保存失败时主表不会继续保存。
- 当前实现未提供主表与子表的整次请求事务回滚。发生异常前已成功保存的子表数据不会自动撤销。
- 未传
data或subData时,接口仍会执行相应主表保存流程;应只传入需要保存的字段。
cURL 示例
curl -X POST "http://{host}/FrontEnd/UpdateData" -H "Content-Type: application/json" -H "Authorization: Bearer {token}" -H "UserId: {userId}" -H "TnCode: {tenantCode}" -d '{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "更新后的标题"
}
}'
批量更新普通表单接口
接口信息
- 接口地址:
POST /FrontEnd/UpdateListData - 功能说明:按请求数组顺序更新多条普通表单数据,每个元素的处理规则与
POST /FrontEnd/UpdateData一致。 - Content-Type:
application/json
接口路径以服务端定义的
UpdateListData为准。请求体顶层必须为 JSON 数组,不能使用{ "data": [...] }包装。
请求头
| 参数名 | 位置 | 必填 | 说明 |
|---|---|---|---|
Authorization | Header | 是 | 调用者身份凭据,传入已获取的 token。 |
UserId | Header | 是 | 调用者用户 ID,作为本次更新的操作人。 |
TnCode | Header | 是 | 租户编码。 |
请求体
请求体为表单数据对象数组。数组至少包含一个元素。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
objectId | string (UUID) | 是 | 要更新的业务数据 ID。该记录必须在对应表单中已存在且未被删除。 |
formCode | string | 是 | 主表功能编码。仅支持普通列表、流程列表、树列表和文件列表类型。 |
data | object | 否 | 主表字段数据。键为字段编码,值为字段值字符串。 |
subData | array | 否 | 需要保存的子表数据集合。 |
子表数据对象 subData[]
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
subCode | string | 是 | 子表功能编码。数据源类型子表不支持通过该接口保存。 |
datas | array | 是 | 子表行数据集合。 |
datas 中的每个元素为字段对象:键为子表字段编码,值为字段值字符串。子表行可传入 objectId 指定行 ID;未传时系统自动生成 UUID。
请求示例
[
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "批量更新后的标题1",
"danx": "篮球"
},
"subData": [
{
"subCode": "865197918d",
"datas": [
{
"objectId": "c83c10ea-d0dc-4d8c-a87d-bc59c27f760a",
"wenb": "子表更新行",
"reny": "子表更新内容"
},
{
"wenb": "新增子表行",
"reny": "新增子表内容"
}
]
}
]
},
{
"objectId": "0b5d4d14-f9c9-4a12-8f9e-9a5a74fdca1e",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "批量更新后的标题2",
"danx": "足球"
}
}
]
响应结果
| 参数名 | 类型 | 说明 |
|---|---|---|
Code | int | 业务状态码。成功时为 200。 |
Message | string | 错误信息;成功时为空字符串。 |
Result | boolean | 成功时为 true。 |
Status | int | 业务状态:1 表示成功,3 表示服务端错误。 |
ExceptionSeqNo | string | 异常流水号;当前实现通常为 null。 |
MessageShowType | int | 消息展示类型;当前实现通常为 null。 |
成功示例
{
"Code": 200,
"Message": "",
"ExceptionSeqNo": null,
"Result": true,
"Status": 1,
"MessageShowType": null
}
失败示例
{
"Code": 500,
"Message": "objectId[205e4ed8-db1f-40c7-9e2d-bf656d53c2cd]数据不存在或已经被删除",
"ExceptionSeqNo": null,
"Result": null,
"Status": 3,
"MessageShowType": null
}
调用说明
- 请求体为空数组或
null时,接口返回错误信息:表单数据为空。 - 每条数据都会校验
objectId;未传时返回业务数据id为空,记录不存在或已删除时返回错误。 - 服务端按数组顺序逐条更新;中间某条失败时,后续数据不会继续处理。
- 每一条数据先保存传入的子表,再保存主表;子表保存失败时该条主表不会继续保存。
- 当前接口未提供整批事务回滚。发生异常前已成功更新的主表或子表数据不会自动撤销。
cURL 示例
curl -X POST "http://{host}/FrontEnd/UpdateListData" -H "Content-Type: application/json" -H "Authorization: Bearer {token}" -H "UserId: {userId}" -H "TnCode: {tenantCode}" -d '[
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "批量更新后的标题1"
}
}
]'
批量更新普通表单-绕过平台规则,直接入库
普通表单的数据批量接口(含子表数据)
支持版本:V3+;
接口
HttpPost:api/FrontEnd/BatchDirectUpdateData
请求示例(不含子表):
[{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1新",
"danx": "篮球"
}
},
{
"objectId": "305e4ed8-db1f-40c7-9e2d-bf656d53c123",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2新",
"danx": "羽毛球"
}
}
]
请求示例(含子表):
[{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题1",
"danx": "篮球"
},
"subData": [{
"subCode": "865197918d",
"datas": [{
"objectId":"a297626a-4135-4400-b225-895a2b73643b",
"wenb": "子表1-标题1",
"reny": "子表1-内容1"
}, {
"wenb": "子表1-标题2",
"reny": "子表1-内容2"
}]
}]
}, {
"objectId": "305e4ed8-db1f-40c7-9e2d-bf656d53c123",
"formCode": "46b97a76f61338bd",
"data": {
"wenb": "标题2",
"danx": "羽毛球"
},
"subData": [{
"subCode": "865197918d",
"datas": [{
"objectId":"4597626a-4135-4400-b225-895a2b736234",
"wenb": "子表2-标题1",
"reny": "子表2-内容1"
}, {
"wenb": "子表2-标题2",
"reny": "子表2-内容2"
}]
}]
}]
删除
数据删除
业务数据删除接口
支持版本:V3+;
接口
HttpPost:api/FrontEnd/deleteData
请求实体

请求示例:
{
"formCode": "12414b93b85753db",
"ids": ["e357a86f-662c-48f3-82ff-6a6818e2ae4f","205e4ed8-db1f-40c7-9e2d-bf656d53c2c1"]
}
返回结果

工作流表单
修改流程数据
工作流表单的数据修改接口(含子表数据),操作人与流程当前处理人可以不一致。
支持版本:V3+;
接口
HttpPost:api/FrontEnd/updateFlowData
请求实体

请求示例(不含子表):
{
"objectId": "88fcbbae-a7ef-4ac1-9db9-4ead9f7b06fc",
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
}
}
请求示例(含子表):
{
"objectId":"88fcbbae-a7ef-4ac1-9db9-4ead9f7b06fc",
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
},
"subData": [{
"subCode": "07e2d3c05b",
"datas": [{
"wenb":"子表1-标题1",
"reny":"子表1-内容1"
},{
"wenb":"子表1-标题2",
"reny":"子表1-内容2"
}]
}]
}
返回结果

提交(发起/流转中提交)
工作流表单的数据提交接口(含子表数据)
流转中提交时,操作人必须与流程当前处理人一致
支持版本:V3+;
接口
HttpPost:api/FrontEnd/submitData
请求实体

请求示例(不含子表):
{
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
}
}
请求示例(含子表):
{
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
},
"subData": [{
"subCode": "07e2d3c05b",
"datas": [{
"wenb":"子表1-标题1",
"reny":"子表1-内容1"
},{
"wenb":"子表1-标题2",
"reny":"子表1-内容2"
}]
}]
}
返回结果

批量提交
工作流表单的数据提交接口(含子表数据) 流转中提交时,操作人必须与流程当前处理人一致
支持版本:V3+;
接口
HttpPost:api/FrontEnd/submitData
请求实体

请求示例(不含子表):
[{
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
}
},
{
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
}
}
]
请求示例(含子表):
[{
"formCode": "12414b93b85753db",
"data": {
"web": "标题1",
"danx": "选项1"
},
"subData": [{
"subCode": "07e2d3c05b",
"datas": [{
"wenb": "子表1-标题1",
"reny": "子表1-内容1"
}, {
"wenb": "子表1-标题2",
"reny": "子表1-内容2"
}]
}]
},
{
"formCode": "12414b93b85753db",
"data": {
"web": "标题2",
"danx": "选项2"
},
"subData": [{
"subCode": "07e2d3c05b",
"datas": [{
"wenb": "子表2-标题1",
"reny": "子表2-内容1"
}, {
"wenb": "子表2-标题2",
"reny": "子表2-内容2"
}]
}]
}
]
返回结果

子表表单
新增子表数据
子表数据新增接口
支持版本:V3+;
接口
HttpPost:api/FrontEnd/addSubData
请求实体

请求示例:
{
"objectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cf",
"parentObjectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"parentCode": "46b97a76f61338bd",
"subCode": "865197918d",
"data": {
"wenb": "标题new",
"reny": "值new"
}
}
返回结果

批量新增子表数据
子表数据批量新增接口
支持版本:V3+;
接口
HttpPost:api/FrontEnd/addListSubData
请求实体

请求示例:
[{
"parentObjectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"parentCode": "46b97a76f61338bd",
"subCode": "865197918d",
"data": {
"wenb": "标题1new",
"reny": "值1new"
}
},{
"parentObjectId": "205e4ed8-db1f-40c7-9e2d-bf656d53c2cd",
"parentCode": "46b97a76f61338bd",
"subCode": "865197918d",
"data": {
"wenb": "标题2new",
"reny": "值2new"
}
}]
返回结果

待办已办
已办列表查询接口
查询用户下所有已办数据明细
支持版本:V3+;
接口
HttpPost:api/FrontEnd/cartFinishWorkItems
请求实体

请求示例:
{
"PagingInfo": {
"PageIndex": 1,
"PageSize": 5
},
"SearchCondition": [{
"Name": "WorkFlowCode",
"Value": ""
}, {
"Name": "SequenceNo",
"Value": ""
}, {
"Name": "StartTime",
"Value": ""
}, {
"Name": "EndTime",
"Value": ""
}],
"UserCode":"Administrator"
}
返回结果
