介绍
使用流程自定义事件处理业务逻辑
详情
配置步骤
1. 打开工作流引擎规划页面,点击规划页面空白处,点击【全局事件,弹出全局事件弹框】
2. 在全局事件弹框中,选择类型:动作按钮触发时机;
3. 执行策略选择:自定义方法,填写rpcService名称;
4. 设置好之后点击确定按钮,配置好的事件会显示在全局事件;
案例代码
1、DTO信息注释
/**
* 任务ID
*/
private String taskId;
/**
* 任务名称
*/
private String currentTaskName;
/**
* 目标任务
*/
private String targetTaskName;
/**
* 目标路线
*/
private String targetTransition;
/**
* 提交类型(通过或退回)
*/
private OperatorEnum operatorEnum;
/**
* 提交意见
*/
private String submitComment;
/**
* 处理人信息
*/
private List<Map<String, String>> assignees;
/**
* 执行Bean
*/
private Map<String, Object> dynaBean;
2、创建rpcService,继承接口 WorkFlowExecuteCustomMethodService,实现executeCustomMethod()方法;
2.2.3以后的版本创建普通的service。@Service(name = “myWorkFlowExecuteCustomMethodService”)
@RpcSchema(schemaId = "myWorkFlowExecuteCustomMethodService")
2.2.3以后使用 @Service(value = "myWorkFlowExecuteCustomMethodService")
public class MyWorkFlowExecuteCustomMethodServiceImpl implements WorkFlowExecuteCustomMethodService {
private static final Logger logger = LoggerFactory.getLogger(MyWorkFlowExecuteCustomMethodServiceImpl.class);
@Override
public void executeCustomMethod(EventSubmitDTO eventSubmitDTO) {
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(String.format("taskId:%s , ", eventSubmitDTO.getTaskId()));
stringBuffer.append(String.format("currentTaskName:%s , ", eventSubmitDTO.getCurrentTaskName()));
stringBuffer.append(String.format("targetTaskName:%s , ", eventSubmitDTO.getTargetTaskName()));
stringBuffer.append(String.format("targetTransition:%s , ", eventSubmitDTO.getTargetTransition()));
stringBuffer.append(String.format("operatorEnum:%s , ", eventSubmitDTO.getOperatorEnum().toString()));
stringBuffer.append(String.format("submitComment:%s , ", eventSubmitDTO.getSubmitComment()));
stringBuffer.append(String.format("assignees:%s , ", eventSubmitDTO.getAssignees()));
stringBuffer.append(String.format("funcCode:%s , ", eventSubmitDTO.getFuncCode()));
stringBuffer.append(String.format("dynaBean:%s , ", eventSubmitDTO.getDynaBean().toString()));
logger.info(stringBuffer.toString());
System.out.println(eventSubmitDTO);
}
}
关键字
- 自定义方法
- 全局事件
最后编辑: 于春辉 文档更新时间: 2024-11-08 17:00 作者:肖海杰