AddTournment.xaml.cs 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  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. /// Логика взаимодействия для AddTournment.xaml
  20. /// </summary>
  21. public partial class AddTournment : Window
  22. {
  23. public AddTournment()
  24. {
  25. InitializeComponent();
  26. }
  27. public DataTable Select(string selectSQL)
  28. {
  29. DataTable dataTable = new DataTable("dataBase");
  30. SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;");
  31. sqlConnection.Open();
  32. SqlCommand sqlCommand = sqlConnection.CreateCommand();
  33. sqlCommand.CommandText = selectSQL;
  34. SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
  35. sqlDataAdapter.Fill(dataTable);
  36. sqlConnection.Close();
  37. return dataTable;
  38. }
  39. public DataTable Select1(string selectSQL)
  40. {
  41. DataTable dataTable = new DataTable("dataBase");
  42. SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;");
  43. sqlConnection.Open();
  44. SqlCommand sqlCommand = sqlConnection.CreateCommand();
  45. sqlCommand.CommandText = selectSQL;
  46. SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
  47. sqlDataAdapter.Fill(dataTable);
  48. sqlConnection.Close();
  49. return dataTable;
  50. }
  51. public DataTable Select2(string selectSQL)
  52. {
  53. DataTable dataTable = new DataTable("dataBase");
  54. SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;");
  55. sqlConnection.Open();
  56. SqlCommand sqlCommand = sqlConnection.CreateCommand();
  57. sqlCommand.CommandText = selectSQL;
  58. SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
  59. sqlDataAdapter.Fill(dataTable);
  60. sqlConnection.Close();
  61. return dataTable;
  62. }
  63. private void Button_Click_Add(object sender, RoutedEventArgs e)
  64. {
  65. if(namesorevi.Text != "" && mestoprovedeniya.Text != "" && disciplina_id.Text != "" && gruppa.Text != "" && infotrener_id.Text != "")
  66. {
  67. bool name = false, mesto = false, dis = false, gr = false, trener = false;
  68. for (int i = 0; i < namesorevi.Text.Length; i++)
  69. {
  70. if (name)
  71. {
  72. name = false;
  73. }
  74. if (namesorevi.Text[i] >='А' && namesorevi.Text[i] <= 'Я' || namesorevi.Text[i] >= 'а' && namesorevi.Text[i] <= 'я' || namesorevi.Text[i] >= '"' || namesorevi.Text[i] <= ',')
  75. {
  76. name = true;
  77. break;
  78. }
  79. if (name == false)
  80. {
  81. MessageBox.Show("Поле название турнира может содержать только русские символы (и ковычки и , )");
  82. break;
  83. }
  84. }
  85. for (int i = 0; i < mestoprovedeniya.Text.Length; i++)
  86. {
  87. if (mesto)
  88. {
  89. mesto = false;
  90. }
  91. if (mestoprovedeniya.Text[i] >= 'А' && mestoprovedeniya.Text[i] <= 'Я' || mestoprovedeniya.Text[i] >= 'а' && mestoprovedeniya.Text[i] <= 'я' || mestoprovedeniya.Text[i] >= '"' || mestoprovedeniya.Text[i] <= ',')
  92. {
  93. mesto = true;
  94. break;
  95. }
  96. if (mesto == false)
  97. {
  98. MessageBox.Show("Поле место проведения может содержать только русские символы (и ковычки и , )");
  99. break;
  100. }
  101. }
  102. DataTable sel = Select("select * from [dbo].[disciplina] where id = " + disciplina_id.Text);
  103. for (int i = 0; i < disciplina_id.Text.Length; i++)
  104. {
  105. if (dis)
  106. {
  107. dis = false;
  108. }
  109. if (disciplina_id.Text[i] >= '0' && disciplina_id.Text[i] <= '7' && disciplina_id.Text.Length == 1)
  110. {
  111. if (sel.Rows.Count > 0)
  112. {
  113. dis = true;
  114. }
  115. else
  116. {
  117. dis = false;
  118. }
  119. }
  120. if (dis == false)
  121. {
  122. MessageBox.Show("Поле дисциплина должно содержать код дисциплины (1-хоккей,2-Мини-футбол,3-Волейбол,4-Футбол,5-Баскетбол,6-Плавание,7-Бокс)");
  123. break;
  124. }
  125. }
  126. DataTable sel1 = Select1("select * from [dbo].[gruppa] where id = " + gruppa.Text);
  127. for (int i = 0; i < gruppa.Text.Length; i++)
  128. {
  129. if (gr)
  130. {
  131. gr = false;
  132. }
  133. if (gruppa.Text[i] >= '0' && gruppa.Text[i] <= '9' && gruppa.Text.Length == 3)
  134. {
  135. if (sel1.Rows.Count > 0)
  136. {
  137. gr = true;
  138. }
  139. else
  140. {
  141. gr = false;
  142. }
  143. }
  144. if (gr == false)
  145. {
  146. MessageBox.Show("Поле группа должно содержать цифры (3 цифры) или вы ввели группу, которой нет");
  147. break;
  148. }
  149. }
  150. DataTable sel2 = Select2("select * from [dbo].[infotrener] where id = " + infotrener_id.Text);
  151. for (int i = 0; i < infotrener_id.Text.Length; i++)
  152. {
  153. if (trener)
  154. {
  155. trener = false;
  156. }
  157. if (infotrener_id.Text[i] >= '0' && infotrener_id.Text[i] <= '9')
  158. {
  159. if (sel2.Rows.Count > 0)
  160. {
  161. trener = true;
  162. }
  163. else
  164. {
  165. trener = false;
  166. }
  167. }
  168. if (trener == false)
  169. {
  170. MessageBox.Show("Поле тренер должно содержать код тренера или вы ввели код, которого нет");
  171. break;
  172. }
  173. }
  174. if (mesto && dis && trener && gr && name)
  175. {
  176. DataTable dt_infotrener = Insert("insert into [dbo].[sorevnovaniya] values " +
  177. "('" + namesorevi.Text + "','" + mestoprovedeniya.Text + "','" + disciplina_id.Text +
  178. "','" + gruppa.Text + "','" + infotrener_id.Text + "')");
  179. MessageBox.Show("Соревнование добавлено");
  180. Tournments mainreg = new Tournments();
  181. mainreg.Show();
  182. Close();
  183. }
  184. else
  185. {
  186. MessageBox.Show("Неправильный формат");
  187. }
  188. }
  189. else
  190. {
  191. MessageBox.Show("Все поля должны быть заполнены!");
  192. }
  193. }
  194. public DataTable Insert(string selectSQL)
  195. {
  196. DataTable dataTable = new DataTable("dataBase");
  197. SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;");
  198. sqlConnection.Open();
  199. SqlCommand sqlCommand = sqlConnection.CreateCommand();
  200. sqlCommand.CommandText = selectSQL;
  201. SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand);
  202. sqlDataAdapter.Fill(dataTable);
  203. sqlConnection.Close();
  204. return dataTable;
  205. }
  206. private void Button_Click_Back(object sender, RoutedEventArgs e)
  207. {
  208. Tournments tournments = new Tournments();
  209. tournments.Show();
  210. Close();
  211. }
  212. }
  213. }