From 854ef3e6db777e77e9ff9471fcc3dd9d67c37142 Mon Sep 17 00:00:00 2001 From: jbarrez Date: Tue, 26 Apr 2011 14:29:48 +0000 Subject: [PATCH] UI: Expanding on expense process example --- .../explorer/demo/DemoDataGenerator.java | 1 - .../flow/listener/StartFlowClickListener.java | 21 +++++++++++++++++-- .../demo/process/expense_process.bpmn20.xml | 10 ++++----- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/demo/DemoDataGenerator.java b/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/demo/DemoDataGenerator.java index 46ebb8b012..c21e85cb83 100644 --- a/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/demo/DemoDataGenerator.java +++ b/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/demo/DemoDataGenerator.java @@ -190,7 +190,6 @@ public class DemoDataGenerator { .createDeployment() .name("Expense process") .addClasspathResource("org/activiti/explorer/demo/process/expense_process.bpmn20.xml") - .addClasspathResource("org/activiti/explorer/demo/process/expense_process.png") .deploy(); } diff --git a/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java b/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java index 0cc5543657..b36586ba8f 100644 --- a/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java +++ b/modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java @@ -13,11 +13,16 @@ package org.activiti.explorer.ui.flow.listener; +import java.util.List; + import org.activiti.engine.FormService; import org.activiti.engine.ProcessEngines; import org.activiti.engine.RuntimeService; +import org.activiti.engine.TaskService; import org.activiti.engine.form.StartFormData; import org.activiti.engine.repository.ProcessDefinition; +import org.activiti.engine.runtime.ProcessInstance; +import org.activiti.engine.task.Task; import org.activiti.explorer.ExplorerApp; import org.activiti.explorer.Messages; import org.activiti.explorer.NotificationManager; @@ -29,12 +34,14 @@ import com.vaadin.ui.Button.ClickListener; /** * @author Frederik Heremans + * @author Joram Barrez */ public class StartFlowClickListener implements ClickListener { - private static final long serialVersionUID = -1811557526259754226L; + private static final long serialVersionUID = 1L; protected RuntimeService runtimeService; + protected TaskService taskService; protected FormService formService; protected NotificationManager notificationManager; @@ -44,6 +51,7 @@ public class StartFlowClickListener implements ClickListener { public StartFlowClickListener(ProcessDefinition processDefinition, FlowPage flowPage) { this.runtimeService = ProcessEngines.getDefaultProcessEngine().getRuntimeService(); + this.taskService = ProcessEngines.getDefaultProcessEngine().getTaskService(); this.formService = ProcessEngines.getDefaultProcessEngine().getFormService(); this.notificationManager = ExplorerApp.get().getNotificationManager(); @@ -60,10 +68,19 @@ public class StartFlowClickListener implements ClickListener { } else { // Just start the process-instance since it has no form. // TODO: Error handling - runtimeService.startProcessInstanceById(processDefinition.getId()); + ProcessInstance processInstance = runtimeService.startProcessInstanceById(processDefinition.getId()); // Show notification of success notificationManager.showInformationNotification(Messages.FLOW_STARTED_NOTIFICATION, processDefinition.getName()); + + // Switch to inbox page in case a task of this process was created + List loggedInUsersTasks = taskService.createTaskQuery() + .taskAssignee(ExplorerApp.get().getLoggedInUser().getId()) + .processInstanceId(processInstance.getId()) + .list(); + if (loggedInUsersTasks.size() > 0) { + ExplorerApp.get().getViewManager().showInboxPage(loggedInUsersTasks.get(0).getId()); + } } diff --git a/modules/activiti-webapp-explorer2/src/main/resources/org/activiti/explorer/demo/process/expense_process.bpmn20.xml b/modules/activiti-webapp-explorer2/src/main/resources/org/activiti/explorer/demo/process/expense_process.bpmn20.xml index f9cdbbdd3b..ac6d4c7800 100644 --- a/modules/activiti-webapp-explorer2/src/main/resources/org/activiti/explorer/demo/process/expense_process.bpmn20.xml +++ b/modules/activiti-webapp-explorer2/src/main/resources/org/activiti/explorer/demo/process/expense_process.bpmn20.xml @@ -33,10 +33,10 @@ - + - + @@ -52,7 +52,7 @@ - + @@ -64,14 +64,14 @@ - + - + -- GitLab