`

二十二、如何给角色分配任务,而且拥有此角色的用户均需审批通过之后才能继续往下?

 
阅读更多

解决方法:
* 在一个node-enter事件中,我们自己来接管TaskInstance的创建过程,并给每个TaskInstance设置actorId
* 在定义流程的时候,指定create-tasks="no",告诉JBPM不要自动创建TaskInstance
* 在定义流程的时候,指定signal="last"(或不指定,因为默认就是这个取值)

 

<?xml version="1.0" encoding="UTF-8"?>

<process-definition
  xmlns="urn:jbpm.org:jpdl-3.2"  name="test12">
   <start-state name="开始">
      <transition name="" to="系统管理员审批"></transition>
   </start-state>
   <task-node name="系统管理员审批" create-tasks="no" >
         <event type="node-enter">
             <action class="com.ygtim.domain.RoleAssignmentActionHandler">
                 <roleName>系统管理员</roleName>
             </action>
         </event>

         <task name="审批"/>
      <transition name="" to="结束" ></transition>
   </task-node>
   <end-state name="结束"></end-state>
  
</process-definition>

 

 

public class RoleAssignmentActionHandler implements ActionHandler {
   
    /** Comment for <code>serialVersionUID</code> */
    private static final long    serialVersionUID    = -5348773299229669146L;
    /**
     * 由JBPM来注入
     */
    private String                roleName;
   
    @Override
    public void execute(ExecutionContext executionContext) throws Exception {
       
        List<String> actors = new ArrayList<String>();
       
        //根据roleName来得到该角色下面的所有用户
        if ("系统管理员".equals(roleName)) {
            actors.add("张三");
            actors.add("李四");
        }
        TaskMgmtInstance taskMgmtInstance = executionContext.getTaskMgmtInstance();
        //因为只定义了一个任务
        Task task = (Task) ((TaskNode) executionContext.getNode()).getTasks().iterator().next();
       
        for (String actor : actors) {
            TaskInstance ti = taskMgmtInstance.createTaskInstance(task, executionContext);
            ti.setActorId(actor);
            //注意,这些操作在事务提交的时候会自动保存
        }

    }
}

分享到:
评论

相关推荐

    SAP权限的维护与分配

    2. **分配角色给现有用户**: - 在用户界面中选择目标用户,使用事务代码`SU01`打开用户维护界面。 - 在“活页-用户”中,选择需要分配的角色,并保存更改。 #### 四、权限管理流程 1. **权限申请**: - 用户...

    建筑施工现场动火作业安全的管理规定.doc

    安全管理中,不同角色拥有各自的职责。审批人需审查动火作业的必要性和安全性;申请人必须办理相关手续,并组织安全的动火作业;监护人负责确保消防设施到位,保障作业过程中安全;执行人则须严格按照安全要求执行...

    ZCMS内容管理系统_功能说明文档

    它允许管理员根据用户的职责和角色分配不同的权限,如创建、编辑、删除内容等。通过权限模型,系统能够确保只有授权用户才能执行特定的操作,从而保障了内容的安全性和一致性。 #### 三、内容创建、审核与管理 **...

    2021下半年信息系统项目管理师下午真题+答案解析.pdf

    资源平滑方法通常旨在均匀分配资源,但在此情况下,若所有任务都能同时进行,该方法可能不可行,因为无法进一步减少人员。 3. 第1个月月底的PV(计划价值)、EV(挣值)和AC(实际成本)需根据任务计划表和资金计划...

    Activiti6.0教程例子下载

    可以把任务分配给指定的用户,也可以分配给指定的组,并且可以有多个,详见用户手册。 3.3. Spring配置文件 这里配置了数据源、事务管理、流程引擎及几个必要的xxxService。这里数据源使用的是dbcp。数据库信息就...

    某公司投资计划管理系统室分池模块培训材料.pptx

    同时,通过建立后评估机制,室分池确保了建设站点任务只能从资源池中选择,避免了计划外建设,并影响到分公司下一年的投资分配和审批等级。 室分池业务流程涉及多个角色,包括地市和省公司的室分方案负责人、接口人...

    客户关系管理CRM系统业务需求书.docx

    - **分配功能**:将任务或资源分配给合适的人员。 - **删除功能**:重复列出,实际应理解为“删除功能”。 #### 总结 综上所述,CRM系统的核心价值在于通过高效管理客户信息与互动记录,帮助企业更有效地维护与...

    软件项目管理课程设计报告-学生社团管理系统.doc

    2. **权限管理**:系统需根据用户身份分配不同权限,如学院管理者、社团管理者、社团成员和非社团成员的学院学生,确保每个角色只能执行与其身份相符的操作。 3. **效率优化**:为了提高效率,系统应简化操作步骤,...

    教务管理系统的用例说明

    - 如缺考、迟到、作弊等特殊状态,均需记录在案。 #### 16. 产生考试分组(ProduceTestGroup) - **前置条件**:学生考试状态已设定。 - **流程**: - 根据考场容量与学生数量,系统自动生成考试分组。 - 确保每...

    立项流程.pdf

    7. 最后,所有立项材料、项目经理责任书、任命书等相关文档均需妥善存档,以便后续的审计和追踪。 相关文件包括《项目经理责任书》和《项目经理任命书》,这两份文件是项目经理角色正式确立的法律依据,明确了项目...

    室分池培训材料_V0.pptx

    室分池模式下,立项规划、投资和站数均由省公司固化批复,而配套投资和建设站数可在一定范围内灵活调整。 室分池的业务功能涉及多个角色,包括地市室分方案负责人、各部室的接口人和经理,以及省公司的审核人等。其...

    软件测试计划-标准模板

    - 人员角色可能包括测试经理、测试分析师、测试工程师等,每个角色都有明确的职责和任务,例如: - 测试经理负责整体测试策略和计划。 - 测试分析师设计测试用例和测试方案。 - 测试工程师执行测试用例,记录和...

    项目管理-完整脑图.pdf

    - 两者均需人员实施,并受资源限制。 - 都需要计划执行和监控过程。 **5.2 不同点** - 项目是一次性创新活动,而运营是持续性工作。 - 项目完成后即结束,运营则不断追求新目标。 - 项目管理更注重目标实现,运营则...

    软件项目管理第四章项目规划

    一旦批准,该计划将成为指导项目执行的正式文件,任何改动均需遵循变更管理流程。 4.3 常见问题解答和实施建议 在实际操作中,项目估算往往是项目规划中的难点。项目估算包括工作范围、工作量、人员、进度、资源和...

    各部门工作流程.doc

    市场部和生产工程部在此过程中扮演了关键角色。 7. **投产流程**: - 产品投产流程始于市场部签订合同,由生产工程部分解合同并拟制投产计划,经审批后下达任务书。生产准备、生产、检验、产品验收报告的拟制、...

    某地产集团设计管理制度范本.doc

    每一环节均详细列出了任务职责、审批流程、责任分配以及与相关部门的协同工作机制,使得整个设计过程变得规范化和标准化,大大提升了设计质量和工作效率。 在这些章节中,我们可以看到,对于设计方案的管理不仅要求...

    设备(设施)检修安全通则及实施流程.docx

    3. 检修会议:检修单位领导和现场负责人需共同召开会议,讨论劳保用品、安全规程、任务分配、应急预案等,所有参与人员均需了解安全措施并签字确认。 4. 特殊作业审批:动火作业和登高作业需经过三级审批,严格按照...

    学校会计述职报告.doc.doc

    建立有效的审批流程,比如所有开支均需经过主管会计审核,能够有效防止权力集中和公款私用,增强财务的公正性和廉洁性。同时,会计人员还需对学校的负债情况进行管理,通过节约和合理规划,逐步化解债务负担,确保...

    某公司信息管理中心组织管理课件.pptx

    所有职位变动均需遵循一定的流程,确保组织稳定。 【管理模式】 公司采取分层管理,以部门为单位,由上至下的决策流程。同时,鼓励员工自我推荐担任组长或项目经理,体现了员工参与决策的企业文化。 【管理制度】 ...

    软件需求说明实例

    - **归口管理**:按照管理职能将费用管理责任分配给相关部门,如管理费用由行政部门管理,销售费用由销售部门管理等。 - **分级管理**:将费用控制责任层层分解至各个层级,确保每个层级都有相应的管理责任。 - **...

Global site tag (gtag.js) - Google Analytics