# APP业务
js依赖
<script src="static/form/js/app-oa-form-util.js?v="></script>
# 初始化
# 数据初始化
页面需要隐藏 oa-form-footer-tool-bar
,由原生调用方法触发
页面加载 -> APP初始化
appOaFormUtil.setForm(layui.form);
appOaFormUtil.initAppFormData(initObj);
参数
名称 | 类型 | 说明 |
---|---|---|
initObj | object | 初始化对象 |
initObj
名称 | 类型 | 说明 |
---|---|---|
confirmAssignees | array | 确认代理人列表 |
fields | array | 字段列表 |
formButton | object | 表单按钮 |
currentUser | object | 当前用户 |
附件回显
appOaFormUtil.initAppAttachments(files);
参数
名称 | 类型 | 说明 |
---|---|---|
files | string | 英文逗号分割的文件列表 |
# 流程日志
Method: GET
Content-Type:
application/json
URL:
app/oa/list-process-log/process-instance-id/{processInstanceId}
PathParams:
参数 | 说明 |
---|---|
processInstanceId | 流程实例ID |
- Headers:
{
token: token
}
- RequestBody:
{
taskId: "任务ID",
taskName: "任务名称",
startTime: "开始时间",
endTime: "结束时间",
usedTime: "耗时"
userIds: "任务代理人ID",
userNames: "任务代理人名称",
taskStatus: "任务状态,needToBeDealtWith:待办,alreadyDone:已办",
// 任务变量,内容不固定
taskVariables: {},
// 流程变量,内容不固定
processVariables: {}
// 备注
comment: {
type: "批注类型。SIGN:签批,JOINTLY_SIGN:会签,GO_BACK:回退,FORCED_END:强制结束,TRANSFER:转交",
userId: "批注人ID",
userName: "批注人名称",
fieldName: "字段名称",
fieldExplain: "字段说明",
content: "批注内容",
time: "时间"
},
// 转交批注
transferComments: [
{
type: "批注类型。SIGN:签批,JOINTLY_SIGN:会签,GO_BACK:回退,FORCED_END:强制结束,TRANSFER:转交",
userId: "批注人ID",
userName: "批注人名称",
content: "批注内容",
time: "时间"
}
]
}
说明
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
taskId | string | 任务ID | |
taskName | string | 任务名称 | |
startTime | string | 开始时间 | |
endTime | string | 结束时间 | |
usedTime | string | 耗时 | |
userIds | string | 任务代理人ID | |
userNames | string | 任务代理人名称 | |
taskStatus | string | 任务状态 | needToBeDealtWith:待办,alreadyDone:已办 |
taskVariables | string | 任务变量,内容不固定 | |
processVariables | string | 流程变量,内容不固定 | |
comment | string | 日志备注 | |
transferComments | object | 日志转交批注列表 |
- Response
状态码
名称 | 值 |
---|---|
200 | 请求成功 |
400 | 请求错误 |
401 | 权限不足 |
403 | 访问禁止 |
500 | 系统错误 |
Body:
{
code: "错误编码",
msg: "错误原因"
}
js处理代码
var commentText = '';
var comment = item.comment;
if (comment) {
if (comment.type === 'JOINTLY_SIGN') {
commentText = '动作:会签。批注:' + comment.content + '。时间:' + comment.time;
} else if (comment.type === 'GO_BACK') {
commentText = '动作:回退。批注:' + comment.content + '。时间:' + comment.time;
} else if (comment.type === 'FORCED_END') {
commentText = '动作:强制结束。批注:' + comment.content + '。时间:' + comment.time;
}
}
// 转交记录
var transferCommentText = '';
var transferComments = item.transferComments;
// 倒叙
for(var j = transferComments.length, transferComment; transferComment = transferComments[--j];) {
if(transferCommentText) {
transferCommentText += '\n'
}
transferCommentText += (transferComments.length - j) +'. 转交人:'+ transferComment.userName +'。原因:'+ transferComment.content +'。时间:'+ transferComment.time;
}
# 方法
# 字段赋值
APP -> 页面字段
方法
appOaFormUtil.setFieldValue(fieldName, fieldValue)
参数
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
fieldName | string | 字段名 | |
fieldValue | string | 字段值 |
# 附件赋值
方法
appOaFormUtil.setAttachments(attachments)
参数
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
attachments | string | 附件列表 | 格式:附件1,附件2。附件格式:ID:名称。英文冒号分割ID与名称,英文逗号分割组。名称不能有英文冒号与逗号 |
# 抄送人赋值
方法
appOaFormUtil.setCcs(ccs)
参数
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
ccs | string | 抄送人列表 | 格式:抄送人ID1,抄送人ID2。英文逗号分割。 |
# 提交表单
appOaFormUtil.submitFormReport(btnIndex);
参数
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
btnIndex | int | 按钮的下标 |
# 回调
页面提交成功,通知APP
appOaFormUtil.callbackAppSubmitStatus(submitStatus);
参数
名称 | 类型 | 说明 | 参数值 |
---|---|---|---|
submitStatus | boolean | 提交状态 | true:成功,false;失败 |
# 事件
# 回退
Method: PUT
Content-Type:
application/json
URL:
app/oa-form-report/update-go-back/process-instance-id/{processInstanceId}/task-id/{taskId}/node-id/{nodeId}
PathParams:
参数 | 说明 |
---|---|
processInstanceId | 流程实例ID |
taskId | 当前任务ID |
nodeId | 回退到的节点ID |
- Headers:
{
token: token
}
- RequestBody:
{
reason: "原因"
}
- Response
状态码
名称 | 值 |
---|---|
200 | 请求成功 |
400 | 请求错误 |
401 | 权限不足 |
403 | 访问禁止 |
500 | 系统错误 |
Body:
{
code: "错误编码",
msg: "错误原因"
}
# 强制结束
Method: PUT
Content-Type:
application/json
URL:
app/oa-form-report/update-forced-end/process-instance-id/{processInstanceId}/task-id/{taskId}
PathParams:
参数 | 说明 |
---|---|
processInstanceId | 流程实例ID |
taskId | 当前任务ID |
- Headers:
{
token: token
}
- RequestBody:
{
reason: "原因"
}
- Response
状态码
名称 | 值 |
---|---|
200 | 请求成功 |
400 | 请求错误 |
401 | 权限不足 |
403 | 访问禁止 |
500 | 系统错误 |
Body:
{
code: "错误编码",
msg: "错误原因"
}
# 转交
Method: PUT
Content-Type:
application/json
URL:
app/oa-form-report/update-assignee/process-instance-id/{processInstanceId}/task-id/{taskId}
PathParams:
参数 | 说明 |
---|---|
processInstanceId | 流程实例ID |
taskId | 当前任务ID |
- Headers:
{
token: token
}
- RequestBody:
{
assignee: "接收人ID",
reason: "原因"
}
- Response
状态码
名称 | 值 |
---|---|
200 | 请求成功 |
400 | 请求错误 |
401 | 权限不足 |
403 | 访问禁止 |
500 | 系统错误 |
Body:
{
code: "错误编码",
msg: "错误原因"
}
# 对象说明
# 代理人
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
assignees | Array | 代理人用户列表 | |
btnExc | string | 按钮条件 | |
btnText | string | 按钮名称 | |
nextEndEvent | boolean | 下节点是否为结束节点 | true:是,false:否 |
nodeType | string | 节点类型 | normal:普通(单实例)节点,multiple:多实例节点 |
# 代理人用户
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
userId | string | 用户ID | |
userName | string | 用户昵称 | |
userUsername | string | 用户名 | |
avatar | string | 头像ID |
# 字段
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
fieldName | string | 字段名称 | |
isEditable | int | 可编辑 | 0:否,1:是 |
isVisible | int | 可显示 | 0:否,1:是 |
editHistory | string | 编辑历史 | noRecord:不记录(默认),latest:记录最新(签批),all:记录全部(会签) |
autoBackFill | string | 自动回填 | noBackFill:不回填(默认),currentUserName:当前用户名,currentUserDepartment:当前用户部门 |
# 表单按钮
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
btnAttachment | int | 附件按钮 | 0:未激活,1:已激活 |
btnForcedEnd | int | 强制结束按钮 | 0:未激活,1:已激活 |
btnPrint | int | 打印按钮 | 0:未激活,1:已激活 |
btnCc | int | 抄送按钮 | 0:未激活,1:已激活 |
btnGoBack | int | 回退按钮 | 0:未激活,1:已激活 |
btnTransfer | int | 转交按钮 | 0:未激活,1:已激活 |
goBackUserTasks | array | 历史任务列表(按执行顺序),当 btnGoBack 激活时有效 |
# 历史任务
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
nodeId | string | 节点ID | |
taskName | string | 任务名称 |
# 当前用户
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
userId | string | 用户ID | |
userName | string | 用户名 | |
departments | array | 用户部门列表 |
# 用户部门
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
departmentId | string | 部门ID | |
departmentParentId | string | 部门上级ID | |
departmentName | string | 部门名称 | |
departmentCode | string | 部门编码 | |
departmentNo | string | 部门编号 |
# 日志备注
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
type | string | 批注类型 | SIGN:签批,JOINTLY_SIGN:会签,GO_BACK:回退,FORCED_END:强制结束,TRANSFER:转交 |
userId | string | 批注人ID | |
userName | string | 批注人名称 | |
fieldName | string | 字段名称 | |
fieldExplain | string | 字段说明 | |
content | string | 批注内容 | |
time | string | 时间 |
# 日志转交批注
属性 | 类型 | 说明 | 参数值 |
---|---|---|---|
type | string | 批注类型 | SIGN:签批,JOINTLY_SIGN:会签,GO_BACK:回退,FORCED_END:强制结束,TRANSFER:转交 |
userId | string | 批注人ID | |
userName | string | 批注人名称 | |
content | string | 批注内容 | |
time | string | 时间 |