Activiti学习文档(五)之发布流程并审批处理

    xiaoxiao2023-03-24  4

                       上一节中,成功部署了相应的流程ZIP,接下来可以利用这个部署的流程来开发业务了。

                       如图,首先我们可以添加一个请假申请,这个功能相对比较简单,增删改查就不在这里讲述了,直接跳过。

                      重点是在做保存之后需要申请请假的这个功能,它需要把已经部署的流程的KEY取到,和这个请假业务相关联,并一起保存到数据库中。这里有相应的代码提示,可以参考一下:

    /**更新请假状态,启动流程实例,让启动的流程实例关联业务*/ @Override public void saveStartProcess(WorkflowBean workflowBean) { //1:获取请假单ID,使用请假单ID,查询请假单的对象LeaveBill Long id = workflowBean.getId(); LeaveBill leaveBill = leaveBillDao.findLeaveBillById(id); //2:更新请假单的请假状态从0变成1(初始录入-->审核中) leaveBill.setState(1); //3:使用当前对象获取到流程定义的key(对象的名称就是流程定义的key) String key = leaveBill.getClass().getSimpleName(); /** * 4:从Session中获取当前任务的办理人,使用流程变量设置下一个任务的办理人 * inputUser是流程变量的名称, * 获取的办理人是流程变量的值 */ Map<String, Object> variables = new HashMap<String,Object>(); variables.put("inputUser", SessionContext.get().getName());//表示惟一用户 /** * 5: (1)使用流程变量设置字符串(格式:LeaveBill.id的形式),通过设置,让启动的流程(流程实例)关联业务 (2)使用正在执行对象表中的一个字段BUSINESS_KEY(Activiti提供的一个字段),让启动的流程(流程实例)关联业务 */ //格式:LeaveBill.id的形式(使用流程变量) String objId = key+"."+id; variables.put("objId", objId); //6:使用流程定义的key,启动流程实例,同时设置流程变量,同时向正在执行的执行对象表中的字段BUSINESS_KEY添加业务数据,同时让流程关联业务 runtimeService.startProcessInstanceByKey(key,objId,variables); }                                     点击” 申请请假 “菜单,开启流程,流程的第一步是” 提交申请 “,可以自己点击” 办理任务 “,完成流程的第一步操作;也可以查看一下当前流程图,看看自己处在那一步。

                      之后的话,再进入菜单,会看见

    **************************************************************************************************

    注:Activiti 学习总结资料下载 (http://download.csdn.net/detail/samile6899/9829785)

    转载请注明原文地址: https://ju.6miu.com/read-1200979.html
    最新回复(0)