java activiti工作流怎么将审批任务传输到上一级目录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java activiti工作流怎么将审批任务传输到上一级目录相关的知识,希望对你有一定的参考价值。

参考技术A   1、新建流程模型
  模型管理->模型工作区
  点击“创建”后会立即跳转到“流程在线设计器”页面,请参考下一节
  2、在线流程设计器
  模型管理->模型工作区->编辑
  3、设置流程属性
  l 名称:流程定义名称
  l 描述信息:流程定义描述
  l 流程标识:流程定义KEY,对应procDefKey,用来标识一个流程
  本回答被提问者采纳

Activiti5 添加/查询审批批注(审批意见)

Activiti5 添加/查询审批批注

Activiti 工作流开发,23张表中,act_hi_commit 中,用于保存流程审核的批注信息:

 调用:
  taskServer.addComment(taskId:任务 id ,processInstanceId: 流程实例 id ,message : 批注信息);

@Test
public void complementTask(){
TaskService taskService=processEngine.getTaskService();
//3. 使用任务服务完成任务(提交任务)
String taskId="37505";
// 使用任务id,获取任务对象,获取流程实例id
Task task=taskService.createTaskQuery().taskId(taskId).singleResult();
//利用任务对象,获取流程实例id
String processInstancesId=task.getProcessInstanceId();

System.out.println(processInstancesId);

Authentication.setAuthenticatedUserId("cmc"); // 添加批注时候的审核人,通常应该从session获取

taskService.addComment(taskId,processInstancesId,"尝试添加批注");

taskService.complete(taskId);
}
 
 
查询批注信息: 返回 List
a.
     使用任务 id 查找 批注信息
     taskService.getTaskComments(taskid); 这个taskid,只是当时审批那人的任务id
 
注: 通常在审批流程中, 不同人审批的过程 taskid ,是不同的, 要查找 审批信息,就需要当时审批的时候的 taskId ,这个可以在历史完成任务中查找当时对应的 taskId
 
 

@Test
public void findCommentByTaskId() {

String taskId="42503"; // 现在的任务id
HistoryService historyService=processEngine.getHistoryService();
TaskService taskService=processEngine.getTaskService();
List list = new ArrayList();
//使用当前的任务ID,查询当前流程对应的历史任务ID

//使用当前任务ID,获取当前任务对象
Task task = taskService.createTaskQuery()//
.taskId(taskId)//使用任务ID查询
.singleResult();
//获取流程实例ID
String processInstanceId = task.getProcessInstanceId();
//使用流程实例ID,查询历史任务,获取历史任务对应的每个任务ID
List htiList = historyService.createHistoricTaskInstanceQuery()//历史任务表查询
.processInstanceId(processInstanceId)//使用流程实例ID查询
.list();
//遍历集合,获取每个任务ID
if(htiList!=null && htiList.size()>0){
for(HistoricTaskInstance hti:htiList){
//任务ID
String htaskId = hti.getId();
//获取批注信息
List taskList = taskService.getTaskComments(htaskId);//对用历史完成后的任务ID
list.addAll(taskList);
}
}
list = taskService.getProcessInstanceComments(processInstanceId);


for(Comment com:list){
System.out.println("ID:"+com.getId());
System.out.println("Message:"+com.getFullMessage());
System.out.println("TaskId:"+com.getTaskId());
System.out.println("ProcessInstanceId:"+com.getProcessInstanceId());
System.out.println("UserId:"+com.getUserId());
}

System.out.println(list);
}

以上是关于java activiti工作流怎么将审批任务传输到上一级目录的主要内容,如果未能解决你的问题,请参考以下文章

Activiti6.0 spring5 工作流引擎 java SSM流程审批 项目框架

项目结合activiti工作流框架使用

Activiti5 添加/查询审批批注(审批意见)

Activiti应用实践-任务责任人转派

java 工作Activiti6.0 spring5 工作流引擎 java SSM流程审批 项目框架

Activiti6.0 spring5 java SSM 工作流引擎 流程审批 项目框架