当前位置:网站首页>UFLO:5、启动任务并自动完成第一个人工任务
UFLO:5、启动任务并自动完成第一个人工任务
2022-07-29 14:52:00 【秦晓宇】
1、原因
UFLO不允许驳回到开始节点,这导致了如果发起人在填写好表单,并且发起流程时,无法知道到达“巴长审核”节点,需要再次点击“填写申请”的流程,这样用户需要操作2次,显得比较繁琐。
2、解决办法
2.1、修改代码
CentralServletHandler.java是控制台的Servlet核心处理类。测试用如下方式可以跳过“填写申请”,直接进入到巴长审核阶段。
public void startProcess(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
long processId=Long.valueOf(req.getParameter("processId"));
/*** 开始 @author qin*@date:2020年3月25日 下午12:37:55**/
// String token = req.getHeader("token");
// String userId = JwtTokenUtil.getUserId(token);
// String userName = JwtTokenUtil.getRealName(token);
StartProcessInfo startProcessInfo = new StartProcessInfo("0510f511a7bca2797fb8a73c02955825","admin");
/*** 结束 @author qin*@date:2020年3月25日 下午12:39:55**/
startProcessInfo.setCompleteStartTask(true);
String variables=req.getParameter("variables");
Map<String,Object> variableMaps=buildVariables(variables);
if(variableMaps!=null){
startProcessInfo.setVariables(variableMaps);
}
ProcessInstance processInstance = processService.startProcessById(processId, startProcessInfo/*null*/);
/*----------------qin--------------------*/
System.out.println("获取下一节点task");
List<Task> l = taskService.loadTaskList(processInstance.getId());
for (Task task : l) {
System.out.println("task id"+task.getId());
taskService.start(task.getId());
taskService.complete(task.getId());
break;
}
/*----------------qin--------------------*/
}
核心添加的代码为:
/*----------------qin--------------------*/
System.out.println("获取下一节点task");
List<Task> l = taskService.loadTaskList(processInstance.getId());
for (Task task : l) {
System.out.println("task id"+task.getId());
taskService.start(task.getId());
taskService.complete(task.getId());
break;
}
/*----------------qin--------------------*/
2.2、配置节点
只能设置为如下
3、测试
如下图所示,已经成功的启动并自动完成了“填写申请”节点
边栏推荐
猜你喜欢
随机推荐
Google Play policy update | in July 2022
MySQL索引常见面试题(2022版)
NLP自然语言处理-机器学习和自然语言处理介绍(一)
观光公交题解
回放线上流量利器-GoReplay
CNCF Keith Chan:分布式云时代,云原生社区的发展与趋势
数据分析(二)
AC自动机笔记与例题整理
论人生自动化
深圳见!云原生加速应用构建专场:来看云原生 FinOps、SRE、高性能计算场景最佳实践
AOP implementation enterprise API access interface monitoring (via Google Guava cache data)
怎么建立数据分析思维
Shell脚本编程-运算
WOLFLAB一方老师带你解读虚拟云网络《VMware NSX-T卷2》-1
Based on domestic, link global | schneider electric "industrial SI alliance partners hand in hand" to the industry in the future
广州消防:高温天气火灾频发 消防安全不容忽视
Guangzhou fire: high temperature weather frequent fire fire safety should not be ignored
多线程顺序运行的 4 种方法,面试随便问!
[yolov7 series two] positive and negative sample allocation strategy
数字孪生万物可视 |联接现实世界与数字空间








