AddUchenik.xaml.cs 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Data;
  4. using System.Data.SqlClient;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. using System.Windows;
  9. using System.Windows.Controls;
  10. using System.Windows.Data;
  11. using System.Windows.Documents;
  12. using System.Windows.Input;
  13. using System.Windows.Media;
  14. using System.Windows.Media.Imaging;
  15. using System.Windows.Shapes;
  16. namespace KursachMukha692gr
  17. {
  18. /// <summary>
  19. /// Логика взаимодействия для AddUchenik.xaml
  20. /// </summary>
  21. public partial class AddUchenik : Window
  22. {
  23. public AddUchenik()
  24. {
  25. InitializeComponent();
  26. }
  27. private void Button_Click_Add(object sender, RoutedEventArgs e)
  28. {
  29. if (familiyauch.Text != "" && imyauch.Text != "" && otchuch.Text != "" && datauch.Text != "" && numberuch.Text != "" && disciplina.Text != "" && pol_id.Text != "" && gruppa.Text != "")
  30. {
  31. bool fam = false, imya = false, otch = false, data = false, num = false;
  32. bool dis = false, pol = false, gr = false;
  33. for (int i = 0; i < familiyauch.Text.Length; i++)
  34. {
  35. if (fam)
  36. {
  37. fam = false;
  38. }
  39. if (familiyauch.Text[i] >= 'А' && familiyauch.Text[i] <= 'Я' || familiyauch.Text[i] >= 'а' && familiyauch.Text[i] <= 'я')
  40. {
  41. fam = true;
  42. break;
  43. }
  44. if (fam == false)
  45. {
  46. MessageBox.Show("Поле фамилия может содержать только русские символы");
  47. break;
  48. }
  49. }
  50. for (int i = 0; i < imyauch.Text.Length; i++)
  51. {
  52. if (imya)
  53. {
  54. imya = false;
  55. }
  56. if (imyauch.Text[i] >= 'А' && imyauch.Text[i] <= 'Я' || imyauch.Text[i] >= 'а' && imyauch.Text[i] <= 'я')
  57. {
  58. imya = true;
  59. break;
  60. }
  61. if (imya == false)
  62. {
  63. MessageBox.Show("Поле имя может содержать только русские символы");
  64. break;
  65. }
  66. }
  67. for (int i = 0; i < otchuch.Text.Length; i++)
  68. {
  69. if (otch)
  70. {
  71. otch = false;
  72. }
  73. if (otchuch.Text[i] >= 'А' && otchuch.Text[i] <= 'Я' || otchuch.Text[i] >= 'а' && otchuch.Text[i] <= 'я')
  74. {
  75. otch = true;
  76. break;
  77. }
  78. if (otch == false)
  79. {
  80. MessageBox.Show("Поле отчество может содержать только русские символы");
  81. break;
  82. }
  83. }
  84. for (int i = 0; i < datauch.Text.Length; i++)
  85. {
  86. if (data)
  87. {
  88. data = false;
  89. }
  90. if(datauch.Text.Length > 0)
  91. {
  92. data = true;
  93. break;
  94. }
  95. if (data == false)
  96. {
  97. MessageBox.Show("Поле дата рождения может содержать только цифры");
  98. break;
  99. }
  100. }
  101. for (int i = 0; i < numberuch.Text.Length; i++)//проверка номера телефона
  102. {
  103. if (num)
  104. {
  105. num = false;
  106. }
  107. if (numberuch.Text[i] >= '0' && numberuch.Text[i] <= '9' && numberuch.Text.Length == 11)
  108. {
  109. num = true;
  110. break;
  111. }
  112. if (num == false)
  113. {
  114. MessageBox.Show("Поле номер телефона может содержать только цифры (без знака + и 11 цифр)");
  115. break;
  116. }
  117. }
  118. for (int i = 0; i < disciplina.Text.Length; i++)
  119. {
  120. if (dis)
  121. {
  122. dis = false;
  123. }
  124. if (disciplina.Text[i] >= '0' && disciplina.Text[i] <= '7' && disciplina.Text.Length == 1)
  125. {
  126. dis = true;
  127. break;
  128. }
  129. if (dis == false)
  130. {
  131. MessageBox.Show("Поле дисциплина должно содержать id дисциплины (1-хоккей,2-Волейбол,3-Футбол,4-Баскетбол,5-Плавание,6-Мини-футбол,7-Бокс)");
  132. break;
  133. }
  134. }
  135. for (int i = 0; i < gruppa.Text.Length; i++)
  136. {
  137. if (gr)
  138. {
  139. gr = false;
  140. }
  141. if (gruppa.Text[i] >= '0' && gruppa.Text[i] <= '9' && gruppa.Text.Length == 3)
  142. {
  143. gr = true;
  144. break;
  145. }
  146. if (gr == false)
  147. {
  148. MessageBox.Show("Поле группа должно содержать цифры (3 цифры)");
  149. break;
  150. }
  151. }
  152. for (int i = 0; i < pol_id.Text.Length; i++)
  153. {
  154. if (pol)
  155. {
  156. pol = false;
  157. }
  158. if (pol_id.Text[i] == '1' || pol_id.Text[i] == '2')
  159. {
  160. pol = true;
  161. break;
  162. }
  163. if (pol == false)
  164. {
  165. MessageBox.Show("Поле пол должно содержать только цифры 1 (мужской) и 2 (женский)");
  166. break;
  167. }
  168. }
  169. if(fam && imya && otch && data && num && dis && pol && gr)
  170. {
  171. DataTable dt_infouchenik = Insert("insert into [dbo].[infouchenik] values " +
  172. "('" + familiyauch.Text + "','" + imyauch.Text + "','" + otchuch.Text +
  173. "','" + datauch.Text + "','" + disciplina.Text + "','" + gruppa.Text +
  174. "','" + pol_id.Text + "','" + numberuch.Text + "')");
  175. MessageBox.Show("Ученик добавлен");
  176. SpisokUchenikov mainreg = new SpisokUchenikov();
  177. mainreg.Show();
  178. Close();
  179. }
  180. else
  181. {
  182. MessageBox.Show("Неправильный формат");
  183. }
  184. }
  185. else
  186. {
  187. MessageBox.Show("Все строки должны быть заполнены");
  188. }
  189. }
  190. private void Button_Click_Back(object sender, RoutedEventArgs e)
  191. {
  192. SpisokUchenikov spisok = new SpisokUchenikov();
  193. spisok.Show();
  194. Close();
  195. }
  196. public DataTable Insert(string selectSQL)
  197. {
  198. DataTable dataTable = new DataTable("dataBase");
  199. SqlConnection sqlConnection = new SqlConnection("server=WIN-2CL665KE0ED; Trusted_Connection=YES;DataBase=KURSACH1;");
  200. sqlConnection.Open();
  201. SqlCommand sqlCommand = sqlConnection.CreateCommand();
  202. sqlCommand.CommandText = selectSQL;
  203. SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
  204. sqlDataAdapter.Fill(dataTable);
  205. sqlConnection.Close();
  206. return dataTable;
  207. }
  208. }
  209. }