using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; namespace KursachMukha692gr { /// /// Логика взаимодействия для AddTrener.xaml /// public partial class AddTrener : Window { List Alphabetrus = new List { "А", "а", "Б", "б", "В", "в", "Г", "г", "Д", "д", "Е", "е", "Ё", "ё", "Ж", "ж", "З", "з", "И", "и", "Й", "й", "К", "к", "Л", "л", "М", "м", "Н", "н", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "У", "у", "Ф", "ф", "Х", "х", "Ц", "ц", "Ч", "ч", "Ш", "ш", "Щ", "щ", "Ъ", "ъ", "Ы", "ы", "Ь", "ь", "Э", "э", "Ю", "ю", "Я", "я" }; List Date = new List { "0","1","2","3","4","5","6","7","8","9","."}; public AddTrener() { InitializeComponent(); } public DataTable Select(string selectSQL) { DataTable dataTable = new DataTable("dataBase"); SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;"); sqlConnection.Open(); SqlCommand sqlCommand = sqlConnection.CreateCommand(); sqlCommand.CommandText = selectSQL; SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand); sqlDataAdapter.Fill(dataTable); sqlConnection.Close(); return dataTable; } public DataTable Select1(string selectSQL) { DataTable dataTable = new DataTable("dataBase"); SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;"); sqlConnection.Open(); SqlCommand sqlCommand = sqlConnection.CreateCommand(); sqlCommand.CommandText = selectSQL; SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand); sqlDataAdapter.Fill(dataTable); sqlConnection.Close(); return dataTable; } private void Button_Click_Add(object sender, RoutedEventArgs e) { if (familiyaTrener.Text != "" && imyaTrener.Text != "" && otchTrener.Text != "" && dataTrener.Text != "" && numberTrener.Text != "" && sportspec.Text != "" && pol_id.Text != "" && categoryTrener.Text!="") { bool fam = false, imya = false, otch = false, data = false, num = false; bool sport = false, pol = false,cat = false; for (int i = 0; i < familiyaTrener.Text.Length; i++)//проверка фамилии { if (fam) { fam = false; } for (int j = 0; j < Alphabetrus.Count; j++) { if (Convert.ToString(familiyaTrener.Text[i]).Contains(Alphabetrus[j])) { fam = true; break; } } if (fam == false) { MessageBox.Show("Поле фамилия должно содержать только русские символы"); break; } } for (int i = 0; i < imyaTrener.Text.Length; i++)//проверка имени { if (imya) { imya = false; } for (int j = 0; j < Alphabetrus.Count; j++) { if (Convert.ToString(imyaTrener.Text[i]).Contains(Alphabetrus[j])) { imya = true; break; } } if (imya == false) { MessageBox.Show("Поле имя должно содержать только русские символы"); break; } } for (int i = 0; i < otchTrener.Text.Length; i++)//проверка отчества { if (otch) { otch = false; } for (int j = 0; j < Alphabetrus.Count; j++) { if (Convert.ToString(otchTrener.Text[i]).Contains(Alphabetrus[j])) { otch = true; break; } } if (otch == false) { MessageBox.Show("Поле отчество должно содержать только русские символы"); break; } } for (int i = 0; i < dataTrener.Text.Length; i++)//проверка даты рождения { if (data) { data = false; } for (int j = 0; j < Date.Count; j++) { if (Convert.ToString(dataTrener.Text[i]).Contains(Date[j])) { data = true; break; } } if (data == false) { MessageBox.Show("Поле дата рождения должно содержать только цифры и знак '.''"); break; } } for (int i = 0; i < numberTrener.Text.Length; i++)//проверка номера телефона { if (num) { num = false; } if (numberTrener.Text[i] >= '0' && numberTrener.Text[i] <= '9' && numberTrener.Text.Length == 11) { num = true; break; } if (num == false) { MessageBox.Show("Поле номер телефона должно содержать только цифры (без знака + и 11 цифр)"); break; } } DataTable sel = Select("select * from [dbo].[disciplina] where id = " + sportspec.Text); for (int i = 0; i < sportspec.Text.Length; i++) { if (sport) { sport = false; } if (sportspec.Text[i] >='1' && sportspec.Text[i]<= '7' && sportspec.Text.Length == 1) { if (sel.Rows.Count > 0) { sport = true; } else { sport = false; } } if (sport == false) { MessageBox.Show("Поле спортивная специальность должно содержать код специальности (1-хоккей,2-Мини-футбол,3-Волейбол,4-Футбол,5-Баскетбол,6-Плавание,7-Бокс)"); break; } } DataTable sel1 = Select1("select * from [dbo].[pol] where id = " + pol_id.Text); for (int i = 0; i < pol_id.Text.Length; i++) { if (pol) { pol = false; } if (pol_id.Text[i] == '1' || pol_id.Text[i] == '2' && pol_id.Text.Length == 1) { if (sel1.Rows.Count > 0) { pol = true; } else { pol = false; } } if (pol == false) { MessageBox.Show("Поле пол должно содержать только цифры 1 (мужской) и 2 (женский)"); break; } } for (int i = 0; i < categoryTrener.Text.Length; i++) { if (cat) { cat = false; } if (categoryTrener.Text[i] >= '1' && categoryTrener.Text[i] <= '9' || categoryTrener.Text[i] >= 'A' && categoryTrener.Text[i] <= 'Z') { cat = true; break; } if (cat == false) { MessageBox.Show("Поле тренерская категория должно содержать только английские (заглавные) буквы и цифры"); break; } } if (fam && imya && otch && data && num && sport && pol && cat) { DataTable dt_infotrener = Insert("insert into [dbo].[infotrener] values " + "('" + familiyaTrener.Text + "','" + imyaTrener.Text + "','" + otchTrener.Text + "','" + dataTrener.Text + "','" + numberTrener.Text + "','" + sportspec.Text + "','" + categoryTrener.Text + "','" + pol_id.Text + "')"); MessageBox.Show("Тренер добавлен"); SpisokTrenerov mainreg = new SpisokTrenerov(); mainreg.Show(); Close(); } else { MessageBox.Show("Неправильный формат"); } } else { MessageBox.Show("Все строки должны быть заполнены"); } } public DataTable Insert(string selectSQL) { DataTable dataTable = new DataTable("dataBase"); SqlConnection sqlConnection = new SqlConnection("server=mssql; Trusted_Connection=YES;DataBase=gr692_mkm;"); sqlConnection.Open(); SqlCommand sqlCommand = sqlConnection.CreateCommand(); sqlCommand.CommandText = selectSQL; SqlDataAdapter sqlDataAdapter = new SqlDataAdapter(sqlCommand); sqlDataAdapter.Fill(dataTable); sqlConnection.Close(); return dataTable; } private void Button_Click_Back(object sender, RoutedEventArgs e) { SpisokTrenerov trenerov = new SpisokTrenerov(); trenerov.Show(); Close(); } } }