public void ActivityDemo(){
ProcessEngineConfiguration cfg = new StandaloneProcessEngineConfiguration()
.setJdbcUrl("")
.setJdbcUsername("")
.setJdbcPassword("")
.setJdbcDriver("")
.setDatabaseSchemaUpdate("");
// 实例化流程引擎
ProcessEngine processEngine = cfg.buildProcessEngine();
String pName = processEngine.getName();
String ver = ProcessEngine.VERSION;
//部署流程定义
RepositoryService repositoryService = processEngine.getRepositoryService();
Deployment deployment = repositoryService.createDeployment()
.addClasspathResource("").deploy();
ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery()
.deploymentId(deployment.getId()).singleResult();
// 运行流程实例
RuntimeService runtimeService = processEngine.getRuntimeService();
ProcessInstance processInstance = runtimeService.startProcessInstanceByKey("");
TaskService taskService = processEngine.getTaskService();
FormService formService = processEngine.getFormService();
HistoryService historyService = processEngine.getHistoryService();
while (processInstance != null && !processInstance.isEnded()){
List<Task> tasks = taskService.createTaskQuery().taskCandidateGroup("").list();
for (int i = 0; i <tasks.size() ; i++) {
Task task = tasks.get(i);
Map<String,Object> map = new HashMap<String, Object>();
FormData formData = formService.getTaskFormData(task.getId());
for (FormProperty formProperty:formData.getFormProperties()) {
if (StringFormType.class.isInstance(formProperty.getType())){
map.put(formProperty.getId(),"");
}else if (LongFormType.class.isInstance(formProperty.getType())){
map.put(formProperty.getId(),"");
}else{
}
}
taskService.complete(task.getId(),map);
HistoricActivityInstance historicActivityInstance = null;
List<HistoricActivityInstance> activitys = historyService.createHistoricActivityInstanceQuery()
.processInstanceId(processInstance.getId()).finished()
.orderByHistoricActivityInstanceEndTime()
.asc()
.list();
for (HistoricActivityInstance activity:activitys) {
if (activity.getActivityType() == "startEvent"){
}
if (activity.getActivityType() == "endEvent"){
}
}
processInstance = runtimeService.createProcessInstanceQuery()
.processInstanceId(processInstance.getId()).singleResult();
}
}
}