/// <summary> /// метод при открытие окна /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Window_Activated(object sender, EventArgs e) { if (flag) { Label label = new Label(); DatabaseActions databaseActions = new DatabaseActions(); label.VerticalAlignment = VerticalAlignment.Top; label.HorizontalAlignment = HorizontalAlignment.Center; label.FontSize = 15; label.Margin = new Thickness(0, 25, 0, 0); label.Content = $"Project: { project.Name}"; grid.Children.Add(label); BackButton.Background = new ImageBrush(new BitmapImage(new Uri(path))); listSelected = await databaseActions.ShowRisks(project); if (listSelected == null) listSelected = new List<Risk>(); AddToSelected(); DrawGraphic(); SearchForDangerousRisks(); await SetUsers(); flag = false; } }
/// <summary> /// метод выполянется, когда открывается окно /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Window_Activated(object sender, EventArgs e) { try { if (flag) { Label label = new Label(); label.VerticalAlignment = VerticalAlignment.Top; label.HorizontalAlignment = HorizontalAlignment.Center; label.FontSize = 17; label.Margin = new Thickness(0, 25, 0, 0); label.Content = $"Project: { _project.Name}"; grid.Children.Add(label); BackButton.Background = new ImageBrush(new BitmapImage(new Uri(path))); DatabaseActions databaseActions = new DatabaseActions(); listSelected = await databaseActions.ShowRisks(_project); if (listSelected == null) { listSelected = new List <Risk>(); } RiskActions riskActions = new RiskActions(); listRisks = await riskActions.ShowRisks(); SeletionCombobox.Items.Add("Общие риски"); SeletionCombobox.Text = "Common Risks"; SeletionCombobox.Items.Add(_project.Type); listSource = await riskActions.ShowSources(); AddToSelected(); for (int i = 0; i < listSource.Count; i++) { SeletionCombobox.Items.Add(listSource[i]); } Drawing(); SearchForDangerousRisks(); await SetUsers(); flag = false; } } catch (Exception ex) { MessageBox.Show(ex.Message + ex.TargetSite); } }
/// <summary> /// метод, который срабатывает при нажатии кнопки и /// устанавливает характерстики для риска и добавляет в бд /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void SetUpRisk_Click(object sender, RoutedEventArgs e) { try { if (Double.Parse(ParseLine(InfluenceTextbox.Text)) == default || Double.Parse(ParseLine(ProbabilityTextbox.Text)) == default) { throw new ArgumentException("Values of Probability and Influence fields must stay (0,1)"); } if (Owner.SelectedItem == null) { throw new NullReferenceException("You need to choose the user you want to assign risk to!"); } ((Risk)listRisksSelected.SelectedItem).Influence = double.Parse(ParseLine(InfluenceTextbox.Text)); ((Risk)listRisksSelected.SelectedItem).Probability = double.Parse(ParseLine(ProbabilityTextbox.Text)); DatabaseActions databaseActions = new DatabaseActions(); await databaseActions.ChangeRisk((Risk)listRisksSelected.SelectedItem, (User)Owner.SelectedItem); listRisksSelected.Items.Clear(); listSelected = await databaseActions.ShowRisks(_project); for (int i = 0; i < listSelected.Count; i++) { if (listSelected[i].Status == 1) { listRisksSelected.Items.Add(listSelected[i]); } } Drawing(); } catch (NullReferenceException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (ArgumentException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (Exception) { MessageBox.Show("Something went wrong!"); } }
private async void SetUpNewButton_Click(object sender, RoutedEventArgs e) { try { if (listNewRisks.SelectedItems != null && Double.Parse(ParseLine(NewInfluenceTextbox.Text)) != default && Double.Parse(ParseLine(NewProbabilityTextbox.Text)) != default && OwnerNewCombobox.SelectedItem != null) { ((Risk)listNewRisks.SelectedItem).Influence = double.Parse(ParseLine(NewInfluenceTextbox.Text)); ((Risk)listNewRisks.SelectedItem).Probability = double.Parse(ParseLine(NewProbabilityTextbox.Text)); ((Risk)listNewRisks.SelectedItem).Status = 1; SearchForCurrentRisk(((Risk)listNewRisks.SelectedItem)); DatabaseActions databaseActions = new DatabaseActions(); await databaseActions.ChangeRisk((Risk)listNewRisks.SelectedItem, (User)OwnerNewCombobox.SelectedItem); listNewRisks.Items.Clear(); listSelected.Items.Clear(); listRisksSelected = await databaseActions.ShowRisks(_project); for (int i = 0; i < listRisksSelected.Count; i++) { if (listRisksSelected[i].Status == 0) { listNewRisks.Items.Add(listRisksSelected[i]); } if (listRisksSelected[i].Status == 1) { listSelected.Items.Add(listRisksSelected[i]); } } DrawHyperbola(); } else { MessageBox.Show("Something went wrong!"); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
/// <summary> /// метод запускается при открытии окна /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Window_Activated(object sender, EventArgs e) { if (flag) { Label label = new Label(); label.VerticalAlignment = VerticalAlignment.Top; label.HorizontalAlignment = HorizontalAlignment.Center; label.FontSize = 15; label.Margin = new Thickness(0, 25, 0, 0); label.Content = $"Project: { _project.Name}"; grid.Children.Add(label); BackButton.Background = new ImageBrush(new BitmapImage(new Uri(path))); DatabaseActions databaseActions = new DatabaseActions(); listRisksSelected = await databaseActions.ShowRisks(_project); if (listRisksSelected == null) { listRisksSelected = new List <Risk>(); } RiskActions riskActions = new RiskActions(); listAllRisks = await riskActions.ShowRisks(); ComboBoxTypes.Items.Add("Общие риски"); ComboBoxTypes.Text = "Common Risks"; ComboBoxTypes.Items.Add(_project.Type); listSource = await riskActions.ShowSources(); AddInSelected(); for (int i = 0; i < listSource.Count; i++) { ComboBoxTypes.Items.Add(listSource[i]); } DrawHyperbola(); FindDangerousRisks(); await SetOwners(); flag = false; } }
/// <summary> /// метод для установления вероятности и влияния риска при нажатии на кнопку /// и внесении данных в бд /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void SetUpButton_Click(object sender, RoutedEventArgs e) { try { if (Double.Parse(ParseLine(InfluenceTextbox.Text)) == default || Double.Parse(ParseLine(ProbabilityTextbox.Text)) == default) { throw new ArgumentException("The values of probability and influence must lay in the interval (0,1)!"); } if (OwnerCombobox.SelectedItem == null) { throw new NullReferenceException("You have to choose the user you want to assign the risk to!"); } ((Risk)listSelected.SelectedItem).Influence = double.Parse(ParseLine(InfluenceTextbox.Text)); ((Risk)listSelected.SelectedItem).Probability = double.Parse(ParseLine(ProbabilityTextbox.Text)); DatabaseActions databaseActions = new DatabaseActions(); await databaseActions.ChangeRisk((Risk)listSelected.SelectedItem, (User)OwnerCombobox.SelectedItem); listSelected.Items.Clear(); listRisksSelected = await databaseActions.ShowRisks(_project); for (int i = 0; i < listRisksSelected.Count; i++) { if (listRisksSelected[i].Status == 1) { listSelected.Items.Add(listRisksSelected[i]); } } DrawHyperbola(); } catch (NullReferenceException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (ArgumentException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (Exception) { MessageBox.Show("Something's not right!"); } }
private async void SetUpNewButton_Click(object sender, RoutedEventArgs e) { try { if (listNewRisks.SelectedItems != null && Double.Parse(ParseLine(TextboxInfluenceNew.Text)) != default && Double.Parse(ParseLine(TextboxProbabilityNew.Text)) != default ) { ((Risk)listNewRisks.SelectedItem).Influence = double.Parse(ParseLine(InfluenceTextbox.Text)); ((Risk)listNewRisks.SelectedItem).Probability = double.Parse(ParseLine(ProbabilityTextbox.Text)); ((Risk)listNewRisks.SelectedItem).Status = 1; SearchForCurrentRisk(((Risk)listNewRisks.SelectedItem)); DatabaseActions databaseActions = new DatabaseActions(); await databaseActions.ChangeRisk((Risk)listNewRisks.SelectedItem, (User)UserNewCombobox.SelectedItem); listNewRisks.Items.Clear(); listSelected = await databaseActions.ShowRisks(project); for (int i = 0; i < listSelected.Count; i++) { if (listSelected[i].Status == 0) listNewRisks.Items.Add(listSelected[i]); if (listSelected[i].Status == 1) listRisksSelected.Items.Add(listSelected[i]); } DrawGraphic(); } else { MessageBox.Show("Wrong in enpty1"); } } catch (Exception) { MessageBox.Show("It's possible that user has not been set!"); } }
/// <summary> /// метод выполняеся при открытии окна отчёта /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void Window_Activated(object sender, EventArgs e) { if (flag) { Widht = canvas.ActualWidth; Height = canvas.ActualHeight; DatabaseActions databaseActions = new DatabaseActions(); listSelected = await databaseActions.ShowRisks(_project); if (listSelected == null) { listSelected = new List <Risk>(); } DrawLine(); Tree tree = new Tree(); listVertex = await tree.ShowListVertexes(); firstVertex = await tree.ShowVertex(_risk.ID); Label label = new Label(); label.HorizontalAlignment = HorizontalAlignment.Left; label.VerticalAlignment = VerticalAlignment.Top; label.Margin = new Thickness(Widht / 2 - 100, 0, 0, 0); label.FontSize = 17; label.Content = $"Report for {_project.Name}"; canvas.Children.Add(label); DrawVertex(); CurrentBranchCost(firstVertex, 0); DrawDangerousMaximum(); WriteDangerousItems(); flag = false; //wordApplication.Visible = true; CreateDocument(); } }
/// <summary> /// метод для кнопки Set up, который устанавливает новые значения характеристик для выбранного риска /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void SetUpRiskButton_Click(object sender, RoutedEventArgs e) { try { if (listRisksSelected.SelectedItems == null) throw new NullReferenceException("You need to choose a risk you want to update!"); if (Double.Parse(ParseLine(InfluenceTextbox.Text)) == default || Double.Parse(ParseLine(ProbabilityTextbox.Text)) == default) throw new ArgumentException("The 'Probability' and 'Infuence' values must lay in the interval [0;1]!"); ((Risk)listRisksSelected.SelectedItem).Influence = double.Parse(ParseLine(InfluenceTextbox.Text)); ((Risk)listRisksSelected.SelectedItem).Probability = double.Parse(ParseLine(ProbabilityTextbox.Text)); DatabaseActions databaseActions = new DatabaseActions(); await databaseActions.ChangeRisk((Risk)listRisksSelected.SelectedItem); listRisksSelected.Items.Clear(); listSelected = await databaseActions.ShowRisks(project); for (int i = 0; i < listSelected.Count; i++) if (listSelected[i].Status == 1) listRisksSelected.Items.Add(listSelected[i]); DrawGraphic(); } catch (NullReferenceException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (ArgumentException ex) { MessageBox.Show(ex.Message, "Exception"); } catch (Exception) { MessageBox.Show("Что-то пошло не так"); } }