简体中文
flow.approval.action.before
约 449 字大约 2 分钟
2026-04-17
flow.approval.action.before
说明:该钩子用于在审批动作正式执行前做拦截、补参与替换逻辑。
一. isIntercept
功能描述
- 在审批动作正式执行前做拦截、补参与替换逻辑。
- 支持设置更换处理人原因是否必填。
- 支持在前加签场景下设置加签模式的默认选中项。
参数
| 参数 | 说明 | 类型 |
|---|---|---|
| action | 当前动作信息 | Object |
| context | 透传给插件的上下文能力 | Object |
返回结果
| 参数 | 说明 | 类型 |
|---|---|---|
| isIntercept | 是否拦截默认操作 | Boolean |
参数代码示例
let action = options && options.action;代码示例
module.exports = function (context, pluginService, pluginParam) {
return {
apply() {
return [
{
event: "flow.approval.action.before",
functional: async function (context, options) {
let action = options && options.action;
let pluginContext = options && options.context;
pluginContext.setChangeApproverExtData({
isRequired: true,
});
pluginContext.setDefaultSequence(true);
// 设置前置加签意见是否必填,true是必填 false非必填
pluginContext.setPreAddSignOpinionRequired(true);
return Promise.resolve({
isIntercept: false
});
}
}
];
}
};
};二. 取回操作 - 设置默认意见
功能描述
在取回操作场景下,支持通过 context.setRetrieveOpinionInfo 设置自定义默认取回意见内容。
context 方法
| 方法 | 说明 | 入参 |
|---|---|---|
| setRetrieveOpinionInfo | 设置取回意见信息 | { defaultOpinion: String } |
入参详情
| 参数 | 说明 | 类型 | 必填 |
|---|---|---|---|
| defaultOpinion | 默认取回意见内容 | String | 否 |
代码示例
module.exports = function (context, pluginService, pluginParam) {
return {
apply() {
return [
{
event: "flow.approval.action.before",
functional: async function (context, options) {
let pluginCtx = options && options.context;
pluginCtx.setRetrieveOpinionInfo({
defaultOpinion: '自定义取回重审意见'
});
return Promise.resolve();
}
},
];
}
};
};注意
setChangeApproverExtData可用于设置更换处理人原因是否必填。setPreAddSignOpinionRequired用于设置前置加签意见是否必填,true表示必填,false表示非必填。setDefaultSequence用于前加签场景下设置默认加签模式,true表示并发,false表示串发。setRetrieveOpinionInfo用于取回操作场景下设置默认取回意见内容,仅在 action 为取回操作时生效。
