自己改别人的会签-2.1

请不要骂我,我在别人的基础上改的,但是可以跑通的。

创建子流程:

import java.util.Iterator;
import java.util.List;
import java.util.Map;

import org.jbpm.api.Configuration;
import org.jbpm.api.ProcessInstance;
import org.jbpm.api.TaskService;
import org.jbpm.api.activity.ActivityExecution;
import org.jbpm.api.activity.ExternalActivityBehaviour;
import org.jbpm.api.model.Activity;
import org.jbpm.api.model.Transition;
import org.jbpm.api.task.Task;
import org.jbpm.pvm.internal.env.EnvironmentImpl;
import org.jbpm.pvm.internal.history.HistoryEvent;
import org.jbpm.pvm.internal.history.events.TaskActivityStart;
import org.jbpm.pvm.internal.model.ExecutionImpl;
import org.jbpm.pvm.internal.session.DbSession;
import org.jbpm.pvm.internal.task.TaskImpl;

/**
* @author zr
*
*/
public class Custom implements ExternalActivityBehaviour {

private static final long serialVersionUID = 1L;

public void execute(ActivityExecution activityExecution) throws Exception {
ExecutionImpl executionimpl = (ExecutionImpl) activityExecution;
executionimpl.setVariable("finalResult", true) ;
DbSession dbsession = EnvironmentImpl.getFromCurrent(DbSession.class);
TaskImpl taskimpl = dbsession.createTask();
taskimpl.setName("customTem");
taskimpl.setExecution(executionimpl);
taskimpl.setProcessInstance(executionimpl.getProcessInstance());
taskimpl.setSignalling(false);
taskimpl.setExecutionDbid(executionimpl.getDbid());
dbsession.save(taskimpl);
HistoryEvent.fire(new TaskActivityStart(taskimpl), executionimpl);
// 子任务
TaskImpl subtaskimpl1 = taskimpl.createSubTask();
subtaskimpl1.setName("huigao1");
subtaskimpl1.setAssignee("huigao1");
subtaskimpl1.setSignalling(false);
subtaskimpl1.setExecutionDbid(executionimpl.getDbid());
dbsession.save(subtaskimpl1);
HistoryEvent.fire(new TaskActivityStart(subtaskimpl1), executionimpl);
TaskImpl subtaskimpl2 = taskimpl.createSubTask();
subtaskimpl2.setName("huigao2");
subtaskimpl2.setAssignee("huigao2");
subtaskimpl2.setExecutionDbid(executionimpl.getDbid());
subtaskimpl2.setSignalling(false);
dbsession.save(subtaskimpl2);
HistoryEvent.fire(new TaskActivityStart(subtaskimpl2), executionimpl);
// 流程等待
executionimpl.waitForSignal();
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值