private void buttonSignIn_Click(object sender, EventArgs e) { string login; String password; if (textBoxLogin.TextLength != 0 && textBoxPass.TextLength != 0) { login = textBoxLogin.Text; password = textBoxPass.Text; try { using (LoginContext db = new LoginContext()) { var search = db.Employees.Where(c => c.Login == login & c.Password == password).Select(c => c.accesslvl).First(); switch (search) { case 1: WorkerForm w = new WorkerForm(); w.Show(); this.Hide(); break; case 2: ManagerForm m = new ManagerForm(); m.Show(); this.Hide(); break; case 3: AdminForm f = new AdminForm(); f.Show(); this.Hide(); break; } } } catch (Exception) { MessageBox.Show("Неверный логин или пароль", "Ошибка"); textBoxPass.Clear(); } } else { MessageBox.Show("Ошибка! Все поля должны быть заполнены.", "Ошибка"); } }
private void Enter_but_Click(object sender, EventArgs e) { string log = Login.Text.ToUpper(); string pass = Password.Text.ToUpper(); if (Login.Text != "" && Password.Text != "") { SQLiteCommand cmd = globalVar.db.CreateCommand(); cmd.CommandText = "select * from log_table where login like @login and password like @password"; // ищем в таблице БД такие логин и пароль cmd.Parameters.Add("@login", System.Data.DbType.String).Value = log; // подставляем в запрос параметры cmd.Parameters.Add("@password", System.Data.DbType.String).Value = pass; SQLiteDataReader SQL = cmd.ExecuteReader(); // выполняем запрос if (SQL.HasRows) //если такая строка нашлась ... { SQLiteCommand getcmd = globalVar.db.CreateCommand(); getcmd.CommandText = "select position from log_table where login like @login and password like @password"; //запрос на получение уровня доступа getcmd.Parameters.Add("@login", System.Data.DbType.String).Value = log; //подставляем параметры getcmd.Parameters.Add("@password", System.Data.DbType.String).Value = pass; string pos = (string)getcmd.ExecuteScalar(); //здесь лежит позиция входящего человека SQL.Close(); switch (pos) { case "Director": this.Hide(); AdminForm admForm = new AdminForm(); admForm.Closed += (s, args) => this.Close(); admForm.Show(); break; case "Manager": this.Hide(); ManagerForm mngForm = new ManagerForm(); mngForm.Closed += (s, args) => this.Close(); mngForm.Show(); break; case "Seller": this.Hide(); SellerForm sellForm = new SellerForm(); sellForm.Closed += (s, args) => this.Close(); sellForm.Show(); break; } } else // если пароль или логин неправильный { count++; MessageBox.Show("Неправильный логин или пароль! Попробуйте заново, осталось " + (3 - count) + " попыток!"); if ((3 - count) == 0) { MessageBox.Show("Временная блокировка, ожидайте 20 секунд."); timer1.Start(); //вызываем таймер } } } }