insertMedCard.cs 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10. using System.Data.SqlClient;
  11. namespace hospital
  12. {
  13. public partial class insertMedCard : Form
  14. {
  15. SqlConnection sqlConnection = null;
  16. SqlDataReader reader = null;
  17. SqlCommand a = null;
  18. public insertMedCard()
  19. {
  20. InitializeComponent();
  21. }
  22. private void insertMedCard_Load(object sender, EventArgs e)
  23. {
  24. try
  25. {
  26. FormCreating.openConnection(ref sqlConnection);
  27. disabilityCB.Items.Add("Нет");
  28. disabilityCB.Items.Add("Да");
  29. disabilityCB.SelectedIndex = 0;
  30. a = new SqlCommand($"select name_blood from blood_type", sqlConnection);
  31. reader = a.ExecuteReader();
  32. while (reader.Read())
  33. {
  34. bloodCB.Items.Add($"{reader.GetString(0)}");
  35. }
  36. reader.Close();
  37. bloodCB.SelectedIndex = 0;
  38. a = new SqlCommand($"select name_factor from rh_factor", sqlConnection);
  39. reader = a.ExecuteReader();
  40. while (reader.Read())
  41. {
  42. rhFactorCB.Items.Add($"{reader.GetString(0)}");
  43. }
  44. reader.Close();
  45. rhFactorCB.SelectedIndex = 0;
  46. }
  47. catch
  48. {
  49. MessageBox.Show("Произошла непредвиденная ошибка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  50. debugAndTrace.writeInFile("ERROR");
  51. }
  52. }
  53. private void disabilityCB_SelectedIndexChanged(object sender, EventArgs e)
  54. {
  55. try
  56. {
  57. if (disabilityCB.SelectedItem.Equals("Да"))
  58. {
  59. descriptionDisabilityRTB.Visible = true;
  60. }
  61. else
  62. {
  63. descriptionDisabilityRTB.Visible = false;
  64. }
  65. }
  66. catch
  67. {
  68. MessageBox.Show("Произошла непредвиденная ошибка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  69. debugAndTrace.writeInFile("ERROR");
  70. }
  71. }
  72. private void add_Click(object sender, EventArgs e)
  73. {
  74. try
  75. {
  76. bool checkTB = false, checkMTB = false;
  77. foreach (TextBox textBox in this.Controls.OfType<TextBox>())
  78. {
  79. if (String.IsNullOrEmpty(textBox.Text) && textBox.Visible == true)
  80. {
  81. checkTB = true;
  82. break;
  83. }
  84. }
  85. foreach (MaskedTextBox maskedTextBox in this.Controls.OfType<MaskedTextBox>())
  86. {
  87. if (!maskedTextBox.MaskCompleted)
  88. {
  89. checkMTB = true;
  90. break;
  91. }
  92. }
  93. if (!checkMTB && !checkTB)
  94. {
  95. DateTime date1 = DateTime.Parse(birthDateDTP.Text);
  96. DateTime date2 = DateTime.Parse(passportDateDTP.Text);
  97. SqlCommand bloodIndex = new SqlCommand($"select id_blood from blood_type where name_blood like N'{bloodCB.SelectedItem}'", sqlConnection);
  98. SqlCommand factorIndex = new SqlCommand($"select id_factor from rh_factor where name_factor like N'{rhFactorCB.SelectedItem}'", sqlConnection);
  99. a = new SqlCommand($"insert into [medical_cards] ([Surname_Patient], [Name_Patient], [Midname_Patient], [Date_Birthday_Patient], [Telephone_Patient], [IIAN_Patient], [Passport_Number_Patient], [Passport_Date_Patient], [Passport_Place_Patient], [Passport_Code_Patient], [Number_Policy_Patient], [Disability_Patient], [Description_Disability], [ID_Blood], [ID_Factor], [WorkStudy_Place], [isIll]) values (@Surname_Patient, @Name_Patient, @Midname_Patient, @Date_Birthday_Patient, @Telephone_Patient, @IIAN_Patient, @Passport_Number_Patient, @Passport_Date_Patient, @Passport_Place_Patient, @Passport_Code_Patient, @Number_Policy_Patient, @Disability_Patient, @Description_Disability, @ID_Blood, @ID_Factor, @WorkStudy_Place, @isIll)", sqlConnection);
  100. a.Parameters.AddWithValue("Surname_Patient", surnameTB.Text);
  101. a.Parameters.AddWithValue("Name_Patient", nameTB.Text);
  102. a.Parameters.AddWithValue("Midname_Patient", midnameTB.Text);
  103. a.Parameters.AddWithValue("Date_Birthday_Patient", $"{date1.Day}/{date1.Month}/{date1.Year}");
  104. a.Parameters.AddWithValue("Telephone_Patient", telephoneMTB.Text);
  105. a.Parameters.AddWithValue("IIAN_Patient", iianMTB.Text);
  106. a.Parameters.AddWithValue("Passport_Number_Patient", passportNumberMTB.Text);
  107. a.Parameters.AddWithValue("Passport_Date_Patient", $"{date2.Day}/{date2.Month}/{date2.Year}");
  108. a.Parameters.AddWithValue("Passport_Place_Patient", passpordPlaceTB.Text);
  109. a.Parameters.AddWithValue("Passport_Code_Patient", passportCodeMTB.Text);
  110. a.Parameters.AddWithValue("Number_Policy_Patient", policyNumberMTB.Text);
  111. a.Parameters.AddWithValue("Disability_Patient", disabilityCB.SelectedItem);
  112. a.Parameters.AddWithValue("Description_Disability", descriptionDisabilityRTB.Text);
  113. a.Parameters.AddWithValue("ID_Blood", bloodIndex.ExecuteScalar().ToString());
  114. a.Parameters.AddWithValue("ID_Factor", factorIndex.ExecuteScalar().ToString());
  115. a.Parameters.AddWithValue("WorkStudy_Place", workStudyPlaceRTB.Text);
  116. a.Parameters.AddWithValue("isIll", 0);
  117. Array.Resize(ref auth.data, 16);
  118. auth.data[0] = $"Фамилия: {surnameTB.Text}";
  119. auth.data[1] = $"Имя: {nameTB.Text}";
  120. auth.data[2] = $"Отчество: {midnameTB.Text}";
  121. auth.data[3] = $"Дата рождения: {date1.Day}/{date1.Month}/{date1.Year}";
  122. auth.data[4] = $"Телефон: {telephoneMTB.Text}";
  123. auth.data[5] = $"СНИЛС: {iianMTB.Text}";
  124. auth.data[6] = $"Серия и номер паспорта: {passportNumberMTB.Text}";
  125. auth.data[7] = $"Дата выдачи паспорта: {date2.Day}/{date2.Month}/{date2.Year}";
  126. auth.data[8] = $"Кем выдан: {passpordPlaceTB.Text}";
  127. auth.data[9] = $"Код подразделения: {passportCodeMTB.Text}";
  128. auth.data[10] = $"Номер страхового полиса: {policyNumberMTB.Text}";
  129. auth.data[11] = $"Инвалидность: {disabilityCB.SelectedIndex}";
  130. auth.data[12] = $"Описание инвалидности(если есть): {descriptionDisabilityRTB.Text}";
  131. auth.data[13] = $"Группа крови: {bloodCB.SelectedItem}";
  132. auth.data[14] = $"Резус фактор: {rhFactorCB.SelectedItem}";
  133. auth.data[15] = $"Описание трудовой деятельности: {workStudyPlaceRTB.Text}";
  134. if (a.ExecuteNonQuery() == 1)
  135. {
  136. MessageBox.Show("Добавление данных произошло успешно", "Уведомление", MessageBoxButtons.OK, MessageBoxIcon.Information);
  137. debugAndTrace.writeInFile("Добавление медицинской карты", auth.data);
  138. debugAndTrace.writeInFile("Переход на главную форму");
  139. this.Close();
  140. }
  141. else
  142. {
  143. MessageBox.Show("Произошла ошибка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  144. debugAndTrace.writeInFile("Ошибка добавления данных медицинской карты", auth.data);
  145. }
  146. }
  147. else
  148. {
  149. MessageBox.Show("Заполнены не все поля", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  150. debugAndTrace.writeInFile("Error, заполнены не все поля");
  151. }
  152. }
  153. catch
  154. {
  155. MessageBox.Show("Произошла непредвиденная ошибка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  156. debugAndTrace.writeInFile("ERROR");
  157. }
  158. }
  159. private void backBTN_Click(object sender, EventArgs e)
  160. {
  161. try
  162. {
  163. var res = MessageBox.Show("Уверены, что хотите отменить добавление медицинской карты?", "Предупреждение", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
  164. if (res == DialogResult.Yes)
  165. {
  166. debugAndTrace.writeInFile("Отмена добавления медицинской карты");
  167. this.Close();
  168. }
  169. else
  170. {
  171. MessageBox.Show("Действие отменено", "Уведомление", MessageBoxButtons.OK, MessageBoxIcon.Information);
  172. }
  173. }
  174. catch
  175. {
  176. MessageBox.Show("Произошла непредвиденная ошибка", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
  177. debugAndTrace.writeInFile("ERROR");
  178. }
  179. }
  180. private void label15_Click(object sender, EventArgs e)
  181. {
  182. }
  183. private void workStudyPlaceRTB_TextChanged(object sender, EventArgs e)
  184. {
  185. }
  186. }
  187. }