计算机系统应用教程网站

网站首页 > 技术文章 正文

activiti工作流引擎(activiti工作流引擎怎么用)

btikc 2024-11-15 16:35:50 技术文章 3 ℃ 0 评论

简单来说工作流就是将一条信息根据角色、分工、条件不同进行固定的向上传递,数据是按照固定的流向进行传输,一级一级传递下去,这种场景在OA , CRM / ERP中应用得比较多。通常这种操作自己本身也可以通过逻辑来实现,但是复杂度很高。而且不方便维护。所以通常都采用第三方引擎框架来实现,除了引擎本身简化了操作以外。更重要的是维护起来很方便。

安装bpmn-js

绘制流程图

spring boot 2.54整合acticity7

  <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-spring-boot-starter</artifactId>
            <version>7.1.0.M6</version>
            <exclusions>
                <exclusion>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
spring.activiti.history-level=full
spring.activiti.db-history-used=true
spring.activiti.check-process-definitions=false
spring.activiti.deployment-mode=never-fail

放入BPMN流程图(当前目录下流程会自动创建)

启动spring boot 生成表

手动部署流程BPMN

   Deployment deployment=repositoryService.createDeployment()
                .addClasspathResource("xx.bpmn")
                //.addClasspathResource(pngname)//图片
                .name("task")
                .deploy();

查询流程部署

    List<Deployment> list = repositoryService.createDeploymentQuery().list();

查询流程定义

       List<ProcessDefinition> list = repositoryService.createProcessDefinitionQuery()
                .list();

删除流程定义

 repositoryService.deleteDeployment(pdID, true);

初始化流程实例

ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("xxxx", "id");

删除流程实例

runtimeService.deleteProcessInstance("73f0fb9a-ce5b-11ea-bf67-dcfb4875e032", "xxxx");

执行任务

taskService.complete("d07d6026-cef8-11ea-a5f7-dcfb4875e032");

根据流程实例ID查询历史

List<HistoricTaskInstance> list = historyService
        .createHistoricTaskInstanceQuery()
        .orderByHistoricTaskInstanceEndTime().asc()
        .processInstanceId("1f2314cb-cefa-11ea-84aa-dcfb4875e032")
        .list();

和spring security整合自行实现

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表