public async Task <IEnumerable <TaskModel> > GetByPerson(Guid personId, TaskSearchOptions searchOptions = null) { if (searchOptions == null) { searchOptions = new TaskSearchOptions { Status = TaskStatus.Active }; } var tasks = await _taskRepository.GetByAssignedTo(personId, searchOptions); return(tasks.Select(BusinessMapper.Map <TaskModel>)); }
public async Task <IEnumerable <TaskModel> > GetByPerson(Guid personId, TaskSearchOptions searchOptions = null) { using (var unitOfWork = await DataConnectionFactory.CreateUnitOfWork()) { if (searchOptions == null) { searchOptions = new TaskSearchOptions { Status = TaskStatus.Active }; } var tasks = await unitOfWork.Tasks.GetByAssignedTo(personId, searchOptions); return(tasks.Select(t => new TaskModel(t))); } }
private void ApplySearch(Query query, TaskSearchOptions searchOptions) { if (searchOptions.Status == TaskStatus.Overdue) { query.WhereDate("Task.DueDate", "<", DateTime.Today); } else if (searchOptions.Status == TaskStatus.Active) { query.Where(q => q.Where("Task.Completed", false).OrWhereDate("Task.DueDate", ">=", DateTime.Today)); } else if (searchOptions.Status == TaskStatus.Completed) { query.Where("Task.Completed", true); } }
private void ApplySearch(Query query, TaskSearchOptions searchOptions) { if (searchOptions.Status == TaskStatus.Overdue) { query.Where($"{TblAlias}.Completed", false); query.Where($"{TblAlias}.DueDate", "<", DateTime.Today); } else if (searchOptions.Status == TaskStatus.Active) { query.Where($"{TblAlias}.Completed", false); } else if (searchOptions.Status == TaskStatus.Completed) { query.Where($"{TblAlias}.Completed", true); } }
public async Task <IActionResult> GetByPerson([FromRoute] Guid personId, [FromQuery] TaskSearchOptions searchOptions) { try { var accessResponse = await GetPermissionsForTasksPerson(personId, false); if (accessResponse.CanAccess || accessResponse.IsOwner) { var tasks = (await _taskService.GetByPerson(personId, searchOptions)).ToArray(); return(Ok(tasks)); } return(Error(HttpStatusCode.Forbidden, PermissionMessage)); } catch (Exception e) { return(HandleException(e)); } }
public async System.Threading.Tasks.Task <IEnumerable <Task> > GetByAssignedTo(Guid personId, TaskSearchOptions searchOptions = null) { var query = GenerateQuery(); query.Where($"{TblAlias}.AssignedToId", personId); if (searchOptions != null) { ApplySearch(query, searchOptions); } return(await ExecuteQuery(query)); }
public async Task <List <TaskModelWithActualStateAndCreator> > GetTasks(CancellationToken cancellationToken, string query, TaskSearchOptions searchOptions) { cancellationToken.ThrowIfCancellationRequested(); await loadAuthTask; var httpQuery = $"api/TaskModel/Search?query={query}&showFinished={!searchOptions.ShowOnlyNotFinished}&showUnassigned={searchOptions.ShowUnassignedToMe}"; var response = await _httpClient.GetAsync(httpQuery, cancellationToken); var text = await response.Content.ReadAsStringAsync(cancellationToken); var output = JsonSerializer.Deserialize <List <TaskModelWithActualStateAndCreator> >(text, new JsonSerializerOptions { PropertyNameCaseInsensitive = true }); return(output); }