コード例 #1
0
 private void Enter_Click(object sender, RoutedEventArgs e)
 {
     if (Login.Text.Length > 0 && Password.Password.Length > 0)
     {
         if (DataManager.CheckInputString(@"^(?=.{3,10}$)[A-Za-z0-9]*$", Login.Text))                   //предварительная проверка логина
         {
             if (DataManager.CheckInputString(@"^(?=.{5,20}$)[A-Za-z0-9!#$%^&*]*$", Password.Password)) //предварительная проверка пароля
             {
                 SqlManager connection = new SqlManager();
                 int        flag       = connection.ExistsAccount(Login.Text, Password.Password); //проверка на существование аккаунта
                 if (flag == 0)
                 {
                     //получение прав доступа
                     DataPerson.right = connection.ReturnNumber("SELECT access_right FROM Accounts " +
                                                                "WHERE login = '******'");
                     if (DataPerson.right != -2)
                     {
                         //получение номера аккаунта в зависимости от прав
                         if (DataPerson.right == 3)
                         {
                             DataPerson.id = connection.ReturnNumber("SELECT Num_tourist FROM Accounts " +
                                                                     "WHERE login = '******'");
                             if (DataPerson.id == -2)
                             {
                                 flag = -2;
                             }
                         }
                         else if (DataPerson.right == 2)
                         {
                             DataPerson.id = connection.ReturnNumber("SELECT Num_worker FROM Accounts " +
                                                                     "WHERE login = '******'");
                             if (DataPerson.id == -2)
                             {
                                 flag = -2;
                             }
                         }
                         if ((DataPerson.right == 2 || DataPerson.right == 3) && flag != -2)
                         {
                             TourismWindow tw = new TourismWindow();
                             tw.Show();
                             Close();
                         }
                         else if (DataPerson.right == 1 && flag != -2)
                         {
                             WindowAdmin wa = new WindowAdmin();
                             wa.Show();
                             Close();
                         }
                         else
                         {
                             ShowConnectionError();
                         }
                         System.GC.Collect();
                     }
                     else
                     {
                         ShowConnectionError();
                     }
                 }
                 else if (flag == -2)
                 {
                     ShowConnectionError();
                 }
                 else
                 {
                     ShowError();
                 }
             }
             else
             {
                 ShowError();
             }
         }
         else
         {
             ShowError();
         }
     }
     else
     {
         MessageBox.Show("Необходимо ввести пароль и логин.", "", MessageBoxButton.OK, MessageBoxImage.Warning);
     }
 }
コード例 #2
0
 private void Save_Click(object sender, RoutedEventArgs e)
 {
     if (NameEdit.Text != "" || LastNameEdit.Text != "" || MiddleNameEdit.Text != "" || PhoneEdit.Text != "")
     {
         int           error = 0;
         List <string> list  = new List <string>();
         if (NameEdit.Text != "")
         {
             if (DataManager.CheckInputString(@"^(?:(?![ЫЫЙЪЬЁЦЩ])[А-Я])[а-я]{1,30}$", NameEdit.Text) == false)
             {
                 ShowError("Имя введено неверно." + '\n' + "Имя должно содержать не более 30, не менее 2 букв русского алфавита" +
                           '\n' + "и начинаться с заглавной буквы русского алфавита.");
                 NameEdit.Text = "";
                 error++;
             }
             else
             {
                 list.Add("Name = '" + NameEdit.Text + "', ");
                 if (error > 0)
                 {
                     error--;
                 }
             }
         }
         if (LastNameEdit.Text != "")
         {
             if (DataManager.CheckInputString(@"^(?:(?!([ЬЪЫ]))[А-Я])[а-я]{0,30}$", LastNameEdit.Text) == false)
             {
                 ShowError("Фамилия введена неверно." + '\n' + "Фамилия должна содержать не более 30, не менее 2 букв русского алфавита" +
                           '\n' + "и начинаться с заглавной буквы русского алфавита.");
                 LastNameEdit.Text = "";
                 if (error > 0)
                 {
                     error++;
                 }
             }
             else
             {
                 list.Add("Last_name = '" + LastNameEdit.Text + "', ");
                 if (error > 0)
                 {
                     error--;
                 }
             }
         }
         if (MiddleNameEdit.Text != "")
         {
             if (DataManager.CheckInputString(@"^(?:(?![ЫЫЙЪЬЁЦЩ])[А-Я])[а-я]{1,30}$", MiddleNameEdit.Text) == false)
             {
                 ShowError("Отчество должно содержать не более 40, не менее 4 букв русского алфавита" +
                           '\n' + "и начинаться с заглавной буквы русского алфавита.");
                 MiddleNameEdit.Text = "";
                 if (error > 0)
                 {
                     error++;
                 }
             }
             else
             {
                 list.Add("Middle_name = '" + MiddleNameEdit.Text + "', ");
                 if (error > 0)
                 {
                     error--;
                 }
             }
         }
         if (PhoneEdit.Text != "")
         {
             if (DataManager.CheckInputString(@"^\+7\d{10}$", PhoneEdit.Text) == false)
             {
                 ShowError("Номер телефона введен неверно." + '\n' + "Номер телефона должен начинаться с +7"
                           + '\n' + "и после этого должны быть 10 цифр.");
                 PhoneEdit.Text = "";
                 if (error > 0)
                 {
                     error++;
                 }
             }
             else
             {
                 list.Add("Phone_number = '" + PhoneEdit.Text + "', ");
                 if (error > 0)
                 {
                     error--;
                 }
             }
         }
         if (list.Count > 0 && error == 0)
         {
             UpdateDataPerson(list);
         }
     }
     else
     {
         ShowError("Пустые поля не допускаются.\nДолжно быть изменено хотя бы одно поле.\nДля выхода из редактора нажмите \"Отмена\".");
     }
     System.GC.Collect();
 }