`

Activiti常用方法

 
阅读更多

1、根据用户名获得待办任务ID,包括直接指定和通过角色、组指定的待办任务

TaskQuery twoQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId).active().orderByProcessInstanceId().desc();

 

2、将任务委托给其他人办理

Task task=taskService.createTaskQuery().singleResult();
//委托
taskService.delegateTask(task.getId(), "cc");

其中,cc为被委托人

或者根据命令模式进行委托处理:

如managementService.executeCommand(new DelegateTaskCmd(taskId, "2c908aa34877c0a0014877f3ab5700f8"))

 

3、被委托人处理任务

taskService.resolveTask(task.getId());

或者使用命令模式ResolveTaskCmd

如 managementService.executeCommand(new ResolveTaskCmd(taskId, variables));

 

被委托人执行完毕后,任务工具又回到委托人名下,即A委托B处理,B处理完后,任务又回到A名下。

 

4、业务流程信息

List<HistoricActivityInstance> actList = historyService.createHistoricActivityInstanceQuery()

.processInstanceId(processInstanceId).finished()

.taskAssignee(userId)

.orderByHistoricActivityInstanceStartTime().desc().list();

for(HistoricActivityInstance aaa : actList){

System.out.println("*******"+aaa.getAssignee());

System.out.println("*******"+aaa.getProcessInstanceId());

System.out.println("*******"+aaa.getTaskId());

}

根据流程实例id和用户id,获得该业务流程中已完成节点且是指定用户处理的节点的相关信息,即是act_hi_taskinst表中的信息。

 

 5、activiti历史任务相关功能记录

        activiti的历史任务是单独的表来储存,表之间没有任何外间关联,这些表包括:

       ACT_HI_ACTINST 历史流程的运行状况记录

       ACT_HI_ATTACHMENT 

       ACT_HI_COMMENT 流程评论

       ACT_HI_DETAIL流程明细

       ACT_HI_IDENTITYLINK 流程身份关系

       ACT_HI_PROCINST 历史流程概况

       ACT_HI_TASKINST 历史任务概况

       ACT_HI_VARINST 历史流程中的参数

        historyService服务是用于查询历史数据表,有:

       historyService.createHistoricActivityInstanceQuery();      //查询ACT_HI_ACTINST表

       historyService.createHistoricDetailQuery();                     //查询ACT_HI_DETAIL表

       historyService.createHistoricProcessInstanceQuery();     //查询ACT_HI_PROCINST表

       historyService.createHistoricTaskInstanceQuery();         //查询ACT_HI_TASKINST表

 

       historyService.createHistoricVariableInstanceQuery();   //查询ACT_HI_VARINST表

 

7、查询流程是否结束

String id=historyService.createHistoricProcessInstanceQuery()

                                    .finished().singleResult().getId().toString();//finished()查出完成的流程,在数据库中,end_act_id出现值,说明该流程结束。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
分享到:
评论

相关推荐

    activiti基本操作

    2. 常用方法的Demo: 在这个压缩包中,可能会有Java代码示例,演示了如何使用Activiti API进行基本操作,例如: - 创建流程定义:通过`RepositoryService.createProcessDefinitionQuery()`获取流程定义信息。 - ...

    Activiti常用类简介

    "Activiti常用类简介" Activiti是一款基于Apache许可的开源BPM平台,提供了一系列的常用类来帮助开发者快速构建业务流程管理系统。下面我们将对Activiti的常用类进行详细介绍。 流程引擎配置类 ...

    activiti工作流PPT

    当我们谈论"activiti的常用API"时,我们主要关注以下几个关键接口和类: 1. **ProcessEngine**: 这是与Activiti交互的入口点,用于创建RepositoryService、RuntimeService、TaskService等服务。 2. **...

    Activiti-APP最全汉化包

    该汉化包的使用方法非常简单,只需将其下载并解压,然后将解压后的文件放置到Tomcat服务器的相应目录下。Tomcat是一款广泛使用的Java应用服务器,它是许多Web应用程序的运行环境,包括Activiti-APP。在正确部署汉化...

    idea常用插件(activiti,mybatis,json解析等常用插件)

    本文将详细介绍标题和描述中提到的几个常用插件,包括activiti、mybatis以及json解析相关的插件。 1. **Activiti插件**:Activiti是一个开源的工作流引擎,用于构建业务流程管理系统(BPM)。`actibpm.jar`可能是一...

    整合Activiti 5.22 工具包

    在本工具包中,我们专注于Activiti 5.22版本,该版本包含了常用的API和一个基础流程图编辑器,为开发者提供了一站式的流程开发体验。 1. **常用API引入**: Activiti 5.22 提供了丰富的API,使得开发者能够轻松地...

    最新工作流引擎Activiti7基础与进阶

    Activiti 是目前使用最为常用的工作流引擎,工作流业务在企业中应用非常广泛,目前企业中多使用Activiti6版本,Activiti7是目前的最新版本。Activiti7不但提高的工作流引擎的效率,提供了新封装的新API,还提供了和...

    Eclipse Activiti jar包

    Apache Commons Lang是一个实用工具库,包含许多常用的字符串处理、数学运算等方法,为Activiti提供了额外的编程便利性。 这些库共同构建了一个强大的开发环境,使得开发者能够利用Eclipse Activiti进行高效、灵活...

    Activiti工作流整合Web流程设计器整合

    在Activiti中,常用的Web流程设计器有Alfresco Share、Activiti Modeler或BPMN 2.0兼容的第三方工具,如Stunner(Kie Workbench的一部分)。这些工具允许用户通过拖放操作来创建活动、连接线和事件,然后保存为XML...

    ssh activiti

    SSH Activiti是一个集成开发环境,其中SSH代表Spring、Struts和Hibernate,这三大框架是Java Web开发中的常用组件。Activiti则是一个业务流程管理(BPM)系统,它提供了工作流引擎,用于处理企业的业务流程自动化。...

    Activiti 5.17 入门指南

    #### 1.1 工作流常用词解释 - **工作流(Workflow)**:指组织内的任务按照一定的规则和顺序进行流转的过程,通过工作流管理系统实现自动化。 - **工作流引擎(Workflow Engine)**:是工作流管理系统的核心,负责...

    SpringMVC Activiti mysql

    SpringMVC、Activiti 和 MySQL 是企业级应用开发中常用的技术栈,它们分别在不同的领域发挥着关键作用。本文将详细介绍这些技术以及如何将它们整合到一个项目中。 首先,让我们了解一下这三个技术的基础: 1. **...

    activiti5.22-web流程设计器整合demo

    Eclipse是Java开发的常用工具,它提供了丰富的插件支持和便捷的代码管理功能,适合进行大型项目的开发与维护。导入项目后,运行`CreateTable.java`文件,这是初始化Activiti所需数据库表的关键步骤。通过执行此程序...

    Activiti表单研究

    内置表单是Activiti中最常用且易于使用的表单类型之一。它允许用户在设计流程模型时直接定义表单字段,简化了表单开发过程。这种方式适用于那些相对固定且结构化程度较高的表单需求。 ##### 特点: - **直接集成**...

    spring-activiti验证demo

    这通常涉及到调用`runtimeService.startProcessInstanceByKey()`方法,传入流程定义的关键字。 4. **任务处理**:Activiti会将任务分配给特定的角色或用户。你可以通过`taskService.createTaskQuery().list()`查询...

    Activiti 5.16 中文手册

    手册会详细解释这些服务及其常用方法,帮助你有效地编程操作工作流。 流程的设计和管理也是重点。Activiti提供了模型er,允许你通过拖拽的方式设计流程图,然后导出为XML文件。此外,你还可以学习如何监控和调试...

    springboot-activiti-test-master.zip

    SpringBoot旨在简化Spring应用的初始搭建以及开发过程,它默认集成了许多常用的库,如数据访问、安全、缓存等。而Activiti则是一个基于BPMN 2.0规范的流程引擎,能够处理复杂的业务流程,提供图形化建模工具,支持...

    Activiti工作流中式流程(9.76G)

    activiti系列第二期课程课程重点讲解中国式的常用流程,比如activiti中modler设计器扩展属性、activiti中xml扩展自定义属性、activiti任意节点跳转、activiti多实例、activiti任务节点跳转、activiti多实例、...

    activiti ssm

    SSM 指的是 Spring、Spring MVC 和 MyBatis 这三个流行开源框架的组合,它们是Java Web 开发中的常用技术栈。将 Activiti 集成到 SSM 框架中,可以实现流程定义、流程实例的启动、任务处理、流程监控等一系列功能。 ...

Global site tag (gtag.js) - Google Analytics