Package com.founder.fix.fixflow.core.task

Examples of com.founder.fix.fixflow.core.task.TaskInstance


    assertNotNull(processInstanceId);
    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    // 获取一条任务
    TaskInstance taskInstance = taskInstances.get(0);
    String nodeId = taskInstance.getNodeId();
    //验证流程实例是否在第一个节点
    assertEquals(nodeId, "UserTask_1");
   
    //创建一个通用命令
    ExpandTaskCommand expandTaskCommand = new ExpandTaskCommand();
    //设置命令类型
    expandTaskCommand.setCommandType("submit");
    //设置任务号
    expandTaskCommand.setTaskId(taskInstance.getId());
    //设置命令ID  与节点上处理命令中一致,会执行按钮脚本
    expandTaskCommand.setUserCommandId("HandleCommand_3");
    //设置业务关联键
    expandTaskCommand.setBusinessKey("BK_testStartProcessInstanceByKey");
    //设置提交人
    expandTaskCommand.setInitiator("1200119390");
    //执行这个启动并提交的命令,返回启动的流程实例
    taskService.expandTaskComplete(expandTaskCommand, null);
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证是否成功启动
    taskInstance = taskInstances.get(0);
    nodeId = taskInstance.getNodeId();
    //验证当前任务是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
  }
View Full Code Here


    // 创建任务查询
    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    // 获取一条任务
    TaskInstance taskInstance = taskInstances.get(0);
    //验证这个待办是否为空
    assertNotNull(taskInstance);
    String nodeId = taskInstance.getNodeId();
    //验证流程实例是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandGeneral=new ExpandTaskCommand();
    //设置命令为领取任务
    expandTaskCommandGeneral.setCommandType("general");
    //设置命令的ID,需和节点上配置的按钮编号对应,会执行其中脚本
    expandTaskCommandGeneral.setUserCommandId("HandleCommand_2");
    //设置命令的处理任务号
    expandTaskCommandGeneral.setTaskId(taskInstance.getId());
    //领取任务
    taskService.expandTaskComplete(expandTaskCommandGeneral, null);
   
    //创建流程实例查询
    ProcessInstanceQuery processInstanceQuery = runtimeService.createProcessInstanceQuery();
View Full Code Here

    taskInstances = taskQuery.taskCandidateUser("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证此时的共享任务为1
    assertEquals(taskInstances.size(), 1);
   
    //获取当前任务节点
    TaskInstance taskInstance = taskInstances.get(0);
    //创建通用命令
    ExpandTaskCommand expandTaskCommandClaim=new ExpandTaskCommand();
    //设置命令为领取任务
    expandTaskCommandClaim.setCommandType("claim");
    //设置命令的ID,需和节点上配置的按钮编号对应,会执行其中脚本
    expandTaskCommandClaim.setUserCommandId("HandleCommand_3");
    //设置命令的处理任务号
    expandTaskCommandClaim.setTaskId(taskInstance.getId());
    //领取任务
    taskService.expandTaskComplete(expandTaskCommandClaim, null);
   
    //重置任务查询 查询共享
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前共享任务
    taskInstances = taskQuery.taskCandidateUser("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //领取任务后,共享任务数为0
    assertEquals(taskInstances.size(), 0);
    //重置任务查询 查询独占
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //领取任务后,独占任务数为1
    assertEquals(taskInstances.size(), 1);
   
    //取得当前任务
    taskInstance = taskInstances.get(0);
    //取得任务所在节点
    String nodeId = taskInstance.getNodeId();
    //验证当前任务是否在第二个节点
    assertEquals(nodeId, "UserTask_4");
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandRelease=new ExpandTaskCommand();
    //设置命令为释放任务
    expandTaskCommandRelease.setCommandType("releaseTask");
    //设置命令的id,需和节点上配置的按钮编号对应,会执行按钮中的脚本。
    expandTaskCommandRelease.setUserCommandId("HandleCommand_4");
    //设置命令的处理任务号
    expandTaskCommandRelease.setTaskId(taskInstance.getId());
    //领取任务
    taskService.expandTaskComplete(expandTaskCommandRelease, null);
   
    //重置任务查询 查询独占
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //释放任务后,独占任务数为0
    assertEquals(taskInstances.size(), 0);
    //重置任务查询 查询共享
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前共享任务
    taskInstances = taskQuery.taskCandidateUser("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //释放任务后,共享任务数为1
    assertEquals(taskInstances.size(), 1);
    //取得当前任务
    taskInstance = taskInstances.get(0);
    //取得任务所在节点
    nodeId = taskInstance.getNodeId();
    //验证当前任务是否在第二个节点
    assertEquals(nodeId, "UserTask_4");
   
  }
View Full Code Here

    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证此时的独占任务为1
    assertEquals(taskInstances.size(), 1);
    TaskInstance taskInstance = taskInstances.get(0);
    String nodeId = taskInstance.getNodeId();
    assertEquals(nodeId, "UserTask_2");
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandRollBack=new ExpandTaskCommand();
    //设置命令为退回上一步
    expandTaskCommandRollBack.setCommandType("rollBackTaskPreviousStep");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandRollBack.setUserCommandId("HandleCommand_3");
    //设置命令的处理任务号
    expandTaskCommandRollBack.setTaskId(taskInstance.getId());
    //执行退回操作
    taskService.expandTaskComplete(expandTaskCommandRollBack, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查询此流程实例的当前任务号
    taskInstances = taskQuery.processInstanceId(processInstanceId).taskNotEnd().list();
    taskInstance = taskInstances.get(0);
    //查询当前任务号的节点名称
    nodeId = taskInstance.getNodeId();
    //验证退回操作后任务是否回到UserTask_1节点
    assertEquals(nodeId, "UserTask_1");
  }
View Full Code Here

    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证此时的独占任务为1
    assertEquals(taskInstances.size(), 1);
    //取得当前任务
    TaskInstance taskInstance = taskInstances.get(0);
    //取得当前任务节点
    String nodeId = taskInstance.getNodeId();
    //验证是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandRollBack=new ExpandTaskCommand();
    //设置命令为退回制定步骤
    expandTaskCommandRollBack.setCommandType("rollBackTaskByExpression");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandRollBack.setUserCommandId("HandleCommand_4");
    //设置命令的处理任务号
    expandTaskCommandRollBack.setTaskId(taskInstance.getId());
    //执行退回操作
    taskService.expandTaskComplete(expandTaskCommandRollBack, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查询此流程实例的当前任务号
    taskInstances = taskQuery.processInstanceId(processInstanceId).taskNotEnd().list();
    taskInstance = taskInstances.get(0);
    //查询当前任务号的节点名称
    nodeId = taskInstance.getNodeId();
    //验证退回操作后任务是否回到UserTask_1节点
    assertEquals(nodeId, "UserTask_1");
  }
View Full Code Here

    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证此时的独占任务为1
    assertEquals(taskInstances.size(), 1);
    //获得当前任务
    TaskInstance taskInstance = taskInstances.get(0);
    //获得任务节点
    String nodeId = taskInstance.getNodeId();
    //验证是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandRollBack=new ExpandTaskCommand();
    //设置命令为退回-节点
    expandTaskCommandRollBack.setCommandType("rollBack");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandRollBack.setUserCommandId("HandleCommand_5");
    //设置命令的处理任务号
    expandTaskCommandRollBack.setTaskId(taskInstance.getId());
    //设置命令所需的额外参数 rollBackNodeId
    Map <String,Object> paraMap = new HashMap<String,Object>();
    paraMap.put("rollBackNodeId", "UserTask_1");
    //设置命令参数
    expandTaskCommandRollBack.setParamMap(paraMap);
    //执行退回操作
    taskService.expandTaskComplete(expandTaskCommandRollBack, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查询此流程实例的当前任务号
    taskInstances = taskQuery.processInstanceId(processInstanceId).taskNotEnd().list();
    taskInstance = taskInstances.get(0);
    //查询当前任务号的节点名称
    nodeId = taskInstance.getNodeId();
    //验证退回操作后任务是否回到UserTask_1节点
    assertEquals(nodeId, "UserTask_1");
  }
View Full Code Here

    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //验证此时的独占任务为1
    assertEquals(taskInstances.size(), 1);
    //获得当前任务
    TaskInstance taskInstance = taskInstances.get(0);
    //获得当前任务节点
    String nodeId = taskInstance.getNodeId();
    //验证是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
   
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查询此流程实例的已经处理过的 UserTask_1节点的任务编号
    taskInstances = taskQuery.processInstanceId(processInstanceId).taskIsEnd().nodeId("UserTask_1").list();
    //处理过的 UserTask_1节点的任务编号
    String taskId = taskInstances.get(0).getId();
       
    //创建通用命令
    ExpandTaskCommand expandTaskCommandRollBack=new ExpandTaskCommand();
    //设置命令为退回-节点
    expandTaskCommandRollBack.setCommandType("rollBackTaskByTaskId");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandRollBack.setUserCommandId("HandleCommand_6");
    //设置命令的处理任务号
    expandTaskCommandRollBack.setTaskId(taskInstance.getId());
    //设置命令所需的额外参数 rollBackTaskId--需要退回的任务号
    Map <String,Object> paraMap = new HashMap<String,Object>();
    paraMap.put("rollBackTaskId", taskId);
    //设置命令参数
    expandTaskCommandRollBack.setParamMap(paraMap);
    //执行退回操作
    taskService.expandTaskComplete(expandTaskCommandRollBack, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查询此流程实例的当前任务号
    taskInstances = taskQuery.processInstanceId(processInstanceId).taskNotEnd().list();
    taskInstance = taskInstances.get(0);
    //查询当前任务号的节点名称
    nodeId = taskInstance.getNodeId();
    //验证退回操作后任务是否回到UserTask_1节点
    assertEquals(nodeId, "UserTask_1");
  }
View Full Code Here

    // 创建任务查询
    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //获得任务实例
    TaskInstance taskInstance = taskInstances.get(0);
    //获得当前任务节点
    String nodeId = taskInstance.getNodeId();
    //验证是否在第二个节点
    assertEquals(nodeId, "UserTask_2");
     
    //保存草稿操作前,验证任务为非草稿状态
    assertEquals(taskInstance.isDraft(),false);
    //创建通用命令
    ExpandTaskCommand expandTaskCommandSaveTaskDraft=new ExpandTaskCommand();
    //设置命令为保存草稿
    expandTaskCommandSaveTaskDraft.setCommandType("saveTaskDraft");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandSaveTaskDraft.setUserCommandId("HandleCommand_7");
    //设置命令的处理任务号
    expandTaskCommandSaveTaskDraft.setTaskId(taskInstance.getId());
    //执行这个启动并提交的命令,返回启动的流程实例
    taskService.expandTaskComplete(expandTaskCommandSaveTaskDraft, null);
   
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstance = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list().get(0);
    //保存草稿操作后,验证任务为草稿状态
    assertEquals(taskInstance.isDraft(),true);
  }
View Full Code Here

    // 创建任务查询
    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    List<TaskInstance> taskInstances = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list();
    //取得当前任务
    TaskInstance taskInstance = taskInstances.get(0);
   
    //暂停任务前,任务为非暂停状态
    assertEquals(taskInstance.isSuspended(),false);
    //创建通用命令
    ExpandTaskCommand expandTaskCommandSuspendTask=new ExpandTaskCommand();
    //设置命令为暂停任务
    expandTaskCommandSuspendTask.setCommandType("suspendTask");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandSuspendTask.setUserCommandId("HandleCommand_9");
    //设置命令的处理任务号
    expandTaskCommandSuspendTask.setTaskId(taskInstance.getId());
    //执行这个暂停任务的命令
    taskService.expandTaskComplete(expandTaskCommandSuspendTask, null);
   
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstance = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list().get(0);
    //暂停任务后,验证任务为暂停状态
    assertEquals(taskInstance.isSuspended(),true);
   
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandContinueTask=new ExpandTaskCommand();
    //设置命令为恢复任务
    expandTaskCommandContinueTask.setCommandType("continueTask");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandContinueTask.setUserCommandId("HandleCommand_10");
    //设置命令的处理任务号
    expandTaskCommandContinueTask.setTaskId(taskInstance.getId());
    //执行这个恢复任务的命令
    taskService.expandTaskComplete(expandTaskCommandContinueTask, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    taskInstance = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list().get(0);
    //恢复任务操作后,验证任务为未暂停状态
    assertEquals(taskInstance.isSuspended(),false);
  }
View Full Code Here

    //验证是流程实例是否存在
    assertNotNull(processInstanceId);
   
    TaskQuery taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
    TaskInstance taskInstance = taskQuery.taskAssignee("1200119390").processInstanceId(processInstanceId).taskNotEnd().list().get(0);
    //暂停任务后,验证任务为暂停状态
    assertEquals(taskInstance.getNodeId(),"UserTask_2");
   
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandPending=new ExpandTaskCommand();
    //设置命令为转办任务
    expandTaskCommandPending.setCommandType("pending");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandPending.setUserCommandId("HandleCommand_11");
   
    Map<String,Object> paramsMap = new HashMap<String,Object>();
    //设置转办的用户号
    paramsMap.put("pendingUserId", "13223212313");
    expandTaskCommandPending.setParamMap(paramsMap);
    //设置命令的处理任务号
    expandTaskCommandPending.setTaskId(taskInstance.getId());
    //执行这个转办的命令
    taskService.expandTaskComplete(expandTaskCommandPending, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查找 13223212313 的这个流程实例的当前独占任务
    taskInstance = taskQuery.taskAssignee("13223212313").processInstanceId(processInstanceId).taskNotEnd().list().get(0);
    //转办操作后,转办接收人的待办中存在这条任务
    assertNotNull(taskInstance);
   
    //查询是否有还回命令
    List<TaskCommandInst> taskCommandInsts=taskService.GetTaskCommandByTaskInstance(taskInstance,false);
    boolean isHaveResolvedCommand = false;
    //循环查找是否有还回命令
    for(TaskCommandInst taskCommandInst:taskCommandInsts){
      if("resolved".equals(taskCommandInst.getTaskCommandType())){
        isHaveResolvedCommand = true;
        break;
      }
    }
    //验证存在还回命令
    assertEquals(isHaveResolvedCommand,true);
   
    //创建通用命令
    ExpandTaskCommand expandTaskCommandResolved=new ExpandTaskCommand();
    //设置命令为还回任务
    expandTaskCommandResolved.setCommandType("resolved");
    //设置命令按钮的iD,与节点上处理命令设置一致
    expandTaskCommandResolved.setUserCommandId("HandleCommand_12");
    //设置命令的处理任务号
    expandTaskCommandResolved.setTaskId(taskInstance.getId());
    //执行这个还回任务的命令
    taskService.expandTaskComplete(expandTaskCommandResolved, null);
    //重置任务查询
    taskQuery = taskService.createTaskQuery();
    // 查找 1200119390 的这个流程实例的当前独占任务
View Full Code Here

TOP

Related Classes of com.founder.fix.fixflow.core.task.TaskInstance

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.