1.项目简介
1.1 项目信息
本项目旨在让Activiti初学者可以快速入门,使用工作流里面的请假流程作为Activiti企业实战的Hello World。
简单通过这个实例说明如何结合流程与业务,表单、业务、流程之前如何衔接……
发起这个项目也是目前没有太完整、接近企业真实项目的例子,本项目作为一个补充希望能帮助更多人。
1.2 DEMO截图
1.3 流程图
1.4 如何下载实例程序
本项目托管在著名的Github,地址:https://github.com/henryyan/kft-activiti-demo。
2.Demo wiki文档
请参考WIKI:https://github.com/henryyan/kft-activiti-demo/wiki
在线演示:http://aws.kafeitu.me:8080/kft-activiti-demo
3.意见
本项目使用的是接近企业的环境作为开发的基础,可能对于有些没有接触Maven、SpringMVC的初学者有些不太容易理解。
我曾经考虑过降低门槛,但是我没有这么做;因为Activiti官方的实例以及源代码都是在Maven下面构建,所以你有必要去学习一下如何使用Maven。
因为是演示项目,目的就是让大家理解流程与业务的结合,特定功能使用哪个接口完成,项目里面的Web层使用SpringMVC,有Struts2经验的人来说SpringMVC也不难。
4. 视频介绍
视频地址:http://v.youku.com/v_show/id_XNzQ0MTI5MTc2.html
2.传统模式
项目创建之后有很多人不会使用maven,要求我搞一个无maven的包,可以导入eclipse直接运行,最后我只能妥协可怜一下这些不用maven的人。
有一点需要注意的是本项目使用UTF-8编码,导入前请更改workspace的编码为UTF-8,否则会出现编译出错问题。尤其是Windows用户。
2.1 项目源码
https://github.com/henryyan/kft-activiti-demo/tree/no-maven
2.2 下载源码
- zip格式
- tar.gz格式
下载完成之后把压缩包解开导入Eclipse即可。
2.3 启动项目
在Eclipse中创建一个Tomcat Server,启动……
目前在Eclipse使用Tomcat7运行项目导致找不到webapp目录,可以通过mvn package打包后把kft-activiti-demo.war部署到tomcat7中运行
启动成功之后会在用户主目录创建kft-activiti-demo.h2.db文件,这个就是h2的数据库文件。
2.4 初始化数据库
本项目使用H2作为数据库服务,初始化方式如下:
2.4.1 下载h2
下载地址:http://repo2.maven.org/maven2/com/h2database/h2/1.3.167/h2-1.3.167.jar
启动h2:
打开控制台进入下载的jar包目录,运行:
java -jar h2*.jar
稍等一下会自动在浏览器中打开:http://localhost:8090/
2.4.2 导入初始化脚本
在JDBC URL输入框中输入:
jdbc:h2:file:~/kft-activiti-demo;AUTO_SERVER=TRUE
点击"Connect"登录控制台。
分别复制项目中的:/resources/sql/h2/schema.sql和/resources/sql/h2/data.sql文件内容到控制台,点击Run。
2.5 访问应用
打开浏览器访问:http://localhost:8080/kft-activiti-demo-no-maven
功能演示
1.部署流程
点击菜单:工作流->流程管理,点击列表右上角的重新部署流程,列表会显示所有已经部署的流程,已经存在的流程会有多个版本出现。
可以删除、查看XML、PNG图片功能。
2.请假申请
点击菜单:考勤模块->请假申请。
填写完成表单之后点击按钮申请即可启动流程。
3.任务签收
申请之后用leaderuser登录,点击菜单:考勤模块->请假办理,找到有签收按钮的任务点击。
4.任务办理
申请之后用leaderuser登录,点击菜单:考勤模块->请假办理,找到有办理按钮的任务点击。
5.流程跟踪
在请假办理、运行中流程列表均可点击当前节点查看流程跟踪图。
6.驳回请求
在节点领导审批、人事审批节点均可点击驳回按钮驳回请求,由申请人再次处理。
7.重新发送请求
被驳回的请求申请者可以继续申请或者取消申请,继续申请会再次把节点转到领导审批节点,取消申请结束流程。
8.已结束流程
菜单:考勤模块->已结束流程,显示所有已经结束的流程。