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;
using System.Data.SqlClient;
using LebedenkoHranitel.UserForms;

namespace LebedenkoHranitel
{
    public partial class Login : Form
    {
        Database database = new Database();
        public string loginUser;
        public string passUser;
        public Login()
        {
            InitializeComponent();
            StartPosition = FormStartPosition.CenterScreen;
            textBox2.PasswordChar = '*';
            label3.Visible = false;
            button2.Visible = false;
        }
        public void log_in(object sender, EventArgs a)
        {
            textBox1.MaxLength = 50;
            textBox2.MaxLength = 50;
        }
        private void button1_Click(object sender, EventArgs e)
        {

            loginUser = textBox1.Text;
            passUser = textBox2.Text;
           
            SqlDataAdapter adapter = new SqlDataAdapter();
            DataTable table = new DataTable();

            if (comboBox1.SelectedItem.ToString() == "Сотрудник Охраны")
            {
                string querystring = $"select Login,Password from LoginGuard where Login ='{loginUser}' and Password = '{passUser}'";
                SqlCommand logcommand = new SqlCommand(querystring, database.GetConnection());

                adapter.SelectCommand = logcommand;
                adapter.Fill(table);

                if (table.Rows.Count == 1)
                {
                    MessageBox.Show("Вы успешно вошли, как охрана!", "Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Form2 frm2 = new Form2();
                    frm2.Show();
                }
                else
                {
                    MessageBox.Show("Вы неверно ввели данные", "Не Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }

            else if (comboBox1.SelectedItem.ToString() == "Сотрудник Подразделения")
            {
                string querystring = $"select Login,Password from LoginDepartment where Login ='{loginUser}' and Password = '{passUser}'";
                SqlCommand logcommand = new SqlCommand(querystring, database.GetConnection());

                adapter.SelectCommand = logcommand;
                adapter.Fill(table);

                if (table.Rows.Count == 1)
                {
                    MessageBox.Show("Вы успешно вошли, как Подразд!", "Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Form3 frm3 = new Form3();
                    frm3.Show();
                }
                else
                {
                    MessageBox.Show("Вы неверно ввели данные", "Не Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }

            else if (comboBox1.SelectedItem.ToString() == "Сотрудник общего отдела")
            {
                string querystring = $"select Login,Password from LoginGeneral where Login ='{loginUser}' and Password = '{passUser}'";
                SqlCommand logcommand = new SqlCommand(querystring, database.GetConnection());

                adapter.SelectCommand = logcommand;
                adapter.Fill(table);

                if (table.Rows.Count == 1)
                {
                    MessageBox.Show("Вы успешно вошли, как общий!", "Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    GeneralDep frm4 = new GeneralDep();
                    frm4.Show();
                }
                else
                {
                    MessageBox.Show("Вы неверно ввели данные", "Не Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }

            else if (comboBox1.SelectedItem.ToString() == "Пользователь")
            {
                string querystring = $"select Логин,Пароль from \"Личное Посещение\" where Логин ='{loginUser}' and Пароль = '{passUser}'";
                SqlCommand logcommand = new SqlCommand(querystring, database.GetConnection());

                adapter.SelectCommand = logcommand;
                adapter.Fill(table);

                if (table.Rows.Count == 1)
                {
                    MessageBox.Show("Вы успешно вошли, как пользователь!", "Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Form5 frm5 = new Form5();
                    frm5.Show();
                }
                else
                {
                    MessageBox.Show("Вы неверно ввели данные", "Не Успешно", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            // TODO: данная строка кода позволяет загрузить данные в таблицу "lEBSesDataSet.Role". При необходимости она может быть перемещена или удалена.
            this.roleTableAdapter.Fill(this.lEBSesDataSet.Role);

        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (comboBox1.SelectedItem.ToString() == "Пользователь")
            {
                label3.Visible = true;
                button2.Visible = true;
                return;
            }
            else
            {
                label3.Visible = false;
                button2.Visible = false;
            }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            Form6 f6 = new Form6();
            f6.Show();

        }
    }
}
