//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void throwEndSignalForNonTenant() public virtual void throwEndSignalForNonTenant() { testRule.deploy(SIGNAL_START_PROCESS, SIGNAL_CATCH_PROCESS, SIGNAL_END_THROW_PROCESS); testRule.deployForTenant(TENANT_ONE, SIGNAL_START_PROCESS, SIGNAL_CATCH_PROCESS); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionWithoutTenantId().execute(); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionTenantId(TENANT_ONE).execute(); engineRule.RuntimeService.startProcessInstanceByKey("signalThrow"); TaskQuery query = engineRule.TaskService.createTaskQuery(); assertThat(query.withoutTenantId().count(), @is(2L)); assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(0L)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void sendSignalToIntermediateCatchEventForNonTenant() public virtual void sendSignalToIntermediateCatchEventForNonTenant() { testRule.deploy(SIGNAL_CATCH_PROCESS); testRule.deployForTenant(TENANT_ONE, SIGNAL_CATCH_PROCESS); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionWithoutTenantId().execute(); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionTenantId(TENANT_ONE).execute(); engineRule.RuntimeService.createSignalEvent("signal").withoutTenantId().send(); TaskQuery query = engineRule.TaskService.createTaskQuery(); assertThat(query.count(), @is(1L)); assertThat(query.singleResult().TenantId, @is(nullValue())); }
public virtual void testCannotExecuteStoredFilter() { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.camunda.bpm.engine.task.TaskQuery filterQuery = taskService.createTaskQuery().dueAfterExpression(STATE_MANIPULATING_EXPRESSION); TaskQuery filterQuery = taskService.createTaskQuery().dueAfterExpression(STATE_MANIPULATING_EXPRESSION); // store a filter bypassing validation // the API way of doing this would be by reconfiguring the engine string filterId = processEngineConfiguration.CommandExecutorTxRequired.execute(new CommandAnonymousInnerClass(this, filterQuery)); extendFilterAndValidateFailingQuery(filterId, null); // cleanup filterService.deleteFilter(filterId); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void correlateMessageToIntermediateCatchEventWithoutTenantId() public virtual void correlateMessageToIntermediateCatchEventWithoutTenantId() { testRule.deploy(MESSAGE_CATCH_PROCESS); testRule.deployForTenant(TENANT_ONE, MESSAGE_CATCH_PROCESS); engineRule.RuntimeService.createProcessInstanceByKey("messageCatch").processDefinitionWithoutTenantId().execute(); engineRule.RuntimeService.createProcessInstanceByKey("messageCatch").processDefinitionTenantId(TENANT_ONE).execute(); engineRule.RuntimeService.createMessageCorrelation("message").withoutTenantId().correlate(); TaskQuery query = engineRule.TaskService.createTaskQuery(); assertThat(query.count(), @is(1L)); assertThat(query.singleResult().TenantId, @is(nullValue())); }
public IEnumerable <FCEventModel> GetUnscheduledTasks() { var list = new List <FCEventModel>(); var query = new TaskQuery() { NotCompleted = true }; var taskResult = Tasks.GetTasks(query); foreach (var task in taskResult.Tasks.Where(x => x.Due.Year == 1)) { list.Add(Converter.ToEvent(task)); } return(list); }
/// <summary> /// 获取当前用户待办任务列表 /// </summary> private void GetReadyTasks() { IWorkflowService wfService = new WorkflowService(); var en = new TaskQuery { UserID = LoginUserID.ToString() }; IList <TaskViewEntity> taskViewList = wfService.GetReadyTasks(en); if (taskViewList != null) { Repeater2.DataSource = taskViewList; Repeater2.DataBind(); } }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testJoinAfterNestedScopes() public virtual void testJoinAfterNestedScopes() { // given runtimeService.startProcessInstanceByKey("process"); TaskQuery query = taskService.createTaskQuery(); // when Task task = query.taskDefinitionKey("task").singleResult(); taskService.complete(task.Id); // then assertNull(query.taskDefinitionKey("taskAfterJoin").singleResult()); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void correlateMessagesToIntermediateCatchEventsForMultipleTenants() public virtual void correlateMessagesToIntermediateCatchEventsForMultipleTenants() { testRule.deployForTenant(TENANT_ONE, MESSAGE_CATCH_PROCESS); testRule.deployForTenant(TENANT_TWO, MESSAGE_CATCH_PROCESS); engineRule.RuntimeService.createProcessInstanceByKey("messageCatch").processDefinitionTenantId(TENANT_ONE).execute(); engineRule.RuntimeService.createProcessInstanceByKey("messageCatch").processDefinitionTenantId(TENANT_TWO).execute(); engineRule.RuntimeService.createMessageCorrelation("message").correlateAll(); TaskQuery query = engineRule.TaskService.createTaskQuery(); assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L)); assertThat(query.tenantIdIn(TENANT_TWO).count(), @is(1L)); }
/// <summary> /// 获取办结任务列表 /// </summary> /// <param name="query"></param> /// <returns></returns> public IList <TaskViewEntity> GetCompletedTasks(TaskQuery query) { int allRowsCount = 0; var taskManager = new TaskManager(); var taskList = taskManager.GetCompletedTasks(query, out allRowsCount); if (taskList != null) { return(taskList.ToList()); } else { return(null); } }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReturnTasksByExtendingQuery_OrInExtendedQuery() public virtual void shouldReturnTasksByExtendingQuery_OrInExtendedQuery() { // given TaskQuery extendedQuery = taskService.createTaskQuery().or().taskName("aTaskName").endOr().or().taskNameLike("anotherTaskName").endOr(); TaskQuery extendingQuery = taskService.createTaskQuery().taskCandidateGroup("aCandidateGroup"); // when TaskQueryImpl result = (TaskQueryImpl)((TaskQueryImpl)extendedQuery).extend(extendingQuery); // then assertEquals("aTaskName", result.Queries[1].Name); assertEquals("anotherTaskName", result.Queries[2].NameLike); assertEquals("aCandidateGroup", result.CandidateGroup); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void sendSignalToIntermediateCatchEventsForMultipleTenants() public virtual void sendSignalToIntermediateCatchEventsForMultipleTenants() { testRule.deployForTenant(TENANT_ONE, SIGNAL_CATCH_PROCESS); testRule.deployForTenant(TENANT_TWO, SIGNAL_CATCH_PROCESS); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionTenantId(TENANT_ONE).execute(); engineRule.RuntimeService.createProcessInstanceByKey("signalCatch").processDefinitionTenantId(TENANT_TWO).execute(); engineRule.RuntimeService.createSignalEvent("signal").send(); TaskQuery query = engineRule.TaskService.createTaskQuery(); assertThat(query.tenantIdIn(TENANT_ONE).count(), @is(1L)); assertThat(query.tenantIdIn(TENANT_TWO).count(), @is(1L)); }
public ActionResult Save(string name, string keyword, bool isCreator = true, int days = 0, UserTaskOrder order = UserTaskOrder.CreateTime, bool?isCompleted = null, int queryId = 0) { if (string.IsNullOrEmpty(name)) { throw new ArgumentException("请填写任务名称"); } TaskQueryParameter parameter = null; TaskQuery model = null; if (queryId > 0) { model = Core.QueryManager.GetModel(queryId); if (model == null) { throw new ArgumentException("参数错误"); } if (model.UserID != Identity.UserID) { throw new HttpException(401, "没有权限"); } parameter = model.ConvertToTaskQueryParameter(); } else { parameter = new TaskQueryParameter { SearchKey = keyword, IsCreator = isCreator, ReceiverID = isCreator ? 0 : Identity.UserID, IsCompleted = isCompleted, Order = order, GetReceiver = true, GetCreator = true, }; model = new TaskQuery { UserID = Identity.UserID, }; } model.Content = parameter.ToJson(); model.Name = name; Core.QueryManager.Save(model); return(SuccessJsonResult(new { id = model.ID })); }
public IEnumerable <Task> GetTasks(TaskQuery query) { var res = _unitOfWork.Repository <Task>().All(); if (!string.IsNullOrEmpty(query.BoardId)) { res = res.Where(x => x.BoardId == Guid.Parse(query.BoardId)); } if (!string.IsNullOrEmpty(query.MemberId)) { res = res.Where(x => x.ReporterUserId == Guid.Parse(query.MemberId)); } return(res); }
//executeJobs //JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testExecuteJobWithAuthenticatedTenant() public virtual void testExecuteJobWithAuthenticatedTenant() { string noFailProcessInstanceId = engineRule.RuntimeService.startProcessInstanceByKey("noFail").Id; TaskQuery taskQuery = engineRule.TaskService.createTaskQuery().processInstanceId(noFailProcessInstanceId); assertEquals(1, taskQuery.list().size()); string timerJobId = managementService.createJobQuery().processInstanceId(noFailProcessInstanceId).singleResult().Id; identityService.setAuthentication("aUserId", null, Arrays.asList(TENANT_ONE)); managementService.executeJob(timerJobId); // then assertEquals(0, taskQuery.list().size()); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testExecuteJobWithDisabledTenantCheck() public virtual void testExecuteJobWithDisabledTenantCheck() { string noFailProcessInstanceId = engineRule.RuntimeService.startProcessInstanceByKey("noFail").Id; string timerJobId = managementService.createJobQuery().processInstanceId(noFailProcessInstanceId).singleResult().Id; identityService.setAuthentication("aUserId", null); engineRule.ProcessEngineConfiguration.TenantCheckEnabled = false; managementService.executeJob(timerJobId); TaskQuery taskQuery = engineRule.TaskService.createTaskQuery().processInstanceId(noFailProcessInstanceId); // then assertEquals(0, taskQuery.list().size()); }
public virtual void testStoreFilterWithExpression() { TaskQuery taskQuery = taskService.createTaskQuery().dueAfterExpression(STATE_MANIPULATING_EXPRESSION); Filter filter = filterService.newTaskFilter("filter"); filter.Query = taskQuery; try { filterService.saveFilter(filter); } catch (ProcessEngineException e) { assertTextPresent(EXPECTED_STORED_QUERY_FAILURE_MESSAGE, e.Message); } assertTrue(fieldIsUnchanged()); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testTimerWithCycle() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET: public virtual void testTimerWithCycle() { runtimeService.startProcessInstanceByKey("nonInterruptingCycle").Id; TaskQuery tq = taskService.createTaskQuery().taskDefinitionKey("timerFiredTask"); assertEquals(0, tq.count()); moveByHours(1); assertEquals(1, tq.count()); moveByHours(1); assertEquals(2, tq.count()); Task task = taskService.createTaskQuery().taskDefinitionKey("task").singleResult(); taskService.complete(task.Id); moveByHours(1); assertEquals(2, tq.count()); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testTwoSubProcessInParallel() public virtual void testTwoSubProcessInParallel() { ProcessInstance pi = runtimeService.startProcessInstanceByKey("twoSubProcessInParallel"); TaskQuery taskQuery = taskService.createTaskQuery().processInstanceId(pi.Id).orderByTaskName().asc(); IList <Task> tasks = taskQuery.list(); // After process start, both tasks in the subprocesses should be active assertEquals("Task in subprocess A", tasks[0].Name); assertEquals("Task in subprocess B", tasks[1].Name); // validate activity instance tree ActivityInstance rootActivityInstance = runtimeService.getActivityInstance(pi.ProcessInstanceId); assertEquals(pi.ProcessDefinitionId, rootActivityInstance.ActivityId); assertEquals(2, rootActivityInstance.ChildActivityInstances.Length); ActivityInstance[] childActivityInstances = rootActivityInstance.ChildActivityInstances; foreach (ActivityInstance activityInstance in childActivityInstances) { assertTrue(Arrays.asList(new string[] { "subProcessA", "subProcessB" }).contains(activityInstance.ActivityId)); ActivityInstance[] subProcessChildren = activityInstance.ChildActivityInstances; assertEquals(1, subProcessChildren.Length); assertTrue(Arrays.asList(new string[] { "subProcessATask", "subProcessBTask" }).contains(subProcessChildren[0].ActivityId)); } // Completing both tasks should active the tasks outside the subprocesses taskService.complete(tasks[0].Id); tasks = taskQuery.list(); assertEquals("Task after subprocess A", tasks[0].Name); assertEquals("Task in subprocess B", tasks[1].Name); taskService.complete(tasks[1].Id); tasks = taskQuery.list(); assertEquals("Task after subprocess A", tasks[0].Name); assertEquals("Task after subprocess B", tasks[1].Name); // Completing these tasks should end the process taskService.complete(tasks[0].Id); taskService.complete(tasks[1].Id); assertProcessEnded(pi.Id); }
public IActionResult GetTodos() { try { List <Todo> todos = TaskQuery.GetTodos(); List <TodoViewModel> todoViews = new List <TodoViewModel>(); foreach (Todo todo in todos) { TodoViewModel todoViewModel = new TodoViewModel(todo.Id, todo.TaskName, TaskPropertiesConverter.ConvertPriorityToString(todo)); todoViews.Add(todoViewModel); } return(Ok(todoViews)); } catch (Exception exception) { return(Problem(exception.Message)); } }
// ACT-482 //JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Deployment public void testNestedForkJoin() public virtual void testNestedForkJoin() { string pid = runtimeService.startProcessInstanceByKey("nestedForkJoin").Id; // After process startm, only task 0 should be active TaskQuery query = taskService.createTaskQuery().orderByTaskName().asc(); IList <Task> tasks = query.list(); assertEquals(1, tasks.Count); assertEquals("Task 0", tasks[0].Name); assertEquals(1, runtimeService.getActivityInstance(pid).ChildActivityInstances.Length); // Completing task 0 will create Task A and B taskService.complete(tasks[0].Id); tasks = query.list(); assertEquals(2, tasks.Count); assertEquals("Task A", tasks[0].Name); assertEquals("Task B", tasks[1].Name); assertEquals(2, runtimeService.getActivityInstance(pid).ChildActivityInstances.Length); // Completing task A should not trigger any new tasks taskService.complete(tasks[0].Id); tasks = query.list(); assertEquals(1, tasks.Count); assertEquals("Task B", tasks[0].Name); assertEquals(2, runtimeService.getActivityInstance(pid).ChildActivityInstances.Length); // Completing task B creates tasks B1 and B2 taskService.complete(tasks[0].Id); tasks = query.list(); assertEquals(2, tasks.Count); assertEquals("Task B1", tasks[0].Name); assertEquals("Task B2", tasks[1].Name); assertEquals(3, runtimeService.getActivityInstance(pid).ChildActivityInstances.Length); // Completing B1 and B2 will activate both joins, and process reaches task C taskService.complete(tasks[0].Id); taskService.complete(tasks[1].Id); tasks = query.list(); assertEquals(1, tasks.Count); assertEquals("Task C", tasks[0].Name); assertEquals(1, runtimeService.getActivityInstance(pid).ChildActivityInstances.Length); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReturnTasksWithTaskVariableValueEqualsOrTaskVariableValueGreaterThan() public virtual void shouldReturnTasksWithTaskVariableValueEqualsOrTaskVariableValueGreaterThan() { // given Task task1 = taskService.newTask(); taskService.saveTask(task1); taskService.setVariable(task1.Id, "aLongValue", 789L); Task task2 = taskService.newTask(); taskService.saveTask(task2); taskService.setVariable(task2.Id, "anEvenLongerValue", 1000L); // when TaskQuery query = taskService.createTaskQuery().or().taskVariableValueEquals("aLongValue", 789L).taskVariableValueGreaterThan("anEvenLongerValue", 999L).endOr(); // then assertEquals(2, query.count()); }
public ResponseResult <List <TaskViewEntity> > GetTaskViewList([FromBody] TaskQuery query) { var result = ResponseResult <List <TaskViewEntity> > .Default(); try { var wfService = new WorkflowService(); var entity = wfService.GetReadyTasks(query).ToList(); result = ResponseResult <List <TaskViewEntity> > .Success(entity); } catch (System.Exception ex) { result = ResponseResult <List <TaskViewEntity> > .Error( string.Format("获取任务信息失败!{0}", ex.Message) ); } return(result); }
public virtual void testExtendStoredFilterByExpression() { // given a stored filter TaskQuery taskQuery = taskService.createTaskQuery().dueAfterExpression("${now()}"); Filter filter = filterService.newTaskFilter("filter"); filter.Query = taskQuery; filterService.saveFilter(filter); // it is possible to execute the stored query with an expression assertEquals(new long?(0), filterService.count(filter.Id)); assertEquals(0, filterService.list(filter.Id).Count); // but it is not possible to executed the filter with an extended query that uses expressions extendFilterAndValidateFailingQuery(filter, taskService.createTaskQuery().dueAfterExpression(STATE_MANIPULATING_EXPRESSION)); // cleanup filterService.deleteFilter(filter.Id); }
public async Task Handle_HappyFlow() { // Arrange TaskQuery request = new TaskQuery { Id = ConstantsTasksTest.Id }; TaskDomain tasktoReturn = ConstantsTasksTest.taskDomain; _tasksRepoByAccountMock.Setup(x => x.TaskExists(ConstantsTasksTest.taskDomain.AccountId, ConstantsTasksTest.Id)).Returns(true); _tasksRepoByAccountMock.Setup(x => x.GetTask(ConstantsTasksTest.taskDomain.AccountId, ConstantsTasksTest.Id)).Returns(tasktoReturn); // Act Result <TaskDomain> result = await _taskQueryHandler.Handle(request, CancellationToken.None); // Assert result.IsSuccess.Should().BeTrue(); result.Value.Should().Be(tasktoReturn); }
public virtual IList <TaskDto> queryTasks(TaskQueryDto queryDto, int?firstResult, int?maxResults) { ProcessEngine engine = ProcessEngine; queryDto.ObjectMapper = ObjectMapper; TaskQuery query = queryDto.toQuery(engine); IList <Task> matchingTasks = executeTaskQuery(firstResult, maxResults, query); IList <TaskDto> tasks = new List <TaskDto>(); foreach (Task task in matchingTasks) { TaskDto returnTask = TaskDto.fromEntity(task); tasks.Add(returnTask); } return(tasks); }
public List <SPGetTask_Result> Filter(TaskQuery query, out int count) { count = 0; int pageNumber = query.PageNumber != 0 ? query.PageNumber : 1; var start = 0; var limit = query.PageSize; start = (pageNumber - 1) * limit; int totalRow = 0; var keyword = string.IsNullOrEmpty(query.Keyword) != true ? query.Keyword : ""; string userId = query.UserId; DateTime?startDate = query.FromDate; DateTime?endDate = query.ToDate; int? statusId = query.StatusId; bool? assignToMe = query.AssignToMe; bool? relativeToMe = query.RelativeToMe; List <SPGetTask_Result> result = new List <SPGetTask_Result>(); ObjectParameter prTotalRow = new ObjectParameter("total", totalRow); bool?documentReceived = null; if (query.DocumentReceived.HasValue) { documentReceived = query.DocumentReceived.Value != 1 ? false : true; } if (query.StatusId != 0) { Status status = _statusRepository.GetById(query.StatusId); if (status.Code == "HH") { result = _entities.SPGetTask(userId, 0, startDate, endDate, Util.DetecVowel(keyword), query.DocumentId, documentReceived, assignToMe, relativeToMe, start, limit, prTotalRow).Where(n => n.Expired == true).ToList(); } else { result = _entities.SPGetTask(userId, statusId, startDate, endDate, Util.DetecVowel(keyword), query.DocumentId, documentReceived, assignToMe, relativeToMe, start, limit, prTotalRow).ToList(); } } else { result = _entities.SPGetTask(userId, statusId, startDate, endDate, Util.DetecVowel(keyword), query.DocumentId, documentReceived, assignToMe, relativeToMe, start, limit, prTotalRow).ToList(); } count = (prTotalRow.Value == null) ? 0 : Convert.ToInt32(prTotalRow.Value); return(result); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testVariableConditionWithVariableEvent() public virtual void testVariableConditionWithVariableEvent() { //given process with boundary conditional event and defined variable name and event //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.camunda.bpm.model.bpmn.BpmnModelInstance modelInstance = org.camunda.bpm.model.bpmn.Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY).startEvent().intermediateCatchEvent(CONDITIONAL_EVENT).conditionalEventDefinition().condition(CONDITION_EXPR).camundaVariableEvents(CONDITIONAL_VAR_EVENT_UPDATE).conditionalEventDefinitionDone().userTask().name(TASK_AFTER_CONDITION).endEvent().done(); BpmnModelInstance modelInstance = Bpmn.createExecutableProcess(CONDITIONAL_EVENT_PROCESS_KEY).startEvent().intermediateCatchEvent(CONDITIONAL_EVENT).conditionalEventDefinition().condition(CONDITION_EXPR).camundaVariableEvents(CONDITIONAL_VAR_EVENT_UPDATE).conditionalEventDefinitionDone().userTask().name(TASK_AFTER_CONDITION).endEvent().done(); engine.manageDeployment(repositoryService.createDeployment().addModelInstance(CONDITIONAL_MODEL, modelInstance).deploy()); IDictionary <string, object> variables = Variables.createVariables(); variables[VARIABLE_NAME + 1] = 0; ProcessInstance procInst = runtimeService.startProcessInstanceByKey(CONDITIONAL_EVENT_PROCESS_KEY, variables); TaskQuery taskQuery = taskService.createTaskQuery().processInstanceId(procInst.Id); Execution execution = runtimeService.createExecutionQuery().processInstanceId(procInst.Id).activityId(CONDITIONAL_EVENT).singleResult(); assertNotNull(execution); assertEquals(1, conditionEventSubscriptionQuery.list().Count); //when variable with name `variable` is set on execution runtimeService.setVariable(procInst.Id, VARIABLE_NAME, 1); //then nothing happens execution = runtimeService.createExecutionQuery().processInstanceId(procInst.Id).activityId(CONDITIONAL_EVENT).singleResult(); assertNotNull(execution); assertEquals(1, conditionEventSubscriptionQuery.list().Count); //when variable with name `variable1` is updated runtimeService.setVariable(procInst.Id, VARIABLE_NAME + 1, 1); //then execution is at user task after conditional intermediate event Task task = taskQuery.singleResult(); assertEquals(TASK_AFTER_CONDITION, task.Name); assertEquals(0, conditionEventSubscriptionQuery.list().Count); //and task can be completed which ends process instance taskService.complete(task.Id); assertNull(taskService.createTaskQuery().singleResult()); assertNull(runtimeService.createProcessInstanceQuery().singleResult()); }
public IQueryable <Task> Where(TaskQuery query) { var linq = Include(x => x.TaskAssignees).Include(x => x.TaskLabels); if (!string.IsNullOrEmpty(query.BoardId)) { var boardId = Guid.Parse(query.BoardId); return(linq.Where(x => x.EntityStatus == EntityStatus.Activated && x.BoardId == boardId)); } if (!string.IsNullOrEmpty(query.MemberId)) { var memberId = Guid.Parse(query.MemberId); var taskAssigned = _taskAssigneeService.Include(x => x.Task).ThenInclude(x => x.WorkLogs).Where(x => x.UserId == memberId).Select(x => x.Task); var taskLogged = _workLogService.Include(x => x.Task).Where(x => x.UserId == memberId).Select(x => x.Task).GroupBy(x => x.Id).Select(x => x.First()); return(taskAssigned.Union(taskLogged).OrderBy(x => x.BoardId).ThenBy(x => x.TaskKey)); } return(linq.Where(x => x.EntityStatus == EntityStatus.Activated)); }
public async Task Handle_TaskDoesntExists_ReturnSpecificError() { // Arrange TaskQuery request = new TaskQuery { Id = ConstantsTasksTest.Id }; _tasksRepoByAccountMock.Setup(x => x.TaskExists(ConstantsTasksTest.taskDomain.AccountId, ConstantsTasksTest.Id)).Returns(false); // Act Result <TaskDomain> result = await _taskQueryHandler.Handle(request, CancellationToken.None); // Assert result.IsSuccess.Should().BeFalse(); result.Errors.Count.Should().Be(1); var expectedError = new CustomError(ErrorsCodesContants.TASK_ID_NOT_FOUND, ErrorsMessagesConstants.TASK_ID_NOT_FOUND, 404); result.Errors[0].Should().BeEquivalentTo(expectedError); }
public void Save(TaskQuery model) { using (var db = GetDbContext()) { if (model.ID > 0) { var entity = db.TaskQueries.FirstOrDefault(e => e.ID == model.ID); if (entity != null) { entity.Name = model.Name; entity.Content = model.Content; } } else { db.TaskQueries.Add(model); } db.SaveChanges(); } }