Activiti6.0(二)源码分析helloword

获取源码

image.png


  1. 然后从自己目录下把项目克隆到本地
  2. 切换分支>git checkout -b study6 activiti-6.0.0
  3. 编译>mvn clean test-compile
  4. 导入到编辑器

Activiti6.0模块介绍

  • module/activiti-engine 核心模块
  • module/activiti-spring Spring集成模块
  • module/activiti-sping-boot SpringBoot集成模块
  • module/activiti-rest 对外提供rest api模块
  • module/activiti-form-engine 表单引擎模块
  • module/activiti-ldap 集成ldap用户的模块

基于源码activiti-app运行

启动cativiti-app cd modules/activiti-ui/activiti-app mvn clean tomcat7:run 打开浏览器访问http://127.0.0.1:9999/activiti-app/


activiti-ui

  • activiti-app 集成发布的war工程
  • activiti-app-conf UI独立于业务外的配置
  • activiti-app-logic UI的业务逻辑
  • activiti-app-rest 提供接口的rest api

Activiti6.0初体验helloword

通过activiti-app画好流程图并设置属性

  • id:startEvent | name:开始
  • id:submitForm | name:填写审批信息
  • id:decideSubmit | name:提交OR取消
  • id:endEventCancel | name:取消
  • id:tl_approve | name:主管审批
  • id:decideTLApprove | name:主管审批校验
  • id:hr_approve | name:人事审批
  • id:decideHRApprove | name:人事审批校验
  • id:endEvent |name:结束

image.png

image.png


设置form表单信息

填写审批信息表单

image.png

image.png

主管审批表单

image.png

hr审批表单

image.png

设置流转条件

image.png

提交or取消:

  • ${submitType=="y"||submitType=="Y"}
  • ${submitType=="n"||submitType=="N"}

主管审批校验:

  • ${tlApprove=="y"||tlApprove=="Y"}
  • ${tlApprove=="n"||tlApprove=="N"}

人事审批校验:

  • ${hrApprove=="y"||hrApprove=="Y"}
  • ${hrApprove=="n"||hrApprove=="N"}

导出工作流xml文件创建demoActiviti项目

image.png

  1. 把导入文件放入项目里

image.png

  1. 引入jar包
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.guosh.activiti</groupId>
    <artifactId>guosh-activiti</artifactId>
    <version>1.0-SNAPSHOT</version>


    <dependencies>
        <!--activiti核心模块-->
        <dependency>
            <groupId>org.activiti</groupId>
            <artifactId>activiti-engine</artifactId>
            <version>6.0.0</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <!--日志-->
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.1.11</version>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>20.0</version>
        </dependency>
        <!--h2内存数据库-->
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.3.176</version>
        </dependency>
    </dependencies>

</project>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券