public RequirementDetailForm(PresentationModel presentationModel, Requirement requirement) { InitializeComponent(); _presentationModel = presentationModel; type = UserInterfaceForm.FunctionalType.Hide; RefreshRequirementDetail(requirement); }
public RequirementEditorForm(PresentationModel presentationModel, Requirement requirement) { InitializeComponent(); this._presentationModel = presentationModel; this._requirement = requirement; GetUserListByProject(); _selectedHandler = new User(); _selectedType = new NormalAttribute(); _selectedPriority = new NormalAttribute(); _selectedStatus = new NormalAttribute(); _projectIds = new List<int>(); _projectNames = new List<string>(); _requireIds = new List<int>(); _requireNames = new List<string>(); _statusIds = new List<int>(); _statusNames = new List<string>(); _projectMemberArrayList = new List<int>(); GetRequirementMethod(PRIORITY); GetRequirementMethod(REQUIREMENT); GetRequirementMethod(STATUS); CheckPriority(); nameTextBox.Text = _requirement.Name; typeComboBox.SelectedItem = _requirement.Type.Name; versionLabel.Text = (Int32.Parse(_requirement.Version) + 1).ToString(); priorityComboBox.SelectedItem = _requirement.Priority.Name; statusComboBox.SelectedItem = _requirement.Status.Name; handlerComboBox.Text = _requirement.Handler.Name; DescriptionRichTextBox.Text = _requirement.Description; MemoRichTextBox.Text = _requirement.Memo; }
public CommentEditorForm(PresentationModel presentationModel, Requirement requirement) { InitializeComponent(); _requirement = requirement; _presentationModel = presentationModel; _requirementLabel.Text = requirement.Name; _ownerLabel.Text = _presentationModel.GetUserName(); }
public async void GetRequirementByProject() { HttpResponseMessage response = await _presentationModel.GetRequirementByProject(_project.ID.ToString()); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { JObject json = JObject.Parse(content); string message = json["result"].ToString(); _arrayList = new ArrayList(); JArray jsonArray = JArray.Parse(json["requirements"].ToString()); if (message == "success") { this.requirementListDataGridView.Rows.Clear(); foreach (JObject jObject in jsonArray) { JObject jOwner = jObject["owner"] as JObject; JObject jHandler = jObject["handler"] as JObject; JObject jType = jObject["requirement_type"] as JObject; JObject jPriority = jObject["priority_type"] as JObject; JObject jStatus = jObject["status_type"] as JObject; User owner = _presentationModel.getUser((int)jOwner["id"], jOwner["name"].ToString()); User handler = _presentationModel.getUser((int)jHandler["id"], jHandler["name"].ToString()); NormalAttribute type = _presentationModel.getRequirementAttribute((int)jType["id"], jType["name"].ToString()); NormalAttribute priority = _presentationModel.getRequirementAttribute((int)jPriority["id"], jPriority["name"].ToString()); NormalAttribute status = _presentationModel.getRequirementAttribute((int)jStatus["id"], jStatus["name"].ToString()); Requirement requirement = new Requirement((int)jObject["id"], _project.ID, jObject["name"].ToString(), owner, handler, jObject["description"].ToString(), jObject["version"].ToString(), jObject["memo"].ToString(), type, priority, status); this.requirementListDataGridView.Rows.Add(jObject["name"], status.Name); _arrayList.Add(requirement); } } } else if (response.StatusCode == HttpStatusCode.RequestTimeout) { MessageBox.Show("伺服器無回應", "Error", MessageBoxButtons.OK); } else { MessageBox.Show("伺服器錯誤", "Error", MessageBoxButtons.OK); } }
private async void GetRequirementByProject() { HttpClient client = new HttpClient(); HttpResponseMessage response; var httpClient = new HttpClient(); try { const string METHOD = "requirement/getRequirementByProject/"; string url = MainForm.BASE_URL + METHOD + project.id.ToString(); Console.WriteLine(url); response = await httpClient.GetAsync(url); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { Console.WriteLine(content); JObject json = JObject.Parse(content); string message = json["result"].ToString(); JArray jsonArray = JArray.Parse(json["requirements"].ToString()); if (message == "success") { foreach (JObject jObject in jsonArray) { this.requirementListDataGridView.Rows.Add(jObject["name"], jObject["updated_at"]); Requirement requirement = new Requirement((int)jObject["id"], jObject["name"].ToString(), jObject["description"].ToString(), jObject["version"].ToString(), jObject["memo"].ToString()); array.Add(requirement); } } } else { Console.WriteLine(response.ToString()); MessageBox.Show("伺服器錯誤", "Error", MessageBoxButtons.OK); } } catch (HttpRequestException e) { Console.WriteLine(e.ToString()); MessageBox.Show("伺服器無回應", "Error", MessageBoxButtons.OK); } }
public void RefreshRequirementDetail(Requirement requirement) { this._requirement = requirement; idLabel.Text = _requirement.ID.ToString(); nameLabel.Text = _requirement.Name; versionLabel.Text = _requirement.Version; typeLabel.Text = _requirement.Type.Name; priorityLabel.Text = _requirement.Priority.Name; statusLabel.Text = _requirement.Status.Name; requirementOwnerLabel.Text = _requirement.Owner.Name; handlerLabel.Text = _requirement.Handler.Name; descriptionTextBox.Text = _requirement.Description; memoTextBox.Text = _requirement.Memo; isFinished = false; if (requirement.Handler.ID == _presentationModel.GetUID() && (requirement.Status.ID == APPROVED_ID || requirement.Status.ID == FINISHED_ID)) { _finishButton.Enabled = true; } else { _finishButton.Enabled = false; } if (requirement.Status.ID == FINISHED_ID) { _finishButton.Image = Properties.Resources.ios7_checkmark_outline; _finishButton.Text = "Finished"; isFinished = true; } else { _finishButton.Image = Properties.Resources.ios7_circle_outline; _finishButton.Text = "Unfinished"; isFinished = false; ; } getTestcaseByRequirementId(); getComment(); CheckPriority(); }
private async void GetRequirementByProject() { HttpResponseMessage response = await _presentationModel.GetRequirementByProject(_project.ID.ToString()); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { JObject json = JObject.Parse(content); string message = json["result"].ToString(); JArray jsonArray = JArray.Parse(json["requirements"].ToString()); if (message == "success") { requirementList = new Requirement[jsonArray.Count]; for (int i = 0; i < jsonArray.Count; i++ ) { JObject jObject = (JObject)jsonArray[i]; User owner = new User(); User handler = new User(); JObject jOwner = jObject["owner"] as JObject; owner.ID = (int)jOwner["id"]; owner.Name = jOwner["name"].ToString(); JObject jHandler = jObject["handler"] as JObject; handler.ID = (int)jHandler["id"]; handler.Name = jHandler["name"].ToString(); Requirement requirement = new Requirement((int)jObject["id"], _project.ID, jObject["name"].ToString(), owner, handler, jObject["description"].ToString(), jObject["version"].ToString(), jObject["memo"].ToString(), (int)jObject["requirement_type_id"], (int)jObject["priority_type_id"], (int)jObject["status_type_id"]); } RefreshTestList(); } } else if (response.StatusCode == HttpStatusCode.RequestTimeout) { MessageBox.Show("伺服器無回應", "Error", MessageBoxButtons.OK); } else { MessageBox.Show("伺服器錯誤", "Error", MessageBoxButtons.OK); } }
public async Task<string> EditRequirement(Requirement requirement) { HttpClient client = new HttpClient(); HttpResponseMessage response; var httpClient = new HttpClient(); try { JObject jObject = new JObject(); jObject["id"] = requirement.ID; jObject["name"] = requirement.Name; jObject["description"] = requirement.Description; jObject["version"] = requirement.Version; jObject["memo"] = requirement.Memo; jObject["handler"] = requirement.Handler.ID; jObject["uid"] = requirement.Owner.ID; jObject["pid"] = requirement.ProjectID; jObject["requirement_type_id"] = requirement.Type.ID; jObject["priority_type_id"] = requirement.Priority.ID; jObject["status_type_id"] = requirement.Status.ID; const string METHOD = "requirement/update"; string url = BASE_URL + METHOD; response = await httpClient.PostAsync(url, new StringContent(jObject.ToString(), Encoding.UTF8, "application/json")); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { JObject json = JObject.Parse(content); string message = json["result"].ToString(); if (message == "success") { return "需求修改成功"; } else { return "需求修改失敗"; } } else { return "需求修改失敗"; } } catch (HttpRequestException) { return "伺服器無回應"; } }
public async Task<Requirement[]> GetNoAssociatedRequirementByProjectId(int projectId) { HttpClient client = new HttpClient(); HttpResponseMessage response; var httpClient = new HttpClient(); try { const string METHOD = "requirement/getNoAssociatedRequirementByProjectId/"; string url = BASE_URL + METHOD + projectId; response = await httpClient.GetAsync(url); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { JObject json = JObject.Parse(content); string message = json["result"].ToString(); JArray jsonArray = JArray.Parse(json["requirement_list"].ToString()); if (message == "success") { Requirement[] requirements = new Requirement[jsonArray.Count]; for (int i = 0; i < jsonArray.Count; i++) { JObject jObject = jsonArray[i] as JObject; JObject jOwner = jObject["owner"] as JObject; JObject jHandler = jObject["handler"] as JObject; JObject jType = jObject["requirement_type"] as JObject; JObject jPriority = jObject["priority_type"] as JObject; JObject jStatus = jObject["status_type"] as JObject; User owner = new User((int)jOwner["id"], jOwner["name"].ToString()); User handler = new User((int)jHandler["id"], jHandler["name"].ToString()); NormalAttribute type = new NormalAttribute((int)jType["id"], jType["name"].ToString()); NormalAttribute priority = new NormalAttribute((int)jPriority["id"], jPriority["name"].ToString()); NormalAttribute status = new NormalAttribute((int)jStatus["id"], jStatus["name"].ToString()); requirements[i] = new Requirement((int)jObject["id"], projectId, jObject["name"].ToString(), owner, handler, jObject["description"].ToString(), jObject["version"].ToString(), jObject["memo"].ToString(), type, priority, status); } return requirements; } throw new Exception("取得失敗"); } else if (response.StatusCode == HttpStatusCode.RequestTimeout) { throw new Exception("伺服器無回應"); } else { throw new Exception("伺服器錯誤"); } } catch (Exception e) { throw e; } }
private async void GetRequirementByProject() { HttpResponseMessage response = await _presentationModel.GetRequirementByProject(_project.ID.ToString()); string content = await response.Content.ReadAsStringAsync(); if (response.StatusCode == HttpStatusCode.OK) { JObject json = JObject.Parse(content); string message = json["result"].ToString(); JArray jsonArray = JArray.Parse(json["requirements"].ToString()); if (message == "success") { _requirements = new Requirement[jsonArray.Count]; for (int i = 0; i < jsonArray.Count; i++ ) { JObject jObject = (JObject)jsonArray[i]; JObject jOwner = jObject["owner"] as JObject; JObject jHandler = jObject["handler"] as JObject; JObject jType = jObject["requirement_type"] as JObject; JObject jPriority = jObject["priority_type"] as JObject; JObject jStatus = jObject["status_type"] as JObject; User owner = _presentationModel.getUser((int)jOwner["id"], jOwner["name"].ToString()); User handler = _presentationModel.getUser((int)jHandler["id"], jHandler["name"].ToString()); NormalAttribute type = _presentationModel.getRequirementAttribute((int)jType["id"], jType["name"].ToString()); NormalAttribute priority = _presentationModel.getRequirementAttribute((int)jPriority["id"], jPriority["name"].ToString()); NormalAttribute status = _presentationModel.getRequirementAttribute((int)jStatus["id"], jStatus["name"].ToString()); _requirements[i] = new Requirement((int)jObject["id"], _project.ID, jObject["name"].ToString(), owner, handler, jObject["description"].ToString(), jObject["version"].ToString(), jObject["memo"].ToString(), type, priority, status); } rList = new string[_requirements.Length]; for (int i = 0; i < _requirements.Length; i++) { rList[i] = _requirements[i].Name; } CreateAllDataGridView(); CreateDataGridViewCell(_RtoRDataGridView, rList, rList, true); GetRequirementToRequirementRelationByProjectId(); GetTestListByProject(); } } else if (response.StatusCode == HttpStatusCode.RequestTimeout) { MessageBox.Show("伺服器無回應", "Error", MessageBoxButtons.OK); } else { MessageBox.Show("伺服器錯誤", "Error", MessageBoxButtons.OK); } }
public async Task<string> EditRequirement(Requirement requirement) { return await _model.EditRequirement(requirement); }