6.工作流的应用实例

sonrin 贡献于2016-12-29

作者 thinkgem  创建于2013-09-03 11:51:00   修改者ThinkGem  修改于2014-10-30 10:49:00字数2400

文档摘要:
关键词:

第6章 工作流的应用实例 作者:ThinkGem 更新日期:2014-01-03 1 新建流程模型 在线办公à流程管理à模型管理à新建模型 点击“提交”后会立即跳转到“流程在线设计器”页面,请看下一章节 2 在线流程设计器 在线办公à流程管理à模型管理à模型管理à编辑 注意:此功能不支持IE,请用谷歌或火狐浏览器编辑。 2.1 设置流程属性 l 名称:流程定义名称 l 描述:流程定义描述 l 流程标识:流程定义KEY,对应procDefKey,用来标识一个流程 2.2 拖拽形状元素 l Start event:开始事件 l End entit:结束事件 l User task:用户任务活动 l Service task:服务任务活动 l Exclusive gateway:排它网关通道,只能有一条分支执行,如if else l Parallel gateway:并行网关通道,所有分支一块执行 l Enclusive gateway:包含网关通道,执行符合条件的分支 参考:http://www.mossle.com/docs/activiti/#bpmnConstructs 2.3 流程发起人流程变量 在开始节点的属性中设置“流程发起人”变量名:如:apply 这时,任务的参与者可设置${apply},来指定谁发起谁执行 如发起人发起流程,被驳回是,驳回到发起人,可使用方法。 2.4 挂接表单地址 l 全局表单:新建流程时或活动元素上未设置表单标识时调用的表单,位于开始事件属性中“表单标识”字段,指定表单访问地址。 l 活动表单:当前步骤使用的表单,使用活动节点属性“表单标识”字段。 2.5 设置参与者 在活动节点属性中找到“参与者”属性,点击“…”弹出如下窗口 l assignee:任务执行人,设置系统中的“登录名”(loginName)。 l candidateUsers:任务执行人,多个用逗号“,”隔开。 l candidateGroups:任务执行组,多个用逗号“,”隔开,设置系统中的“角色英文名(enname)”。 assignee和candidateUsers的区别是:assignee不需要签收任务,直接可执行任务;candidateUsers为竞争方式分配任务,被指定人待办中都有一条任务,谁先签收谁就获得任务的执行权。 参与者可指定流程变量(EL表达式),动态指定参与者,如:${processer} 2.6 设置流转条件 在流转线的属性中找到“流转条件”,这里,写EL表达式,返回true或false,如:${flag == ‘1’} 2.7 保存流程设计图 工具栏上点击“保存”按钮 填写名称和描述,点击“保存”按钮。 此时可点击浏览器上的“叉号”关闭流程设计窗口。 2.8 注意事项 l 所有编号,如:模型编号、流程编号、活动节点编号,都不允许以数字开头。 3 部署流程 上步咱们学习了流程设计,产生流程设计图,如何将我们的图部署到系统中 并使用呢,请看如下操作: l 在线办公à流程管理à模型管理à模型管理à部署 l 接着系统会提示“部署成功”信息,如果提示错误,说明你流程设计图有问题,请检查错误,重新执行部署操作。 l 另外两种部署方法,通过eclipse插件设计好的流程: ² 在线办公à流程管理à流程管理à部署流程à选择流程.bpmn.xml ² 编写并执行ant脚本,启动系统将自动部署 / jeesite/src/main/resources/act/build.xml。 l 设置流程分类:在流程管理中直接点击流程分类进行设置。 l 同一标识流程,部署多次,版本号自动加1 l 正在运行的流程,再次部署新流程后,正在运行的流程还按照原来流程设置走,再次新建的流程使用新流程走。 4 流程表单流转 4.1 数据库设计 使用erm进行数据库建模,然后使用代码生成工具生成增删改查代码。 流程业务表中必须包含,如下字段: 生成ddl导入数据库 4.2 代码生成代码 功能访问路径与第2章挂接表单对应(/oa/testAudit/form); 请参考:“在线办公->个人办公->审批测试”模块 源码:com.thinkgem.jeesite.modules.oa.*. TestAudit*.java,testAudit*.jsp 4.3 启动流程接口 TestAuditService.java第62行,传递参数如下: /** * 启动流程 * @param procDefKey 流程定义KEY * @param businessTable 业务表表名 * @param businessId 业务表编号 */ @Transactional(readOnly = false) public void startProcess(String procDefKey, String businessTable, String businessId) 4.4 提交任务接口 TestAuditService.java第123行,传递参数如下: /** * 提交任务, 并保存意见 * @param taskId 任务ID * @param procInsId 流程实例ID,如果为空,则不保存任务提交意见 * @param comment 任务提交意见的内容 * @param vars 任务变量 */ @Transactional(readOnly = false) public void complete(String taskId, String procInsId, String comment, Map vars) 4.5 视图流转信息调用组件 传递流程实例ID,如下: 5 测试执行 在线办公à个人办公à新建任务àtest_audità启动流程 系统自动调用流程设计时设置的开始节点中的“表单标识”地址 这事待办人的待办中出现一条待办项 点击进入办理,下方显示流转信息: 流程跟踪图: 在待办中点击“环节名称”,进入流程跟踪图界面 办理任务,最下方显示流转信息:

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ] 0 人已下载

下载文档