private async void btnCheckJiraKey_Click(object sender, EventArgs e) { this.btnCheckJiraKey.Enabled = false; string jiraKey = this.txtJiraKey.Text; IssueRef issueRef = new IssueRef(); issueRef.key = jiraKey; var issue = await JiraProxy.LoadIssue(issueRef); if (issue == null || issue.fields == null) { return; } this.txtAssignee.Text = issue.fields.assignee.name; this.txtAssigneeQA.Text = issue.fields.customfield_11702 == null ? "" : issue.fields.customfield_11702.name; Dictionary <string, string> SubTaskMaper = new Dictionary <string, string>(); foreach (var subTask in issue.fields.subtasks) { if (subTask != null && subTask.fields != null && subTask.fields.issuetype.subtask == true) { if (!SubTaskMaper.ContainsKey(subTask.fields.summary)) { SubTaskMaper.Add(subTask.fields.summary, subTask.key); } } } if ("Case".Equals(issue.fields.issueType.name, StringComparison.InvariantCultureIgnoreCase)) { //this.btnCreateSubTask.Enabled = true; //this.chkReviewAndRecreateQA.Enabled = true; //this.chkReviewAndRecreateDev.Enabled = true; //this.chkResearchRootCause.Enabled = true; this.chkCodeFix.Enabled = false; //this.chkWriteTestCase.Enabled = false; //this.chkExecuteTestCase.Enabled = false; //this.chkWriteReleaseNotes.Enabled = false; //this.chkReviewReleaseNotes.Enabled = false; foreach (string key in SubTaskMaper.Keys) { // Review and Recreate(QA) if (this.chkReviewAndRecreateQA.Text == key) { //this.chkReviewAndRecreateQA.Enabled = false; this.txtReviewAndRecreateQASubTaskKey.Text = SubTaskMaper[key]; var assignee = await JiraProxy.GetAssigneeByJiraKey(SubTaskMaper[key]); this.txtReviewAndRecreateQAAssignee.Text = assignee; } // Review and Recreate(Dev) if (this.chkReviewAndRecreateDev.Text == key) { //this.chkReviewAndRecreateDev.Enabled = false; this.txtReviewAndRecreateDevSubTaskKey.Text = SubTaskMaper[key]; var assignee = await JiraProxy.GetAssigneeByJiraKey(SubTaskMaper[key]); this.txtReviewAndRecreateDevAssignee.Text = assignee; } // Research Root Cause if (this.chkResearchRootCause.Text == key) { //this.chkResearchRootCause.Enabled = false; this.txtResearchRootCauseSubTaskKey.Text = SubTaskMaper[key]; var assignee = await JiraProxy.GetAssigneeByJiraKey(SubTaskMaper[key]); this.txtResearchRootCauseAssignee.Text = assignee; } } } if ("Bug".Equals(issue.fields.issueType.name, StringComparison.InvariantCultureIgnoreCase)) { this.btnCreateSubTask.Enabled = true; this.chkReviewAndRecreateQA.Enabled = false; this.chkReviewAndRecreateDev.Enabled = false; this.chkResearchRootCause.Enabled = false; this.chkCodeFix.Enabled = true; this.chkWriteTestCase.Enabled = true; this.chkExecuteTestCase.Enabled = true; this.chkWriteReleaseNotes.Enabled = true; this.chkReviewReleaseNotes.Enabled = true; foreach (string key in SubTaskMaper.Keys) { // Code Fix(Dev) if (this.chkCodeFix.Text == key) { this.chkCodeFix.Enabled = false; this.txtCodeFixSubTaskKey.Text = SubTaskMaper[key]; } // Write Test Case(QA) if (this.chkWriteTestCase.Text == key) { this.chkWriteTestCase.Enabled = false; this.txtWriteTestCaseSubTaskKey.Text = SubTaskMaper[key]; } // Execute Test Case(QA) if (this.chkExecuteTestCase.Text == key) { this.chkExecuteTestCase.Enabled = false; this.txtExecuteTestCaseSubTaskKey.Text = SubTaskMaper[key]; } // Write Release Notes(Dev) if (this.chkWriteReleaseNotes.Text == key) { this.chkWriteReleaseNotes.Enabled = false; this.txtWriteReleaseNotesSubTaskKey.Text = SubTaskMaper[key]; } // Review Release Notes(QA) if (this.chkReviewReleaseNotes.Text == key) { this.chkReviewReleaseNotes.Enabled = false; this.txtReviewReleaseNotesSubTaskKey.Text = SubTaskMaper[key]; } } } this.btnCreateSubTask.Enabled = true; this.btnCheckJiraKey.Enabled = true; }