Esempio n. 1
0
        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();
                }
            }
        }
Esempio n. 4
0
        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();
            }
        }