task.setPriority(createTaskPayload.getPriority()); if (createTaskPayload.getAssignee() != null && !createTaskPayload.getAssignee().isEmpty()) { task.setAssignee(createTaskPayload.getAssignee());
@Override public void setAssignee(String assignee) { activiti5Task.setAssignee(assignee); }
public Result deleteCurrentTaskInstance(String taskId, HistoricTaskInstance taskInstance) { //删除正在执行的任务 //删除HistoricTaskInstance String sql_task = "delete from " + managementService.getTableName(HistoricTaskInstance.class) + " where " + "ID_='" + taskId + "' or ID_='" + taskInstance.getId() + "'"; this.executeSql(sql_task); //删除HistoricActivityInstance String sql_activity = "delete from " + managementService.getTableName(HistoricActivityInstance.class) + " where " + "TASK_ID_='" + taskId + "' or TASK_ID_='" + taskInstance.getId() + "'"; this.executeSql(sql_activity); //获取当前的任务,保存签收人 Task task = taskService.createTaskQuery().executionId(taskInstance.getExecutionId()).singleResult(); task.setAssignee(taskInstance.getAssignee()); task.setOwner(taskInstance.getOwner()); taskService.saveTask(task); //解决HistoricActivityInstance的Assignee为空的现象 if (!StrUtil.isEmpty(taskInstance.getAssignee())) { String sql_update = "update " + managementService.getTableName(HistoricActivityInstance.class) + " set " + "ASSIGNEE_='" + taskInstance.getAssignee() + "' where TASK_ID_='" + task.getId() + "'"; this.executeSql(sql_update); } String sql_update_execution = "update " + managementService.getTableName(Execution.class) + " set " + "ACT_ID_='" + taskInstance.getTaskDefinitionKey() + "' where ID_='" + taskInstance.getExecutionId() + "'"; this.executeSql(sql_update_execution); return new Result(true); }
newTask.setParentTaskId(parentTask.getId()); if (parentTask.getAssignee() != null) { newTask.setAssignee(parentTask.getAssignee()); } else { newTask.setAssignee(loggedInUser.getId());
protected void submitted(SubmitEvent event) { // Update assignee String selectedUser = involvePeoplePopupWindow.getSelectedUserId(); String originAssignee = task.getAssignee(); task.setAssignee(selectedUser); if (selectedUser != null) { ProcessEngines.getDefaultProcessEngine().getTaskService().setAssignee(task.getId(), selectedUser); } else if (originAssignee != null) { ProcessEngines.getDefaultProcessEngine().getTaskService().deleteUserIdentityLink(task.getId(), originAssignee, IdentityLinkType.ASSIGNEE); } else { return; } // Update UI taskDetailPanel.notifyAssigneeChanged(); } protected void cancelled(SubmitEvent event) {
private WorkflowTask endNormalTask(String taskId, String localTaskId, String transition) { // Retrieve task Task task = taskService.createTaskQuery().taskId(localTaskId).singleResult(); if(task == null) { String msg = messageService.getMessage(ERR_END_UNEXISTING_TASK, taskId); throw new WorkflowException(msg); } // Check if the assignee is equal to the current logged-in user. If not, assign task before ending String currentUserName = AuthenticationUtil.getFullyAuthenticatedUser(); if(task.getAssignee() == null || !task.getAssignee().equals(currentUserName)) { taskService.setAssignee(localTaskId, currentUserName); // Also update pojo used to set the outcome, this will read assignee as wel task.setAssignee(currentUserName); // Re-fetch the task-entity since it's revision has been updated by the setAssignee() call task = taskService.createTaskQuery().taskId(localTaskId).singleResult(); } setOutcome(task, transition); taskService.complete(localTaskId); // The task should have a historicTaskInstance HistoricTaskInstance historicTask = historyService.createHistoricTaskInstanceQuery().taskId(task.getId()).singleResult(); return typeConverter.convert(historicTask); }
private WorkflowTask endNormalTask(String taskId, String localTaskId, String transition) { // Retrieve task Task task = taskService.createTaskQuery().taskId(localTaskId).singleResult(); if(task == null) { String msg = messageService.getMessage(ERR_END_UNEXISTING_TASK, taskId); throw new WorkflowException(msg); } // Check if the assignee is equal to the current logged-in user. If not, assign task before ending String currentUserName = AuthenticationUtil.getFullyAuthenticatedUser(); if(task.getAssignee() == null || !task.getAssignee().equals(currentUserName)) { taskService.setAssignee(localTaskId, currentUserName); // Also update pojo used to set the outcome, this will read assignee as wel task.setAssignee(currentUserName); // Re-fetch the task-entity since it's revision has been updated by the setAssignee() call task = taskService.createTaskQuery().taskId(localTaskId).singleResult(); } setOutcome(task, transition); taskService.complete(localTaskId); // The task should have a historicTaskInstance HistoricTaskInstance historicTask = historyService.createHistoricTaskInstanceQuery().taskId(task.getId()).singleResult(); return typeConverter.convert(historicTask); }
task.setAssignee(taskRequest.getAssignee());