using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace AjanseProject
{
    public partial class frmsabteranande : Form
    {
        SqlConnection con = new SqlConnection();
        SqlCommand cmd = new SqlCommand();
        SqlDataAdapter da = new SqlDataAdapter();
        DataSet ds = new DataSet();
 
        public frmsabteranande()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog();
            textBox3.Text = openFileDialog1.FileName;
        }

        private void frmsabteranande_Load(object sender, EventArgs e)
        {
            con.ConnectionString = "Data Source=" + Environment.MachineName + ";Initial Catalog=ajans;Integrated Security=True";
            con.Open();
            cmd.Connection = con;
            textBox1.Select();

        }

        private void toolStripButton1_Click(object sender, EventArgs e)
        {
            try
            {
                if (textBox1.Text == "" | textBox2.Text == "" | textBox4.Text == "")
                {
                    MessageBox.Show("لطفا فیلد های ستاره دار را تکمیل کنید.", "اخطار", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {

                    cmd.CommandText = "insert into ranande (rname,rfamily,rcode,rtelhome,rmobile,raddress,rax) values(N'" + textBox1.Text + "',N'" + textBox2.Text + "'," + Convert.ToInt32(textBox4.Text) + ",N'" + maskedTextBox1.Text + "', N'" + maskedTextBox2.Text + "',N'" + textBox7.Text + "','" + textBox3.Text + "')";
                    cmd.ExecuteNonQuery();
                    MessageBox.Show("اطلاعات با موفقیت ذخیره شد", "نتیجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    textBox1.Text = "";
                    textBox2.Text = "";
                    textBox4.Text = "";
                    textBox7.Text = "";
                    textBox1.Text = "";
                    maskedTextBox1.Text = "";
                    maskedTextBox2.Text = "";
                    textBox3.Text = "";
                    textBox1.Select();
                }
            }
            catch
           {
                MessageBox.Show("کد پرسنلی وارد شده قبلا قبت شده است", "هشدار", MessageBoxButtons.OK, MessageBoxIcon.Error);
                textBox4.Select();
           }
        }

        private void toolStripButton4_Click(object sender, EventArgs e)
        {
            try
            {
                if (textBox8.Text == "")
                {
                    cmd.CommandText = "update ranande set rname= N'" + textBox1.Text + " ',rfamily=N'" + textBox2.Text + " ',rcode=" + Convert.ToInt32(textBox4.Text) + ",rtelhome = N'" + maskedTextBox1.Text + "',rmobile= N'" + maskedTextBox2.Text + "',raddress= N'" + textBox7.Text + "', rax ='" + textBox3.Text + "'  where rcode=" + Convert.ToInt32(textBox6.Text);
                    cmd.ExecuteNonQuery();
                    MessageBox.Show("تغییرات با موفقیت ذخیره شد", "نتیجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    cmd.CommandText = "update ranande set rname= N'" + textBox1.Text + " ',rfamily=N'" + textBox2.Text + " ',rcode=" + Convert.ToInt32(textBox4.Text) + ",rtelhome = N'" + maskedTextBox1.Text + "',rmobile= N'" + maskedTextBox2.Text + "',raddress= N'" + textBox7.Text + "', rax ='" + textBox3.Text + "',  where rfamily like '%" + textBox8.Text + "%'";
                    cmd.ExecuteNonQuery();
                    MessageBox.Show("تغییرات با موفقیت ذخیره شد", "نتیجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch
            {
                MessageBox.Show("اشکال در  ذخیره سازی اطلاعات در پایگاه داده یا تکرار در کد راننده", "اخطار", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void toolStripButton2_Click(object sender, EventArgs e)
        {
            try
            {
                if (textBox6.Text == "" & textBox8.Text == "" | textBox8.Text != "" & textBox6.Text != "")
                {
                    MessageBox.Show("لطفا حداقل یکی از فیلدهای مورد نیاز برای حذف کردن راننده را وارد نمائید", "اخطار", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    textBox8.Select();
                }
                else
                {
                    DialogResult dr;
                    dr = MessageBox.Show("آیا اطلاعات راننده را حذف می کنید؟", "هشدار", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

                    if (dr == DialogResult.OK)
                    {
                        if (textBox8.Text == "")
                        {
                            cmd.CommandText = "delete from ranande where rcode =" + Convert.ToInt32(textBox6.Text);
                            cmd.ExecuteNonQuery();


                            MessageBox.Show("حذف اطلاعات راننده با موفقیت انجام شد", "نتیجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            ds.Reset();
                            textBox1.Text = "";
                            textBox2.Text = "";
                            textBox4.Text = "";
                            textBox7.Text = "";
                            textBox1.Text = "";
                            maskedTextBox1.Text = "";
                            maskedTextBox2.Text = "";
                            textBox3.Text = "";
                        }
                        else
                        {
                            cmd.CommandText = "delete from ranande where rfamily like N'%" + textBox8.Text + "%'";
                            cmd.ExecuteNonQuery();
                            MessageBox.Show("حذف اطلاعات راننده با موفقیت انجام شد", "نتیجه", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            ds.Reset();
                            textBox1.Text = "";
                            textBox2.Text = "";
                            textBox4.Text = "";
                            textBox7.Text = "";
                            textBox1.Text = "";
                            maskedTextBox1.Text = "";
                            maskedTextBox2.Text = "";
                            textBox3.Text = "";
                        }
                    }
                }
            }
            catch
            {
                MessageBox.Show("مشکل در برقراری اتصال با پایگاه داده", "اخطار", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void toolStripButton3_Click(object sender, EventArgs e)
        {
            if (textBox8.Text == "" & textBox6.Text == "" | textBox8.Text != "" & textBox6.Text != "")
            {
                ds.Clear();
                cmd.CommandText = "select * from ranande";
                cmd.ExecuteNonQuery();
                da.SelectCommand = cmd;
                da.Fill(ds, "ranande");
                dataGridView1.DataSource = ds;
                dataGridView1.DataMember = "ranande";
                dataGridView1.Columns["rname"].HeaderText = "نام راننده";
                dataGridView1.Columns["rfamily"].HeaderText = "نام خانوادگی";
                dataGridView1.Columns["rcode"].HeaderText = "کد راننده";
                dataGridView1.Columns["rtelhome"].HeaderText = "تلفن منزل";
                dataGridView1.Columns["rmobile"].HeaderText = "موبایل";
                dataGridView1.Columns["raddress"].HeaderText = "آدرس";
                dataGridView1.Columns["rax"].HeaderText = "عکس";

            }
            else
            {
                if (textBox8.Text == "")
                {
                    ds.Clear();
                    cmd.CommandText = "select * from ranande where rcode =" + Convert.ToInt32(textBox6.Text);
                    cmd.ExecuteNonQuery();
                    da.SelectCommand = cmd;
                    da.Fill(ds, "ranande");
                    dataGridView1.DataSource = ds;
                    dataGridView1.DataMember = "ranande";
                    dataGridView1.Columns["rname"].HeaderText = "نام راننده";
                    dataGridView1.Columns["rfamily"].HeaderText = "نام خانوادگی";
                    dataGridView1.Columns["rcode"].HeaderText = "کد راننده";
                    dataGridView1.Columns["rtelhome"].HeaderText = "تلفن منزل";
                    dataGridView1.Columns["rmobile"].HeaderText = "موبایل";
                    dataGridView1.Columns["raddress"].HeaderText = "آدرس";
                    dataGridView1.Columns["rax"].HeaderText = "عکس";

                }
                else
                {
                    ds.Clear();
                    cmd.CommandText = "select * from ranande where rfamily like N'%" + textBox8.Text + "%'";
                    cmd.ExecuteNonQuery();
                    da.SelectCommand = cmd;
                    da.Fill(ds, "ranande");
                    dataGridView1.DataSource = ds;
                    dataGridView1.DataMember = "ranande";
                    dataGridView1.Columns["rname"].HeaderText = "نام راننده";
                    dataGridView1.Columns["rfamily"].HeaderText = "نام خانوادگی";
                    dataGridView1.Columns["rcode"].HeaderText = "کد راننده";
                    dataGridView1.Columns["rtelhome"].HeaderText = "تلفن منزل";
                    dataGridView1.Columns["rmobile"].HeaderText = "موبایل";
                    dataGridView1.Columns["raddress"].HeaderText = "آدرس";
                    dataGridView1.Columns["rax"].HeaderText = "عکس";
                }
            }
        }

        private void toolStripButton5_Click(object sender, EventArgs e)
        {
            DialogResult dr;
            dr = MessageBox.Show("آیا مایل به خروج از قسمت رانندگان هستید ؟", "خروج", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            if (dr == DialogResult.OK)
            {

                this.Close();
            }
        }

        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                textBox1.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rname"].ToString();
                textBox2.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rfamily"].ToString();
                textBox4.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rcode"].ToString();
                textBox7.Text = ds.Tables["ranande"].Rows[e.RowIndex]["raddress"].ToString();
                maskedTextBox2.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rmobile"].ToString();
                maskedTextBox1.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rtelhome"].ToString();
                textBox3.Text = ds.Tables["ranande"].Rows[e.RowIndex]["rax"].ToString();
            }
            catch
            {
                MessageBox.Show("هیچ رکوردی برای نمایش وجود ندارد", "اخطار", MessageBoxButtons.OK, MessageBoxIcon.Error);

            }
        }

        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }

        private void textBox6_DoubleClick(object sender, EventArgs e)
        {
            textBox6.Text = "";
            textBox8.Text = "";
            textBox6.Select();

        }

        private void textBox8_DoubleClick(object sender, EventArgs e)
        {
            textBox8.Text = "";
            textBox6.Text = "";
            textBox8.Select();

        }

        private void textBox8_Leave(object sender, EventArgs e)
        {
           

        }

        private void textBox6_Leave(object sender, EventArgs e)
        {
           

        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {

        }
    }
}
