75 lines
2.5 KiB
C#
75 lines
2.5 KiB
C#
using MySql.Data.MySqlClient;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace NeshinaPolina2111
|
|
{
|
|
public partial class Authorization : Form
|
|
{
|
|
public Authorization()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
|
|
|
|
string login = tbLogin.Text.Trim();
|
|
string password = tbPassword.Text.Trim();
|
|
|
|
if (string.IsNullOrWhiteSpace(login) || string.IsNullOrWhiteSpace(password))
|
|
{
|
|
MessageBox.Show("Введите логин и пароль.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
var db = DB.GetInstance();
|
|
var conn = db.GetConnection();
|
|
try
|
|
{
|
|
string query = "SELECT idAuthorization, idRole FROM Authorization WHERE Login = @login AND Password = @password";
|
|
using (var cmd = new MySqlCommand(query, conn))
|
|
{
|
|
cmd.Parameters.AddWithValue("@login", login);
|
|
cmd.Parameters.AddWithValue("@password", password);
|
|
int authId = 0;
|
|
int roleId = 0;
|
|
using (var reader = cmd.ExecuteReader())
|
|
{
|
|
if (reader.Read())
|
|
{
|
|
authId = Convert.ToInt32(reader["idAuthorization"]);
|
|
roleId = Convert.ToInt32(reader["idRole"]);
|
|
}
|
|
else
|
|
{
|
|
MessageBox.Show("Неверный логин или пароль.", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
|
return;
|
|
}
|
|
}
|
|
MainForm mainForm = new MainForm(roleId, authId, this);
|
|
this.Hide();
|
|
mainForm.ShowDialog();
|
|
this.Show();
|
|
tbLogin.Clear();
|
|
tbPassword.Clear();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show($"Ошибка при входе: {ex.Message}", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|