private async Task <IEnumerable <JobSummary> > GetFilteredOpenJobsForUser(User user, CancellationToken cancellationToken) { var openRequests = await _requestService.GetOpenJobsAsync(user, false, cancellationToken); if (openRequests == null) { return(null); } var filterSet = await _filterService.GetDefaultSortAndFilterSet(JobSet.UserOpenRequests_NotMatchingCriteria, null, new List <JobStatuses> { JobStatuses.Open }, user, cancellationToken); var filterRequest = new JobFilterRequest() { JobSet = JobSet.UserOpenRequests_NotMatchingCriteria, ResultsToShow = 1000, ResultsToShowIncrement = 20 }; filterRequest.UpdateFromFilterSet(filterSet); return(_filterService.SortAndFilterJobs(openRequests, filterRequest)); }
public async Task <BaseResponse> GetWithFilter(JobFilterRequest filter) { if (filter.State == 0) { if (filter.Type == -1) { return(await GetAll()); } else { return(await GetWithType(filter.Type)); } } else if (filter.State == 1) { return(await GetActive(filter.Type)); } else { return(await GetIsDone(filter.Type)); } }
public async Task <IViewComponentResult> InvokeAsync(JobFilterRequest jobFilterRequest, Action hideFilterPanelCallback, Action noJobsCallback, CancellationToken cancellationToken) { var user = await _authService.GetCurrentUser(HttpContext, cancellationToken); if (user == null) { throw new UnauthorizedAccessException("No user in session"); } if (jobFilterRequest.JobSet.GroupAdminView()) { if (!(await _groupMemberService.GetUserHasRole(user.ID, jobFilterRequest.GroupId.Value, GroupRoles.TaskAdmin, true, cancellationToken))) { throw new UnauthorizedAccessException("User not authorized to view group tasks"); } } string viewName; object viewModel; // TODO: Consolidate 3 methods switch (jobFilterRequest.JobSet.RequestType(), jobFilterRequest.JobSet) {
public IActionResult GetFilteredJobs([FromBody] JobFilterRequest jobFilterRequest) { return(ViewComponent("JobList", new { jobFilterRequest })); }
public async Task <IActionResult> GetWithFilter(JobFilterRequest filter) { var result = await _jobService.GetWithFilter(filter); return(Ok(result)); }