private void MainMenu(object sender, RoutedEventArgs e) { string userLogin = loginField.Text; string userPassword = passwordField.Password.ToString(); string userName = string.Empty; string userSurname = string.Empty; SqlConnection connection = new SqlConnection(connectionString); connection.Open(); string query = @"SELECT UserName, UserSurname FROM Users WHERE [UserLogin] = '" + userLogin + "'and [UserPassword]='" + userPassword + "' and [AdministratorStatus] = 'false'"; SqlCommand sqlCommand = new SqlCommand(query, connection); SqlDataReader dataReader = sqlCommand.ExecuteReader(); if (dataReader.HasRows) { while (dataReader.Read()) { userName = dataReader[0].ToString(); userSurname = dataReader[1].ToString(); StreamWriter loginFile = new StreamWriter("UserLogin.txt"); loginFile.Write(userLogin); loginFile.Close(); StreamWriter nameFile = new StreamWriter("UserName.txt"); nameFile.Write(userName); nameFile.Close(); StreamWriter surnameFile = new StreamWriter("UserSurname.txt"); surnameFile.Write(userSurname); surnameFile.Close(); UserMenu userMenu = new UserMenu(); userMenu.Show(); this.Close(); } } else { System.Windows.MessageBox.Show("Неверный логин или пароль"); return; } connection.Close(); }
private void BackToMenu(object sender, RoutedEventArgs e) { StreamReader file = new StreamReader("UserLogin.txt"); string login = file.ReadLine(); file.Close(); if (login == null) { AdminMenu adminMenu = new AdminMenu(); adminMenu.Show(); this.Close(); } else { UserMenu userMenu = new UserMenu(); userMenu.Show(); this.Close(); } }
private void AddButton_Click(object sender, RoutedEventArgs e) { StreamReader file = new StreamReader("UserLogin.txt"); string login = file.ReadLine(); file.Close(); StreamReader usrNm = new StreamReader("UserName.txt"); string userNm = usrNm.ReadLine(); usrNm.Close(); StreamReader usrSnm = new StreamReader("UserSurname.txt"); string userSnm = usrSnm.ReadLine(); usrSnm.Close(); if (cardNumber.Text == string.Empty) { System.Windows.MessageBox.Show("Номер карты не может быть пустым."); return; } else if (cardNumber.Text.Length == 16) { char[] cardNumberArray = cardNumber.Text.ToCharArray(); for (int i = 0; i < cardNumberArray.Length; i++) { if (!char.IsDigit(cardNumberArray[i])) { System.Windows.MessageBox.Show("Вы указали неверные символы для номера карты. "); return; } } } else { System.Windows.MessageBox.Show("Вы неверно ввели номер карты."); return; } if (userName.Text != CheckUser.CheckUserName(userName.Text)) { System.Windows.MessageBox.Show(CheckUser.CheckUserName(userName.Text)); return; } else { if (userName.Text != userNm) { System.Windows.MessageBox.Show("Имя на карте должно совпадать с именем пользователя."); return; } } if (userSurname.Text != CheckUser.CheckUserSurname(userSurname.Text)) { System.Windows.MessageBox.Show(CheckUser.CheckUserSurname(userSurname.Text)); return; } else { if (userSurname.Text != userSnm) { System.Windows.MessageBox.Show("Фамилия на карте должна совпадать с фамилией пользователя."); return; } } if (cardExpiration.Text == string.Empty) { System.Windows.MessageBox.Show("Дата действия карты не может быть пустым."); return; } else { if (!Regex.IsMatch(cardExpiration.Text, @"(01|02|03|04|05|06|07|08|09|10|11|12)/2[2-9]$")) { System.Windows.MessageBox.Show("Вы указали неверную дату."); return; } } if (CVVCode.Text == string.Empty) { System.Windows.MessageBox.Show("CVV код карты не может быть пустым."); return; } else if (CVVCode.Text.Length == 3) { char[] cvvCodeArray = CVVCode.Text.ToCharArray(); for (int i = 0; i < cvvCodeArray.Length; i++) { if (!char.IsDigit(cvvCodeArray[i])) { System.Windows.MessageBox.Show("Вы указали неверные символы для CVV кода карты. "); return; } } } else { System.Windows.MessageBox.Show("Вы неверно ввели CVV код. CVV код - трехзначиное число."); return; } Random rnd = new Random(); double money = rnd.Next(100, 2500); SqlConnection myConnectionString = new SqlConnection(connectionString); string mySelectQuery = "SELECT * FROM BankCard WHERE Cardnumber = '" + cardNumber.Text + "'"; using (SqlDataAdapter dataAdapter = new SqlDataAdapter(mySelectQuery, myConnectionString)) { DataTable table = new DataTable(); dataAdapter.Fill(table); if (table.Rows.Count > 0) { System.Windows.MessageBox.Show("Это карта уже есть была привязана другим пользователем."); } else if (table.Rows.Count == 0) { SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.CommandText = "INSERT BankCard (UserCode, CardNumber, UserSurname, UserName, ValidDate, CVVCode, UserMoney, CurrencyBuyCode, CurrencySellCode) VALUES ((SELECT UserCode FROM Users WHERE UserLogin = '******'),'" + cardNumber.Text + "', '" + userSurname.Text + "', '" + userName.Text + "', '" + cardExpiration.Text + "', " + Convert.ToInt32(CVVCode.Text) + ", '" + money + "', 1, 1)"; cmd.Connection = myConnectionString; myConnectionString.Open(); cmd.ExecuteNonQuery(); myConnectionString.Close(); System.Windows.MessageBox.Show("Карта добавлена!"); UserMenu userMenu = new UserMenu(); userMenu.Show(); this.Close(); } } }
private void Button_Click(object sender, RoutedEventArgs e) { StreamReader readLogin = new StreamReader("UserLogin.txt"); string currentUserLogin = readLogin.ReadLine(); readLogin.Close(); if (loginField.Text != "") { if (loginField.Text.Length > 2 && loginField.Text.Length <= 20) { char[] loginArray = loginField.Text.ToCharArray(); for (int i = 0; i < loginArray.Length; i++) { if (!char.IsLetter(loginArray[i]) && !char.IsDigit(loginArray[i]) && loginArray[i] != '_') { System.Windows.MessageBox.Show("Вы указали в логине недопустимые символы."); return; } } } else { System.Windows.MessageBox.Show("Допустимая длина логина 3-20 символов."); return; } using (SqlConnection changeLogin = new SqlConnection(connectionString)) using (SqlCommand command = changeLogin.CreateCommand()) { StreamWriter writeLogin = new StreamWriter("UserLogin.txt"); writeLogin.Write(loginField.Text); writeLogin.Close(); command.CommandText = "UPDATE Users SET UserLogin = '******' WHERE UserLogin = '******'"; changeLogin.Open(); command.ExecuteNonQuery(); changeLogin.Close(); currentUserLogin = loginField.Text; } } if (passwordField.Password.ToString() != "") { if (passwordField.Password.ToString().Length > 2 && passwordField.Password.ToString().Length <= 20) { char[] passwordArray = passwordField.Password.ToString().ToCharArray(); for (int i = 0; i < passwordArray.Length; i++) { if (!char.IsLetter(passwordArray[i]) && !char.IsDigit(passwordArray[i]) && passwordArray[i] != '_' && passwordArray[i] != '*') { System.Windows.MessageBox.Show("Вы указали в пароле недопустимые символы."); return; } } } else { System.Windows.MessageBox.Show("Допустимая длина пароля 3-20 символов."); return; } using (SqlConnection changePassword = new SqlConnection(connectionString)) using (SqlCommand command = changePassword.CreateCommand()) { command.CommandText = "UPDATE Users SET UserPassword = '******' WHERE UserLogin = '******'"; changePassword.Open(); command.ExecuteNonQuery(); changePassword.Close(); } } if (nameField.Text != "") { if (nameField.Text.Length > 2 && nameField.Text.Length <= 20) { char[] nameArray = nameField.Text.ToCharArray(); for (int i = 0; i < nameArray.Length; i++) { if (!char.IsLetter(nameArray[i]) && nameArray[i] != '-') { System.Windows.MessageBox.Show("Вы указали в имени недопустимые символы."); return; } } } else { System.Windows.MessageBox.Show("Допустимая длина имени 3-20 символов."); return; } using (SqlConnection changeName = new SqlConnection(connectionString)) using (SqlCommand command = changeName.CreateCommand()) { command.CommandText = "UPDATE Users SET UserName = '******' WHERE UserLogin = '******'"; changeName.Open(); command.ExecuteNonQuery(); changeName.Close(); } } if (surnamField.Text != "") { if (surnamField.Text.Length > 2 && surnamField.Text.Length <= 20) { char[] surnameArray = surnamField.Text.ToCharArray(); for (int i = 0; i < surnameArray.Length; i++) { if (!char.IsLetter(surnameArray[i]) && surnameArray[i] != '-') { System.Windows.MessageBox.Show("Вы указали в фамилии недопустимые символы."); return; } } } else { System.Windows.MessageBox.Show("Допустимая фамилии имени 3-20 символов."); return; } using (SqlConnection changeSurname = new SqlConnection(connectionString)) using (SqlCommand command = changeSurname.CreateCommand()) { command.CommandText = "UPDATE Users SET UserSurname = '" + surnamField.Text + "' WHERE UserLogin = '******'"; changeSurname.Open(); command.ExecuteNonQuery(); changeSurname.Close(); } } MessageBoxResult mboxResult = System.Windows.MessageBox.Show("Изменения сохранены. Желаете изменить что-нибудь еще?", "Предупреждение", MessageBoxButton.YesNo); if (mboxResult == MessageBoxResult.No) { UserMenu userMenu = new UserMenu(); userMenu.Show(); this.Close(); } }