private async Task <BoardResponseModel> GetBoard(string team = null) { using (var client = _httpClientUtils.GetClient()) { var teamNames = team != null && _jiraConfig.Value.TeamFilters.ContainsKey(team) ? _jiraConfig.Value.TeamFilters[team] : Array.Empty <string>(); var inProgress = await GetColumn(client, "In Progress", teamNames); var peerReview = await GetColumn(client, "Peer Review", teamNames); var test = await GetColumn(client, "System Test", teamNames); var merge = await GetMergeColumn(client, teamNames); // Trollface if (_jiraConfig.Value.PrankIssue != null && _jiraConfig.Value.PrankIssue.Trim() != "") { var issue = await GetIssue(client, _jiraConfig.Value.PrankIssue); if (issue != null) { switch (_jiraConfig.Value.PrankIssueColumn) { case "Merge": merge.Issues = merge.Issues.Append(issue); break; case "Peer Review": peerReview.Issues = peerReview.Issues.Append(issue); break; case "System Test": test.Issues = test.Issues.Append(issue); break; default: inProgress.Issues = inProgress.Issues.Append(issue); break; } } } return(new BoardResponseModel { InProgress = inProgress, PeerReview = peerReview, Test = test, Merge = merge }); } }