FormAddEditRequest.cs 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using System.Windows.Forms;
  11. namespace СУБД_Техносервис
  12. {
  13. public partial class FormAddEditRequest : Form
  14. {
  15. public FormAddEditRequest()
  16. {
  17. InitializeComponent();
  18. }
  19. private void FormAddEditRequest_Load(object sender, EventArgs e)
  20. {
  21. // TODO: данная строка кода позволяет загрузить данные в таблицу "techServiceBAUDataSet1.Employee". При необходимости она может быть перемещена или удалена.
  22. this.employeeTableAdapter.Fill(this.techServiceBAUDataSet1.Employee);
  23. // TODO: данная строка кода позволяет загрузить данные в таблицу "techServiceBAUDataSet1.Client". При необходимости она может быть перемещена или удалена.
  24. this.clientTableAdapter.Fill(this.techServiceBAUDataSet1.Client);
  25. // TODO: данная строка кода позволяет загрузить данные в таблицу "techServiceBAUDataSet1.Status". При необходимости она может быть перемещена или удалена.
  26. this.statusTableAdapter.Fill(this.techServiceBAUDataSet1.Status);
  27. // TODO: данная строка кода позволяет загрузить данные в таблицу "techServiceBAUDataSet1.TypeDefect". При необходимости она может быть перемещена или удалена.
  28. this.typeDefectTableAdapter.Fill(this.techServiceBAUDataSet1.TypeDefect);
  29. // TODO: данная строка кода позволяет загрузить данные в таблицу "techServiceBAUDataSet1.Request". При необходимости она может быть перемещена или удалена.
  30. this.requestTableAdapter.Fill(this.techServiceBAUDataSet1.Request);
  31. if (LblTitleRequest.Text == "Добавление заявки")
  32. {
  33. BsRequest.AddNew();
  34. DtpDateAcception.Value = DateTime.Now;
  35. CmbClient.SelectedIndex = 0;
  36. CmbStatus.SelectedIndex = 0;
  37. CmbTypeDefect.SelectedIndex = 0;
  38. LblIdManager.Text = FormWorkPlace.IdManager;
  39. }
  40. if (LblTitleRequest.Text == "Редактирование зайвки")
  41. {
  42. DtpDateAcception.Enabled = false;
  43. CmbClient.Enabled = false;
  44. CmbStatus.Enabled = false;
  45. CmbTypeDefect.Enabled = false;
  46. TbxDeffect.Enabled = false;
  47. SqlConnection Con = new SqlConnection(FormWorkPlace.TxtCon);
  48. Con.Open();
  49. string TxtQuery = $@"Select ExecutionRequest.IdMaster, Employee.Surname
  50. From ExecutionRequest join Employee on ExecutionRequest.IdMaster = Employee.IdEmployee
  51. where IdRequest = {TbxIdRequest.Text}";
  52. SqlCommand cmd = new SqlCommand(TxtQuery, Con);
  53. SqlDataReader Res = cmd.ExecuteReader();
  54. DgvMaster.Rows.Clear();
  55. while (Res.Read())
  56. {
  57. DgvMaster.Rows.Add(Res["IdMaster"], Res["Surname"]);
  58. }
  59. }
  60. LblIdManager.Hide();
  61. }
  62. private void BtnSave_Click(object sender, EventArgs e)
  63. {
  64. if (TbxDeffect.Text.Trim() == "" || descriptionTextBox.Text.Trim() == "")
  65. {
  66. MessageBox.Show("Заполните все поля.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
  67. return;
  68. }
  69. BsRequest.EndEdit();
  70. this.requestTableAdapter.Update(this.techServiceBAUDataSet1.Request);
  71. MessageBox.Show("Заявка добавлена.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Information);
  72. SqlConnection Con = new SqlConnection(FormWorkPlace.TxtCon);
  73. Con.Open();
  74. SqlCommand cmd = new SqlCommand($@"Delete ExecutionRequest where IdRequest = {TbxIdRequest.Text}", Con);
  75. cmd.ExecuteNonQuery();
  76. Con.Close();
  77. Con.Open();
  78. string TxtQuery = "";
  79. for (int i = 0; i < DgvMaster.RowCount; i++)
  80. {
  81. TxtQuery += $"Insert into ExecutionRequest values ({TbxIdRequest.Text},{DgvMaster.Rows[i].Cells[0].Value});";
  82. }
  83. if (TxtQuery != "")
  84. {
  85. cmd = new SqlCommand(TxtQuery, Con);
  86. cmd.ExecuteNonQuery();
  87. }
  88. Con.Close();
  89. Close();
  90. }
  91. private void BtnAdd_Click(object sender, EventArgs e)
  92. {
  93. bool MasterFound = false;
  94. for (int i = 0; i < DgvMaster.RowCount; i++)
  95. {
  96. if (CmbMaster.SelectedValue.ToString() == DgvMaster.Rows[i].Cells[0].Value.ToString())
  97. {
  98. MasterFound = true;
  99. break;
  100. }
  101. }
  102. if (!MasterFound)
  103. DgvMaster.Rows.Add(CmbMaster.SelectedValue.ToString(), CmbMaster.Text);
  104. else
  105. MessageBox.Show("Этот мастер уже назначен исполнителем.", "Внимание!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
  106. }
  107. private void BtnDel_Click(object sender, EventArgs e)
  108. {
  109. if (DgvMaster.RowCount == 0)
  110. return;
  111. DgvMaster.Rows.RemoveAt(DgvMaster.CurrentRow.Index);
  112. }
  113. }
  114. }